The Aave Exchange Companies are committed to creating open source software that empowers users’ financial, social and cultural independence. For this software, decentralization and — most specifically decentralized governance — will be a core feature; and it is this decentralization that allows community members to contribute to the larger social, cultural and financial ecosystem growing around any software protocol.
With respect to the Aave Protocol, the community has indicated that it would like to see the protocol deployed to networks other than Ethereum, such as Polygon. Because this is a community-based desire and because the Aave Protocol is controlled by the community through Ethereum-based Aave Governance, the community should also be able to use the Aave Governance with any non-Ethereum networks.
Introducing Aave Governance cross-chain bridges — a unique set of tools to enable true cross-chain governance on Ethereum — that the Aave community can consider adopting. An explanation of this new software is below, along with an announcement about the open-sourcing and decentralizing of the Aave user interface, for anybody to contribute and run to access the protocol.
Architecture of the Cross-Chain Bridge
Let’s have a quick dive in the Aave Exchange Governance architecture — and how it can be extended to bridge its decisions affecting non-Ethereum based deployment of the protocol.A scheme of the Aave Governance architectureFor any governance proposal, the key components of the Aave Governance architecture are:
The main governance contract, which allows users to create proposals and allows AAVE holders to vote on those proposals; as well as
The executor contracts, which implement and execute any proposal approved by AAVE holders through a time-lock (the time period of which varies based upon the particular proposal) and defines the parameters by which each specific proposal is implemented (if approved).
However, when any instance of the protocol is deployed on a network other than Ethereum, the only way in which a decision taken by the Ethereum-based governance can be applied is through a bridge from Ethereum to that network. Specifically, if Aave Governance’s decisions were to be applied to the Polygon instance of the Aave Protocol, then the community would have to put forth and implement cross-chain proposals. This would occur through a Bridge Executor Contract.
The process is the following:
On the Ethereum side, the system receives the proposal data from the Aave Governance executors on the smart contract initiating the bridging.
On the recipient chain side, the system receives the already bridged proposal data, forwarded by the Ethereum side.
Finally, the proposal is executed on the recipient chain after an additional time-lock window.
Going deeper into the technical details, to submit a proposal regarding the Aave Polygon Market, proposers on Ethereum can encode the proposal to interact with the Polygon FxRoot bridge. The bridge will forward the proposal data to the FxChild on the Polygon side that will queue the proposal in the Polygon Bridge Executor, which will allow to finally execute it after an additional time-lock window.
This model is not only limited to Polygon, but can be extended to almost any other chain associated with a bridging engine allowing arbitrary messages communication. It’s possible to see a proof of concept of this applied to a roll-up L2 chain like Arbitrum on the same repository, with the architecture explained in the following diagram.Diagram of the cross-chain governance architecture for a potential Arbitrum casePrior to Aave Governance receiving full control over the Aave Protocol instance on Polygon via the Bridge Executor, a test proposal has been posted to Aave Exchange Governance here, to verify that the Aave Governance approves how the system works as expected between Ethereum Mainnet and Polygon Mainnet. Once this test is successful, then the Aave Governance will be given complete control of the Aave Polygon market.
The codebase for the Cross-chain Bridges, including extensive documentation is available here. This will allow anyone to use the code to build their own cross-chain bridges for any chain that needs decisions from another.
The bridges have been audited by MixBytes, and the report of the audit is available here. The Bug Bounty program applies as well, you can find all the details here.
Open Sourcing the Aave Frontend
In addition, today the codebase of one of the front-end interfaces to the Aave Protocol is being open sourced — that means that the code will be available to anyone and may be distributed and modified (subject to the terms of the license, discussed below).
The specific repositories being open sourced are:
Aave UI. Main front-end repository, located here.
UI caching server. Convenience server to optimize interactions with Ethereum nodes’ providers, located here.
Aave UI kit. Visual component used across the Aave UI, located here.
Open sourcing the front end will allow for additional inroads to the already-decentralized Aave Protocol. Such interfaces will augment the more-than-100 integrations that already provide access to the Aave Protocol, by allowing anyone to build an alternative front-end with a different or enhanced user experience. Open sourcing the code also will allow anyone to contribute and improve the current Aave UI.
A robust, community-driven ecosystem is paramount to the ethos of decentralization at the core of DeFi software development, that is why the Aave UI is open sourced under the 3-Clause BSD License.