Aragon Partners with Witnet for Gasless DAO Management on Discord

The Aragon Association is delighted to announce its partnership with the Witnet decentralized oracle to provide off-chain, ‘optimistic’ voting for DAOs via Discord. Any Aragon DAO will be able to offer feeless, binding votes on DAO operations to any Discord channel member using only emoji reactions

Aragon Partners with Witnet for Gasless DAO Management on Discord

We are delighted to announce a partnership with the Witnet decentralized oracle to provide off-chain, ‘optimistic’ voting for Decentralized Autonomous Organizations (DAOs) via Discord. Once fully operational on Aragon v2, any Aragon DAO will be able to offer feeless, binding votes on DAO operations to any Discord channel member using only emoji reactions (👍 / 👎).

For most DAO communities, Discord is the beating heart of democracy - a virtual agora to onboard new members and host 24/7 discussions on any related topic. With this partnership, Discord also becomes the DAO’s parliament, where real, binding votes take place. The result is convenient, frictionless DAO governance that should vastly increase participation rates and the speed of decision-making.

The Emergence of Trustless Oracles

Since the advent of the microprocessor, society has been drifting into a technocentric orbit where software systems such as AI and Decentralized Finance (DeFi) have enough stability and autonomy to support wider social interaction. A DAO is one such system of software ‘smart contracts’ that live on a public network such as Ethereum and allow anyone in possession of a network address to coordinate with other addresses in the pursuit of common goals. The Aragon Association is at the forefront of this movement, building governance systems for DAOs that enable trustless governance (Aragon Govern), dispute resolution (Aragon Court) and community voting (Aragon Voice).

In recent months, interactions with the Ethereum network have become prohibitively expensive, threatening the participation rates of DAO members faced with >$100 ‘gas’ fees to vote on proposals or dispute transactions. Low fees are crucial if DAOs are to fulfill their mandate of direct democracy and egalitarian justice. To this end, the entire DeFi space has been working towards solutions that aggregate as much activity as possible off-chain and then deploy the results to the network in a single transaction, saving communities $000’s in gas fees. The burden of these solutions is to ensure that the off-chain activity is as tamper-proof and trustless as anything on-chain.

The two main technologies for off-chain aggregation to emerge so far are zero-knowledge (ZK) rollups and Optimistic rollups. Using ZK, every state-transition must be cryptographically proven not to violate the prior state (e.g. with a double-spend of available funds). Once the final state has been reached, this can be submitted back to the network with absolute confidence that all of the intermediate states were valid. The Optimistic approach assumes that all state-transitions are valid but requires the aggregator to post collateral that may be ‘slashed’ if a transition is found to be invalid within a ‘Dispute Time Delay’. ZK-proofs are the gold-standard, being both entirely trustless and capital efficient but only operate on transactions so are unsuited to general computation and, hence, voting systems. For now, this leaves Optimistic solutions as the only option for off-chain governance.

Smart contracts can be written to govern the source, destination, time and value of transactions on the Ethereum network but because smart contracts cannot directly query external data sources (such as APIs), trustless notary services call oracles have been developed to ensure that off-chain data can be passed to these contracts in a secure and transparent way.

Witnet’s decentralized oracle network

Witnet is one such oracle service: its network operates as an independent sidechain to the Ethereum network with it’s own crypto-economic guarantees and native $WIT token. Approximately 800,000 nodes host the network and are estimated to be run by >1000 individuals around the world. Witnet’s 2017 white paper was co-authored by Aragon’s Luis Cuende and the two organizations have been working closely together ever since.

How to set up a DAO on Discord

From today, the Aragon Association will use Witnet’s oracle network to independently verify the results of DAO votes within Discord channels and to execute the results on-chain. The integration can be initiated by a channel administrator using this link and a first proposal submitted using only two lines of code in a Discord channel:

!setup <dao-name> <user-role>
!proposal <deadline> <description> to:<destination-address> value:<value> data:<data>

The first line invites the Witnet bot to query the channel and the second initiates a vote proposal,  including the quorum threshold (e.g. 51%) and whether the question is discrete (e.g. yes/no) or a distribution (e.g. 1-10). Anyone in the channel may vote but only the user role specified in the setup can make a proposal.

Once the vote deadline has been reached, the Witnet bot sends a data request to a randomized subset of Witnet nodes known as ‘witnesses’ to query the Discord API for the result. The probability of assignment for each node is proportional to its algorithmic reputation score. Reputation is allocated from a fixed supply to the most recent witnesses and withdrawn by slashing or demurrage over time to incentivize long-term honesty. Each witness commits its version of the result, together with a collateral bond, in an immutable and cryptographically secure manner, such that the results are revealed in unison once the submission window has closed. The game theory in this scenario is that without the ability to collude or knowledge of other witnesses’ submissions, it is rational for all nodes to coalesce around the most truthful rendering of the API data or risk losing their collateral, thus making honesty the most profitable strategy. In the final tally, outlier results are slashed with their bonds distributed to those nodes contributing to the majority or median result. Each node’s reputation score is then correspondingly updated.

Upon a successful vote, Witnet creates the Ethereum transaction that was templated in the proposal call with an execution delay to allow time for any challenges to be arbitrated on Aragon Govern. The result can be seen on the Aragon console and on the witnet.network explorer.

As an example, take an investment group DAO of 21 members that have been on Discord discussing moving 10% of their unallocated treasury holdings of $ETH into a yearn.finance vault for an 8% yield. After weighing the pros and cons for a week, the group decides to hold a ballot on the 1st of June at 12 noon, requiring a quorum of all members to vote 50% +1 for the motion to pass. The vote duration is set for three days with an execution delay of one week. Having already invited the Witnet bot to tie their Aragon Govern DAO to the Discord channel, the channel administrator posts the following proposal:

!proposal 2021/06/04 11:59:59 Proposal to allocate 10% of the group’s treasury holdings (100ETH) to a yearn.finance vault indefinitely.  to:0x1234567890abcdefghijklmnopqrstuvwxyz1234 value:100

If for any reason one of the members was not able to access Discord and vote, because of the DAO’s requirement for a 100% quorum, the motion would fail and the transaction would not be initiated. However, if every member voted and 14 or more voted in favor, then the Witnet bot would retrieve the result from the Witnet decentralized oracle and schedule the transaction to be executed precisely 7 days later. During those 7 days, any member could challenge the motion via Aragon Court, if, for example, they had spilled coffee on their keyboard and accidentally voted the wrong way.

Decentralization is a work in progress

Aragon and Witnet want to be transparent about the current limits of decentralization. One weakness for any aspiring oracle are the reactions monitors that relay data between the Discord API and Witnet nodes. These services are often provided by a single entity - with no incentive for honesty - and are not end-to-end encrypted, meaning that the data could be compromised en route. Ideally, several providers would offer parallel services along encrypted channels so communications could not be intercepted and there would be competitive pressure to remain uncorrupted. Through initiatives like the Alliance of Decentralized Oracles and EIP2362, Witnet are working with industry partners such as Band and Tellor to close these gaps in decentralization. A second weakness is that the WIT token is highly illiquid and it’s low market cap means it cannot yet collateralize high-value contracts. Fundamentally though, these are problems of scale - the zero-to-one has been achieved and it is a paradigm-shift where we can now integrate objective oracles like Witnet with the subjective oracles of DAO voters.

Politics 3.0

It’s no secret that governance and politics today are highly centralized - often revolving around a single personality - and highly removed from the operations of everyday life. Besides restrictions of geography, voting age and unionization, citizens are almost entirely disenfranchised by the aloof machinery of nation state governance. Practical impotence is often attended by a loss of initiative and proactivity that further compounds the general discontent. This is a terrific waste of human resources and the latent ‘wisdom of crowds’ that could be harnessed to great effect if the system allowed for it. From a Lean management perspective, no-one is to blame, rather, the system is at fault. The Aragon Association recognizes this and is committed to building tools to enable local & transnational collaboration that will catalyze a renaissance of engagement and hope. Removing friction and cost from DAOs is a huge part of this and we are thrilled to see what humanity can achieve when all of our votes count.

Integrate the Witnet bot with your own Aragon DAO in seconds using the following line of code pasted into your DAO Discord channel:

!setup <dao-name> <user-role>