TEC Hatch Rehearsal Implementation Specification

Introduction

The Token Engineering Commons hopes to advance the field of token engineering by creating a purpose driven economy that will curate and fund TE projects with an aligned focus.

The intention is to launch first as the TEC Hatch DAO and potentially upgrade to a Commons which will include an Augmented Bonding Curve and Conviction Voting. However, this is up to the will of the TEC Hatch DAO and the Commons upgrade is not in the scope of this document. This specification is solely for the initial deployment of the TEC Hatch DAO.

The TEC Hatch DAO will have two main phases. First the Hatch where funds will be sent into the TEC Hatch DAO and TECH tokens will be minted. After the Hatch, the TEC Hatch DAO will be live and have the ability to vote on how to use these funds to best execute on their mission.

This implementation spec is for the TEC Hatch Rehearsal DAO, while real money was used, there is no expectation of anything happening with this DAO. This is simply a test.

Implementation

Governance structure

Token holders

Holders of Token Engineering Commons Hatch Rehearsal DAO Tokens control the funds sent to the Hatch collectively and individually and can take part in key governance decisions of the project.

Rights and privileges

The initial privileges:

  • Using Dandelion Voting to control the funds in both the Redeemable and the Non-redeemable Agent applications.
  • Using Dandelion Voting to upgrade the smart contract system that underlies the DAO.
  • As long as they have not voted yes on a proposal yet to be executed, TESTTECH token holders can redeem their tokens and withdraw their proportional share of funds held by the Redeemable Agent application.

Application Configurations

Token and Hooked Token Manager

Hooked Token Manager controls the TESTTECH token.

  • Token symbol: TESTTECH
  • Token name: Token Engineering Commons TEST Hatch Token
  • Decimals: 18
    • How divisible the base unit of the token can be. If the Decimals is 18, then you can divide 1 token by 10^18
  • Transferable: No

Dandelion Voting

Dandelion Voting is ā€œgod-modeā€ within the TEC Hatch DAO. It controls almost everything in the DAO. TESTTECH Token holders use this application to collectively decide how to use the funds within the DAO and can control the smart contract system that makes up the DAO.

  • Support Required: 88%
    • Percentage of tokens need to vote yes (of the tokens that were used to vote) for a proposal to Pass
  • Minimum Quorum: 8%
    • The percent of the total supply of the token that needs to vote yes in a vote in order for it to be able to be passed.
  • Vote Duration: 2.5 days
    • This is the period of time it takes for a vote to pass or fail
  • Vote Proposal Buffer: 4 hours
    • The amount of time that must pass between the start of subsequent votes.
  • Rage Quit Period: 16 hours
    • The period of time after a vote passes before the vote can be executed. This gives hatchers that donā€™t approve of the vote an opportunity to leave the hatch before vote execution.

Tollgate

Tollgate controls the cost of creating a dandelion voting proposal.

  • Tollgate Fee: 1000 TDAI
    • Requires a user to deposit this amount before creating a vote, this fee goes to the funding pool vault.

Hatch

Hatch controls the initial funds of the DAO, it receives funds and mints TEC Hatch DAO Tokens (TECH).

  • Minimum Goal: 800,000 TDAI
    • The minimum amount that needs to be collected during the Hatch to create the TEC HatchDAO, if less than this is collected, the funds will be sent back to the addresses that sent it.
  • Maximum Goal: 14,000,000 TDAI
    • The maximum amount of TDai that can be sent to the Hatch
  • Target Goal: 300,0000 TDAI
    • Total amount of funds raised or expected amount of funds raised. Theoretical number for the purpose of running the simulation.
  • Hatch period: 3.5 days
    • How long the Hatch is open to collect funds
  • Hatch Minting Rate: 1 TESTTECH/TDAI
    • The amount of TESTTECH that are obtained for 1 TDAI (wrapped xDAI).
  • Hatch Tribute: 2%
    • Specifies what percentage of the funds raised by the Hatch go to the Non-redeemable Pool

Hatch Oracle

Hatch oracle controls how much funds the hatch can receive from a specific address. The sending address needs to have a minimum amount of membership score tokens in order to send to the Hatch.

  • Score token address: 0xc4fbe68522ba81a28879763c3ee33e08b13c499e (CSTK)
    • The Hatchers have to hold these tokens to send TDAI to the Hatch
  • Score token decimals: 0
    • How divisible the base unit of the Score token can be. If the Decimals is 0, then the token is not divisible.
  • Membership Ratio: 10 TDAI/CSTK
    • The amount of TDAI (wrapped xDAI) each CSTK Token holder is able to send to the Hatch per CSTK they have. If the ratio is .005 TDAI/CSTK then the user has to have 200 CSTK to send 1 TDAI

Impact Hours

Impact Hours determines how to distribute TECH tokens to the TEC Community that earned Impact Hours. Impact Hours are rewarded via the ā€œCultural Build Tributeā€ which is designed to mint TECH tokens to reward everyone inside the community that worked to build the culture and tech that made the TEC Hatch DAO possible.

  • Impact Hours Token: 0xdf2c3c8764a92eb43d2eea0a4c2d77c2306b0835 (IHT)
    • The token that controls the Impact Hours distribution.
  • Impact Hour Rate at Infinity: 226 TDAI/IH
    • The theoretical maximum rate that Impact Hour token holders would be able to receive
  • Target Goal Impact Hour Rate: 77.07 TDAI/IH
    • The parameter that effects the curvature of the Impact Hour graph, also the amount needed to be collected to reach 1/2 of the Max IH Rate divided by total IH.

Agent 1: Non-redeemable Pool

Agent 1 can interact with smart contracts and controls the funds set aside to advance the field of Token Engineering. It is controlled by the Dandelion Voting App.

Agent 2: Redeemable Pool

Agent 2 can interact with smart contracts and controls the funds set aside to create the economy of TE Commons. It is controlled by the Dandelion Voting App. The funds here can also be redeemed by the individual TESTTECH token holders on a pro rata basis.

Redemptions

Redemptions enables TESTTECH token holders to redeem their tokens for the tokens in Agent 2 (the Redeemable Pool) on a pro rata basis. These are the funds set aside to create the economy of TE Commons.

Permissons

The permissions that will be set are (click to magnify):

App Permission Grantee Manager
Kernel APP_MANAGER DV (TESTTECH) DV (TESTTECH)
ACL CREATE_PERMISSIONS DV (TESTTECH) DV (TESTTECH)
EVMScriptRegistry REGISTRY_MANAGER DV (TESTTECH) DV (TESTTECH)
EVMScriptRegistry REGISTRY_ADD_EXECUTOR DV (TESTTECH) DV (TESTTECH)
Agent 1 TRANSFER Redemptions DV (TESTTECH)
Agent 1 TRANSFER Migration Tools DV (TESTTECH)
Agent 1 EXECUTE DV (TESTTECH) DV (TESTTECH)
Agent 1 RUN_SCRIPT DV (TESTTECH) DV (TESTTECH)
Agent 2 TRANSFER Migration Tools DV (TESTTECH)
Agent 2 EXECUTE DV (TESTTECH) DV (TESTTECH)
Agent 2 RUN_SCRIPT DV (TESTTECH) DV (TESTTECH)
Hatch OPEN ANY ACCOUNT DV (TESTTECH)
Hatch CLOSE Impact Hours DV (TESTTECH)
Hatch CONTRIBUTE(1) ANY ACCOUNT DV (TESTTECH)
Impact Hours CLOSE_HATCH ANY ACCOUNT DV (TESTTECH)
Migration Tools MIGRATE DV (TESTTECH) DV (TESTTECH)
Redemptions REDEEM(2) ANY ACCOUNT DV (TESTTECH)
Redemptions ADD_TOKEN DV (TESTTECH) DV (TESTTECH)
Redemptions REMOVE_TOKEN DV (TESTTECH) DV (TESTTECH)
Tokens MINT Impact Hours DV (TESTTECH)
Tokens BURN Hatch DV (TESTTECH)
Tokens BURN Redemptions DV (TESTTECH)
Tokens ISSUE Hatch DV (TESTTECH)
Tokens ASSIGN Hatch DV (TESTTECH)
Tokens REVOKE_VESTINGS Hatch DV (TESTTECH)
Tollgate CHANGE_DESTINATION DV (TESTTECH) DV (TESTTECH)
Tollgate CHANGE_AMOUNT DV (TESTTECH) DV (TESTTECH)
DV (TESTTECH) CREATE_VOTES(3) Tollgate DV (TESTTECH)
DV (TESTTECH) MODIFY_SUPPORT DV (TESTTECH) DV (TESTTECH)
DV (TESTTECH) MODIFY_QUORUM DV (TESTTECH) DV (TESTTECH)
DV (TESTTECH) MODIFY_BUFFER_BLOCKS DV (TESTTECH) DV (TESTTECH)
DV (TESTTECH) MODIFY_EXECUTION_DELAY DV (TESTTECH) DV (TESTTECH)

(1) CONTRIBUTE role is behind the Hatch Oracle ACL Oracle. This prevents anyone from contributing more funds that what they are allowed based on their membership score.
(2) REDEEM role is behind the Dandelion Voting (DV) ACL Oracle. This prevents redeeming tokens that are blocked in a vote.
(3) CREATE_VOTES role is behind the Hatch ACL Oracle. This prevents creating new votes before the hatch token vesting complete period has passed, so anyone can redeem during the first vote.

Edit July 6th, 2021: AdriĆ  and me have seen that Hatch doesnā€™t need Tokenā€™s MINT_ROLE, it is needed by Impact Hours instead.

2 Likes