TEC TEST Hatch 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 TEST Hatch 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 TEST Hatch 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 Hatch TEST 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: 60%
- Percentage of tokens need to vote yes (of the tokens that were used to vote) for a proposal to Pass
-
Minimum Quorum: 2%
- 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: 3 days
- This is the period of time it takes for a vote to pass or fail
-
Vote Proposal Buffer: 8 hours
- The amount of time that must pass between the start of subsequent votes.
-
Rage Quit Period: 24 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: 3 wxDAI
- 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: 5 wxDAI
- 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: 1000 wxDAI
- The maximum amount of wxDai that can be sent to the Hatch
- Target Goal: Total amount of funds raised or expected amount of funds raised. Theoretical number for the purpose of running the simulation.
-
Hatch period: 15 days
- How long the Hatch is open to collect funds
-
Hatch Minting Rate: 10,000 TESTTECH/wxDAI
- The amount of TESTTECH that are obtained for 1 wxDAI (wrapped xDAI).
-
Hatch Tribute: 5%
- 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 wxDAI 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: 0.005 wxDAI/CSTK
- The amount of wxDAI (wrapped xDAI) each CSTK Token holder is able to send to the Hatch per CSTK they have. If the ratio is .005 wxDAI/CSTK then the user has to have 200 CSTK to send 1 wxDAI
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.
-
Maximum Impact Hour Rate: 0.01 wxDAI/IH
- The theoretical maximum rate that Impact Hour token holders would be able to receive
-
Impact Hour Slope: 0.012 wxDAI/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 | EXECUTE | DV (TESTTECH) | DV (TESTTECH) |
Agent 1 | RUN_SCRIPT | DV (TESTTECH) | 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(1) | ANY ACCOUNT | DV (TESTTECH) |
Hatch | CONTRIBUTE(2) | ANY ACCOUNT | DV (TESTTECH) |
Impact Hours | CLAIM | ANY ACCOUNT | DV (TESTTECH) |
Redemptions | REDEEM(3) | ANY ACCOUNT | DV (TESTTECH) |
Redemptions | ADD_TOKEN | DV (TESTTECH) | DV (TESTTECH) |
Redemptions | REMOVE_TOKEN | DV (TESTTECH) | DV (TESTTECH) |
Tokens | MINT | Hatch | DV (TESTTECH) |
Tokens | BURN | Hatch | 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 | 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) CLOSE role is behind the Impact Hours ACL Oracle. This prevents closing the hatch before all impact hours have been claimed and transformed into TESTTECH.
(2) 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.
(3) REDEEM role is behind the Dandelion Voting (DV) ACL Oracle. This prevents redeeming tokens that are blocked in a vote.
EDITED February 2nd, 2021: Changed to reflect reimplementation of Impact Hours app, and added transfer permission on Agent 1 for Redemptions.
EDITED March 4th, 2021: Changed to reflect updated Parameter names following this spreadsheet.
EDITED March 29: Added description of Target Goal