Product Reveal Series: Agora – Smart Contract Governance

In the third installment of our Product Reveal Series we're going deep on Agora Smart Contract Governance

Share This Post

Decentralized Authority, Smart Contract Governance

Imagine a democratic organization that votes to spend funds from its shared treasury of assets. Using a snapshot or “on-chain” voting system, members are able to vote on decisions, but ultimately, only the signers on the multi-sig truly hold authority over it, and can execute a spending transaction, regardless of the outcome of the vote. This is great for smaller guilds or “departments” inside of larger organizations, but what about larger, more distributed and decentralized groups?

In this article we go beyond Native Scripts and dive deep into how authority can be distributed at scale, and how “Smart Contract Governance,” as enabled by the Agora smart contract library, actually works.

Agora

Agora is a novel set of smart contracts developed specifically for Cardano-based organizations. As mentioned in the “Using Agora” documentation on the Liqwid Labs GitHub and Notion sites, Agora itself is not a DAO, but a set of Plutus scripts composed to form an on-chain governance system. This system enables the decentralized management of: treasury assets, protocol parameters, protocol scripts, etc. Anything that can be expressed as an on-chain action can be written as an “effect” and included in a proposal, which can then be submitted to the organization’s governance module.

An “effect” is an on-chain representation of a proposed change to the protocol. A “proposal” will hold references to one or many “effects.” If an effect's proposal is passed by the community, effects are granted special “authority tokens” which permit them to enact their encoded changes to the relevant protocol components.

Using Agora Documentation

At a high level, this means that when a proposal is submitted to the DAO’s governance module, it carries with it the on-chain effects that the particular proposal wishes to enact. For example, let’s say that the proposed effect is a spending transaction from the organization’s treasury.

For this spending transaction to execute, the proposer will first build the transaction and encode it into the proposal. (This is just one of the parts Summon Platform intends to make easy and accessible.)

The proposer, along with any other supporting token holders, can then “delegate” their governance tokens to the “pool” that corresponds to that particular proposal. Once the proposal acquires enough support (governance tokens delegated to it), it moves to the next stage of the governance process, the voting phase.

Voting is time-sensitive and will eventually expire if the proposal does not reach the required quorum of yes votes. The time period between when a proposal is accepted and when a proposal is no longer valid is just one of the arbitrary parameters that the organization can decide on when deploying their governance scripts. It is important to note that, while staked to the Agora governance module, a user can vote on multiple proposals.

Assuming the proposal passes (i.e., reaches the required quorum pre-set by the DAO), the smart contract then issues what is called an “Authority Token”; this token is what the contract logic is looking for in order to validate the encoded effects (in this case, a spending transaction) of the proposal.

Once validated, the transaction can now be submitted to the chain by anyone, much like any other pre-validated transaction (e.g., a fully witnessed multi-sig transaction). No special authority is needed for a user to submit the transaction to the chain.

This method of submitting pre-encoded effects along with a proposal, which can then be validated and executed without a central authority’s permission, is what sets smart contract governance apart from “snapshot voting” and even more complex systems of “on-chain voting.”

Parameterizing Agora

When creating an Agora-governed DAO on the Summon Platform, there are many parameters to consider:

  • Amount of GT needed to create a proposal.

  • Amount of GT needed to move a proposal from draft to voting.

  • Amount of GT needed to be voted in-favor, to allow effects to be executed.

  • Length of various proposal phases (if preferred, some of these can be ‘skipped’ by setting them to zero).
    • Draft.
    • Voting.
    • Locking.
    • Executing.
GT = Governance Token
With Summon, you have the option to use an existing Cardano native token or create a new token to serve as the governing token for your DAO.

key factors to consider when choosing parameters for your DAO

  • Current and future circulating supply of governance tokens. 

  • Wallets holding governance tokens, and quantities held. 

  • Number of active tokens, on average, participating in voting.

  • Future release estimates/emissions of governance tokens.

It is important to carefully consider all of these questions. Communities will likely experiment at length before moving to a smart contract system of governance. Building an active, committed community of voters and contributors, and designing sustainable token economics, are imperative for the successful governance of any blockchain organization.

To ensure a seamless, self-evolving, and accessible system, we will continue to develop and incentivize the development of pre-audited, open-source “effects code” that can be added to any proposal with just a few clicks. More advanced users will be able to submit their own custom effects code, unlocking unlimited potential for advanced blockchain organizations.

Catch up on our Product Reveal Series where we’ve covered two of the first major features coming to the Summon Platform (Fee-less cryptographic voting and Native Script treasury management) and how these tools can be used to build and govern your community on Cardano.

As new Summon features and integrations go live, more educational articles and tutorials will be released on the official Summon blog, Medium and YouTube channels

Find out more about the Summon Platform via:

MediumTwitterLinkedinDiscord 

Subscribe To Our Newsletter

Get updates and learn from the best

More To Explore

Are you ready to start a DAO with your community?

Drop us a line and let's chat!

$SUMMON Token
small_c_popup-r

Learn how Summon can help you build a DAO.

Let's have a chat