owned this note changed 8 months ago
Linked with GitHub

How to check Lido DAO on-chain vote #178 items

https://vote.lido.fi/vote/178

The vote has three main action sections:

  1. Replace Rated Labs with MatrixedLink in Lido on Ethereum Oracle set (items 1-4).
  2. Rename Node Operators with IDs 23 (CryptoManufaktur) and 36 (Numic) and update their reward addresses (items 5-10).
  3. Enabling On-chain Delegation (items 11-13).

For all contracts getting called in the vote, addresses are listed on docs.

1. Oracle member rotation

The item has 4 actions: 1&2 to remove Rated Labs, 3&4 to add MatrixedLink. The quorum remains unchanged: 5

Proofs

  1. Rated Labs note
  2. Rated Labs address verification
  3. MatrixedLink address verification
  4. DAO Snapshot vote
  5. Current number of the quorum on HashConsensusAccountingOracle & HashConsensusValidatorsExitBusOracle is 5. To check, call getQuorum methods: https://etherscan.io/address/0xD624B08C83bAECF0807Dd2c6880C3154a5F0B288#readContract#F17 https://etherscan.io/address/0x7FaDB6358950c5fAA66Cb5EB8eE5147De3df355a#readContract#F17

Actions "translation"

  1. Agent.forward([HashConsensusAccountingOracle.removeMember(Rated 0xEC4BfbAF681eb505B94E4a7849877DC6c600Ca3A, Quorum 5)])
  2. Agent.forward([HashConsensusValidatorsExitBusOracle.removeMember(Rated 0xEC4BfbAF681eb505B94E4a7849877DC6c600Ca3A, Quorum 5)])
  3. Agent.forward([HashConsensusAccountingOracle.addMember(MatrixedLink 0xe57B3792aDCc5da47EF4fF588883F0ee0c9835C9, Quorum 5)])
  4. Agent.forward([HashConsensusValidatorsExitBusOracle.addMember(MatrixedLink 0xe57B3792aDCc5da47EF4fF588883F0ee0c9835C9, Quorum 5)])

2. Node Operators' names & reward addresses update

Proofs

  1. Requests from Cryptomanufactur and Numic and approves from NOM workstream
  2. Note there's an ongoing discussion on the acquisition and “continuance” possible vote in the other forum thread
  3. And an ongoing discussion on the topic Numic is joining Pier Two as well
  4. Role MANAGE_NODE_OPERATOR_ROLE on CuratedNodeOperatorsStakingModule is required for the Aragon Voting contract to be able to make changes to Node Operators registry.
  5. Call getNodeOperator on CuratedNodeOperatorsStakingModule
    • with 23 and true to see that NO #23 is CryptoManufaktur,
    • with 36 and true to see that NO #36 is Numic

Actions "translation"

  1. AragonACL.grantPermission(Voting 0x2e59A20f205bB85a89C53f1936454680651E618e, CuratedNodeOperatorsStakingModule 0x55032650b14df07b85bF18A3a3eC8E0Af2e028d5, role 0x78523850fdd761612f46e844cf5a16bda6b3151d6ae961fd7e8e7b92bfbca7f8)
  2. CuratedNodeOperatorsStakingModule.setNodeOperatorName(23, 'Galaxy')
  3. CuratedNodeOperatorsStakingModule.setNodeOperatorRewardAddress(23, 0x3C3F243263d3106Fdb31eCf2248f9bC82F723c4B)
  4. CuratedNodeOperatorsStakingModule.setNodeOperatorName(36, 'Pier Two')
  5. CuratedNodeOperatorsStakingModule.setNodeOperatorRewardAddress(36, 0x35921FB43cB92F5Bfef7cBA1e97Eb5A21Fc2d353)
  6. AragonACL.revokePermission(Voting 0x2e59A20f205bB85a89C53f1936454680651E618e, CuratedNodeOperatorsStakingModule 0x55032650b14df07b85bF18A3a3eC8E0Af2e028d5, role 0x78523850fdd761612f46e844cf5a16bda6b3151d6ae961fd7e8e7b92bfbca7f8) The role is assigned and revoked away to not store additional assigned roles on contracts.

3. On-Chain Delegation

Proofs

  1. Proposed new Voting implementation 0xf165148978Fa3cE74d76043f833463c340CFB704
  2. Discussion forum post
  3. StateMind audit report with deployed address verification
  4. Ackee audit (same commit, no deployment verification)
  5. To check the current Aragon App version for voting:
    1. Call getLatest on the VotingRepo 0x4ee3118e3858e8d7164a634825bfe0f73d99c792
    2. Version should be 3.0.0, contentUri should match the one in the vote (no Aragon UI update) — 0x697066733a516d506f7478377a484743674265394445684d6f4238336572564a75764d74335971436e6454657a575652706441
  6. LidoDAO Voting App data
    1. LidoDAOKernel.APP_BASES_NAMESPACE 0xf1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f
    2. Voting.AppId 0x0abcd104777321a82b010357f20887d61247493d89d2e987ff57bcecbde00e1e
  7. Proposed TRP Voting Adapter 0x4b2AB543FA389Ca8528656282bF0011257071BED
  8. TRP contract MixBytes review note
  9. TRP adapter deployment; to check the code is 1-1 with the one reviewed by MixBytes, paste the linked one from the commit in the note on the forum & the code from Etherscan to the online diffchecker

Actions "translation"

  1. VotingRepo.newVersion('4.0.0', ProposedImplementation 0xf165148978Fa3cE74d76043f833463c340CFB704, contentUri0x697066733a516d506f7478377a484743674265394445684d6f4238336572564a75764d74335971436e6454657a575652706441)
  2. LidoDAO.setApp(LidoDAOKernel.APP_BASES_NAMESPACE 0xf1f3eb40f5bc1ad1344716ced8b8a0431d840b5783aea1fd01786bc26f35ac0f, Voting.AppId 0x0abcd104777321a82b010357f20887d61247493d89d2e987ff57bcecbde00e1e, ProposedImplementation 0xf165148978Fa3cE74d76043f833463c340CFB704)
  3. AragonAgent.forward(TRPVestingEscrowFactory 0xda1df6442afd2ec36abea91029794b9b2156add0, update_voting_adapter(ProposedTRPVotingAdapter 0x4b2AB543FA389Ca8528656282bF0011257071BED))
Select a repo