# a.DI for DAO OPS ### Как работает [LIP-24](https://github.com/lidofinance/lido-improvement-proposals/blob/feat/lip-24/LIPS/lip-24.md). Сетап: `Agent` -> `Ethereum bridge` -> `BSC bridge` -> `Executor` Классический форвардер, без рокетсаенса. Гонится коллдата для вызова на `Executor`, который может взаимодействовать с чем угодно на стороне BSC. Сам по себе a.DI под капотом использует несколько бриджей и механизм консенсуса, чтобы не попадать в вендор лок. Контракт `Executor` не upgradable, будет необходимость изменить только если поменяется адрес агента (то есть никогда). Контракты бриджа работают через `TransparentProxy`, админами которых на стороне Ethereum является `Agent`, на стороне BSC - `Executor`. То есть апгрейд при необходимости будем гнать через `Executor`. ### Тестнет [Раздеплоено](https://github.com/lidofinance/aave-delivery-infrastructure/blob/2a883777c02487571adfc08fbf362d57134a493f/deployments/addresses.json) на Сеплоия + Бинанс-тестнет. Овнер контрактов: `Agent` на Сеполии (+ `Executor`). [Деплой план](https://www.notion.so/a-DI-governance-forwarder-to-BSC-chain-deploy-plan-1141ba98e7ef4376a1d868e96ba365fd). Скрипты можно гнать на сетапе Foundry (который написан ааве (нам не очень подходит)), можно гнать на Python. [Пример](https://github.com/lidofinance/scripts/blob/cross-chain-executor-test/scripts/vote_2024_05_08_sepolia.py) в нашей репке scripts. ### Как работает у ааве В нашем случае гонится коллдата на `Executor` и действие выполняется с него (он держит все необходимые роли). В случае ааве ребята деплоят одноразовый смарт контракт на л2, а через бридж гонят этому контракту выдачу ролей и разрешение на пермишенлесс выполнение. В их случае это просто экономнее по газу, хотя по смыслу то же самое. Посмотреть можно [здесь](https://docs.aave.com/developers/deployed-contracts/governance).