Introducing aragonOS 5: Disputable apps

aragonOS has come a long way since its last major release in October 2018.

Two years later, it now secures more than $300M and 1500 on-chain organizations on Ethereum’s mainnet. Over fifteen Aragon apps, built as composable “governance Legos” to be plugged into aragonOS, have launched on mainnet and provide these organizations with unparalleled flexibility. Hundreds of active projects now rely on these core contracts as a dependency.

While we were proud of how far aragonOS has taken us thus far, we couldn’t help but continue researching where to take it next. After months of tinkering, we’re excited to announce aragonOS 5 together with our technical vision of how Aragon organizations will soon be able to opt into the security offered by Aragon’s emerging digital jurisdiction, Aragon Court.

Integration with Aragon Court: Disputable Aragon apps

As many of you know, considerable effort has gone into Aragon Agreements for the push towards the Phoenix phase of the Aragon Network. Agreements are the mechanism that will enable organizations to define acceptable actions with a subjective set of rules, which would otherwise be impossible to encode into a smart contract. It will act as the bridge between an Aragon organization and Aragon Court, providing organizations with the substantial new capability to challenge members' actions and raise them as disputes to Aragon Court.

We’ve designed Agreements as a general framework to allow any Aragon app to become disputable. This means the Agreement itself won't allow users to dispute actions in their organizations but instead can be linked with compatible apps such that the actions in those individual apps can become disputable. For example, one could build a disputable voting app whose ongoing votes can be disputed based on the Agreement’s rules. Another example is a registry app, whose entries could be challenged if they don’t abide by the Agreement.

Agreements framework diagram


This introduces a new flavor of Aragon apps, connected to Aragon Court, whose actions can be subjectively governed by an arbitrator—Aragon Court, for example.

Quality of life

1. Forwarding interfaces

We took the opportunity to update our internal contract architecture to better support the different flavors of forwarding interfaces now available along with this change.

2. AragonApp interface

3. ERC165

Housekeeping

The past two years have made it painfully clear to us that aragonOS was not originally packaged well for npm. It often took minutes and gigabytes of hard drive space, not seconds and kilobytes, to install and use the contracts or ABIs from aragonOS in your project.

It is also worth mentioning that we have migrated the aragonPM contracts away from aragonOS and into its own separate repo. This was always a periphery system built on top of aragonOS, rather than directly integrated, and splitting it out allows us to decouple the two sets of contracts.

We are delighted to announce aragonOS 5’s upcoming release. If you would like to take a look at the code in detail, feel free to jump into the release candidate. The code is frozen and currently being audited by Coinspect—stay tuned because we will do our best to publish the release with updated technical documentation as soon as possible!

The first implementation of an Aragon organization using aragonOS 5 and Disputable Voting will be the recently announced Aragon Network DAO. You can read more about its technical details in this blog post.