Skip to content

Eth governance

https://docs.ens.domains/frequently-asked-questions#who-owns-the-ens-rootnode-what-powers-does-that-grant-them

https://docs.ens.domains/v/governance/process#types-of-proposal

This document aims to give an overview of current DAO governance structures present in the cryptocurrency space. As a start we will base it on the ENS governance structure and generalize it further by exploring more DAOs.

Types of Proposals

The most important distinction in the types of proposals are which can be done in a trust-less manner (on-chain) and those which cannot (or rely on social incentives).

  • Executable proposals
    • Examples:
      • Changing a fee variable on a contract
  • Non-executable proposals:
    • Social proposals
      • Examples:
        • Proposing that current SC owners transfer ownership to new owners
    • Constitutional Proposals

Proposal Intent > Execution of Proposal

(1) Discussion and Formatting

Governance proposals go through multiple stages before being voted on:

  • Discourse on public forums
  • Formatted draft proposal on Github

(2) Proposal Voting (off-chain) / VOTE SIGNALING

A proposal then is put on Snapshot. Snapshot is an off-chain platform on which users can signal their sentiment on a proposal. The votes (can) be weighted by the amount of tokens and are aggregated based on some strategy.

For non-executable proposal types this is sufficient, since the proposal cannot be enforced on-chain anyhow.

Snapshot

https://decrypt.co/resources/what-is-snapshot-the-decentralized-voting-system

  • Votes & proposals are fee-less
    • No on-chain transactions / verification of votes
  • Votes are recorded on IPFS
  • Vote are signed message that users can make

  • Essentially a "poll" or "survey" system with signed messages

  • "No middlemen"

  • Projects which want to use Snapshot

    • Require ENS name
  • Users who want to vote on a project using Snapshot
    • Sign a message and put it on IPFS
    • The wallet signing the vote should satisify the requirements set by the proposal
      • i.e. project requires NFT -> signed voting message should prove that wallet is in ownership of the NFT
      • i.e. 1 coin = 1 vote
      • i.e. delegation of votes
      • i.e. whitelist voting of certain addresses only
    • The methodology for calculating a score based on a set of addresses is called a strategy. A simple JS function.
      • Take on-chain data of addresses -> apply logic -> get score / result of poll
      • https://docs.snapshot.org/strategies/what-is-a-strategy

(3) Proposal Voting (on-chain)

For executable proposals, in addition to the off-chain voting procedure (presumable used a filtering step), a vote is started on-chain where users with tokens can vote.

  • There can be a minimum amount of tokens required to create a proposal on chain (0.01% here)
  • A voting period is set (using block height) for a number of days (7 days)
  • A passed proposal can be time-locked for a period of time before execution (2 days)
  • There can be a quorum set for on-chain voting (1%)

For users there are two ways to vote:

  • On-chain directly:
    • Voting on the contract
    • Delegating their vote to another address (on the contract)
  • Off-chain through using-by-signature functionality
    • https://medium.com/compound-finance/delegation-and-voting-with-eip-712-signatures-a636c9dfec5e
    • (TODO)

Governance Smart Contract

Disadvantages

https://www.coindesk.com/layer2/2022/03/07/ens-and-the-limitations-of-dao-governance/