This document outlines methods to verify all the calls embedded in the Lido DAO on-chain vote #189, which contains Dual Governance on-chain activation — a dynamic timelock that enables stETH holders to delay execution and exit safely in response to contentious proposals. The Dual Governance design and parameters follow the DAO-approved LIP-28 Snapshot.
The vote consists of 57 action items that will:
I. Reassign roles according to the specification to “switch on” Dual Governance (items 1-50)
II. Perform minor cleanup related to the RecoveryVault app in the DAO Kernel contract (items 51-53)
III. Trigger on-chain checks to verify the state of role assignments (item 54)
IV. Submit the Dual Governance motion to finalize the role transition by revoking the Aragon Agent’s RUN_SCRIPT_ROLE
and EXECUTE_ROLE
from the Aragon Voting contract (item 55)
Note: Until this motion passes and is executed, the Aragon Voting contract retains direct access to roles and permissions on the Aragon Agent contract.
V. Trigger on-chain checks to verify the state of Dual Governance (item 56)
VI. Enforce the vote execution timeframe with on-chain call to TimeConstraints smart contract (item 57)
<aside> 🛡️
As an additional safety measure, the voting script has been embedded into the on-chain smart contract at address 0x1DB8a9313785b78f7d0a201C5E0BE007f1eb63b4, which was reviewed along with the deployment verification by Statemind team. The contract includes a read-only method isValidVoteScript
which will return True
for vote #189 if the calls included in that vote match the list reviewed by Statemind.
</aside>
The vote depends on several utility contracts. The contracts were reviewed by Statemind.
The resources listed in this section are considered trustworthy and reliable.
Direct links to relevant sources will be provided for each item in the vote, ensuring easy access to the associated information.