Maintenance: Grant AL RETRY_ROLE on a.DI (Part 1)
01Summary
Proposal to grant Aave Labs multisig (0x2B99790c35a401be873FA7Eb514D9220736BB1cA) the RETRY_ROLE on a.DI cross-chain delivery layer for 10 networks (Ethereum, Polygon, Avalanche, Optimism, Arbitrum, Metis, Base, Gnosis, Scroll, BNB). This enables Aave Labs to retry failed governance messages and switch bridge adapters if needed, improving operational reliability while governance control remains with the DAO. Part 2 will cover 9 additional networks. On Scroll and Metis, the payload also sets GranularGuardian as the CrossChainController guardian.
- Type
- governance change
Key changes
- Grant RETRY_ROLE to Aave Labs multisig on a.DI for Ethereum, Polygon, Avalanche, Optimism, Arbitrum, Metis, Base, Gnosis, Scroll, and BNB(high)
- Enable Aave Labs to retry messages that fail to arrive and route already-sent messages through alternative bridge adapters(high)
- Set GranularGuardian as guardian of CrossChainController on Scroll and Metis to align with default a.DI configuration(medium)
Notable concerns
- This is Part 1 of 2; Part 2 will cover 9 additional networks (Linea, Celo, Sonic, Soneium, Plasma, Mantle, MegaEth, XLayer, Ink)
- Delegates technical message delivery control to Aave Labs while DAO retains governance action approval authority
Generated by Kvorum
02Description
Simple Summary
This proposal grants the Aave Labs multisig the RETRY_ROLE on a.DI’s granular access controls.
Recipient: 0x2B99790c35a401be873FA7Eb514D9220736BB1cA
This is Part 1 of 2. It covers Ethereum, Polygon, Avalanche, Optimism, Arbitrum, Metis, Base, Gnosis, Scroll and BNB. Part 2 covers Linea, Celo, Sonic, Soneium, Plasma, Mantle, MegaEth, XLayer and Ink.
Motivation
a.DI is the cross-chain delivery layer used by Aave governance to route approved governance actions from Ethereum to other networks.
As Aave governance expands across more networks, message delivery operations become more important. The RETRY_ROLE allows a technical operator to retry messages that were already sent through a.DI if a message does not arrive, or to route an already-sent message through another configured bridge adapter if one of the selected providers fails.
Granting this role to Aave Labs improves operational coverage for governance message delivery while keeping control of governance actions with the DAO.
Specification
If approved, this proposal will grant the RETRY_ROLE on a.DI to the Aave Labs multisig:
Aave Labs multisig: 0x2B99790c35a401be873FA7Eb514D9220736BB1cA
The role will be used by Aave Labs as a technical service provider to support retry operations for already-sent a.DI messages when needed.
The role grant covers the nineteen networks: Ethereum, Polygon, Avalanche, Optimism, Arbitrum, Metis, Base, Gnosis, Scroll, BNB, Linea, Celo, Sonic, Soneium, Plasma, Mantle, MegaEth, XLayer and Ink. Forwarding that many payloads through a.DI in a single proposal execution would risk running out of gas, so it is split across two proposals. This proposal covers Ethereum, Polygon, Avalanche, Optimism, Arbitrum, Metis, Base, Gnosis, Scroll and BNB; the remaining nine are covered by Part 2. The two proposals are otherwise identical in intent and grant the same role to the same multisig.
On Scroll and Metis the payload also sets the GranularGuardian as guardian of the CrossChainController, a role currently held by an external multisig on those two networks. The GranularGuardian can only forward retry calls to the CrossChainController while it holds that role, so without this change the RETRY_ROLE grant would have no effect on Scroll and Metis. All other a.DI networks already have the GranularGuardian set as CrossChainController guardian, so this brings both networks in line with the default a.DI configuration.
References
- Implementation: AaveV3Ethereum, AaveV3Polygon, AaveV3Avalanche, AaveV3Optimism, AaveV3Arbitrum, AaveV3Metis, AaveV3Base, AaveV3Gnosis, AaveV3Scroll, AaveV3BNB
- Tests: AaveV3Ethereum, AaveV3Polygon, AaveV3Avalanche, AaveV3Optimism, AaveV3Arbitrum, AaveV3Metis, AaveV3Base, AaveV3Gnosis, AaveV3Scroll, AaveV3BNB
- Discussion
Copyright
Copyright and related rights waived via CC0.
03Mismatch analysis
The decoded calldata contains a single action: an opaque execute() fallback call with no decoded arguments to a contract address on Ethereum. This is consistent with Aave's typical governance architecture, where an on-chain proposal calls a single audited 'Payload' contract (matching the AaveV3Ethereum implementation link in the References section) that internally performs the granular actions described in the prose — granting RETRY_ROLE to the Aave Labs multisig and, on Scroll/Metis, updating the CrossChainController guardian — and forwards the corresponding messages to the other nine networks via a.DI. Because the decoder could not resolve the internal call data of the payload (function signature is generic 'execute()' with no arguments), it is not possible to independently verify specific parameters such as the exact role hash, the recipient address, or the guardian-update targets for Scroll and Metis against the prose. No contradictory evidence was found — the single call's target chain (Ethereum) and pattern are consistent with the proposal being a governance-triggered payload execution, and there is nothing in the decoded data that conflicts with the description. Given the opacity of the calldata, confidence in this comparison is low, and per guidance this is recorded without raising it as an actionable discrepancy, since there is no concrete evidence of a mismatch, only limited visibility.
Generated by Kvorum
04Actions
- Target
- 0xc686…b574
- Value
- 0 wei
- Function
- fallback()
- Arguments
{}- Calldata
05Tally
Summed from votes
06Voters
No votes recorded yet.
07Forum
No forum thread is confidently linked to this proposal.
08Similar proposals
- aavecanceledMaintenance: Grant AL RETRY_ROLE on a.DI90%
- aaveexecutedUpdate a.DI implementation and CCIP adapters79%
- aaveexecutedNative bridge adapters update76%
- aaveexecutedHyperlane bridge adapter update to V373%
- aaveexecuteda.DI Sonic path activation71%
- aaveexecutedMonad aDI path activation70%
- aaveexecuteda.DI Celo path activation70%
- aaveexecutedPlasma aDI path activation70%
- aaveexecutedMantle a.DI path activation70%
- aaveexecutedADI Shuffle Update70%