TTG Engineering Specification

Overview

Two Token Governance (TTG) is an EVM-compatible, immutable governance module for managing the M^0 core protocol and future M^0 ecosystem periphery.

Smart Contracts structure

  1. Registrar for managing parameters and participants of M^0 core protocol and periphery contracts.

  2. Three OpenZeppelin style Governors - StandardGovernor, EmergencyGovernor, and ZeroGovernor control the lifecycle of governance proposals.

  3. ERC20 POWER token with built-in inflation, self-delegation, epoch snapshot tracking, and Dutch-style Auction mechanisms.

  4. ERC20 ZERO token with built-in self-delegation and voting epoch snapshots tracking mechanisms.

  5. Distribution Vault with claiming and distribution of protocol funds to ZERO token holders.

Key unique features

  • Epochs for proposals lifecycle. Split of epochs between Transfer/Re-delegation/Auction and Voting epochs.

  • Strictly restricted types of proposals and only one change per proposal.

  • Inflation of POWER token supply, dilution of the voting power of inactive POWER participants during epochs with at least one Standard proposal. Auction of inflation of inactive POWER participants.

  • RESET of governors by ZERO holders to POWER or ZERO token holders.

  • ZERO rewards distribution to active delegates of POWER token holders per epoch.

  • Distribution of proposal fees and other funds to ZERO holders.

  • ERC20Votes compatible, epoch-based POWER and ZERO tokens with default self-delegation.

  • Ability to batch vote on multiple proposals.

  • Unique IDs for proposals that take into account epoch, parameter change, and proposed value. No duplication of proposals.

Last updated

Copyright 2024 M^0 Foundation