[003 Final Vote] The Creation of a Voting-Escrow NFT and Governance for ContinuumDAO
-
By Hal (Telegram, Github @hal0177)
7th November 2023Abstract
This document proposes the creation of a vote escrow system for use by ContinuumDAO in line with the objectives of the White Paper. The system will be uniquely tailored for a DAO-led MPC network.
Motivation
The goal is to create an on-chain token based governance reward system comprised of two parts:
-
An NFT which contains locked CTM, called veCTM. This NFT represents a stake in the ContinuumDAO and can be used for voting, revenue collection, MPC node attachment, and tracking proof of contribution to the ContinuumDAO.
-
A governance suite of smart contracts which operates a comprehensive on-chain governance process, which automatically executes the results of the vote.
The system will implement OpenZeppelin’s Governor smart contract system, with some significant modifications to accommodate for ContinuumDAO’s unique requirements.
It will be deployed to a chain which has yet to be chosen. The veCTM will be using a proxy pattern contract, so that it can be upgraded following an on-chain governance vote.
Overview
Developer
My name is Hal, I am a smart contract and web app developer with 3 years experience, having been trained in the Moralis academy. I've worked on Fusion protocol, and Multichain, among other projects. I am based in Europe.
Token Vesting
Holders of CTM, which is a simple fixed supply ERC20, will be able to lock them into a vote escrow NFT, to be named veCTM, for up to four years. The voting power will decrease linearly, where max power is at four years, decreasing to the minimum of zero power on the maturation date, unless locked CTM amount is increased and/or lock time is extended.
In addition, users will be able to merge veCTMs with the resulting lock time having a weighted average lock time of its composite tokens.
Users will also be able to split their veCTM into two or more veCTMs as they wish.
Finally, users will be able to liquidate their veCTM into CTM with a penalty of the vested power, with the penalty being paid to the DAO Treasury. This penalty is dependent on the amount of time left in the lock. For a full 4 year lock, the penalty is 50%, for a 2 year lock, the penalty is 25%, decreasing linearly to a 0% penalty at unlock time.
Governance
The veCTM will either have voting rights or be designated non-voting. For a non-voting veCTM, you cannot merge with another veCTM token, but you can still split them, resulting in two or more non-voting tokens, any of which may be liquidated. A veCTM with voting rights will allow voting either through Snapshot or Tally.
The voting power of an address that owns multiple veCTMs will calculated by adding the constituent veCTM voting powers, so that the address will only have to vote or delegate once.
The veCTM will have a public interface to output the underlying voting power. The token will inherit the OpenZeppelin governance smart contract system, Governor, and contains all of its features, such as the ability to delegate voting power to another address.
There will be some modifications made to the code, for example the delegate vote feature will be disabled for non-voting veCTM. Governor will allow a vote to automatically execute some smart contract code, such as transferring funds from the Treasury, executing a contract upgrade, or configuring an on-chain parameter in a smart contract.
Included in the deliverables will be a demonstration of basic Governor voting mechanisms such as:
- Simple transfer of funds from the Treasury to another wallet.
- Adding and removing a list of veCTM IDs, attaching and detaching them to nodes.
- Redeploying the veCTM smart contract via its proxy pattern.
The Continuum MPC Node Delegation
The veCTM may be attached to a node running on the Continuum to receive extra rewards. The attach/detach mechanisms will be performed by DAO governance. The information provided for attaching a node will be the enode and the wallet address of the veCTM. The rewards paid to attached veCTMs will be adjustable by the DAO. Once attached, a veCTM will not be able to be merged, split, or liquidated. The DAO will also have the power to disable extra rewards for a non-performant attached veCTM, and revoke a veCTM's ability to transfer, liquidate, and split into other veCTMs - if it is attached to a bad actor node on the network.
Tally Integration
Integration of a front end to interact with the Governor interface will be created. Tally provides a Governor interaction suite, which will require configuration to suit our unique governance structure. A time lock provision will be included to allow the Committee to prevent the automatic execution of a voting result within a defined window following a successful vote.
Audit
In the case of suggestions for modification of the smart contract code from the auditors, the appropriate modifications will be made to satisfy them. Neither the cost or selection of the auditors will be subject to this proposal.
Token Distribution
Immediately following the audit on the smart contract code, the CTM token contract will be deployed, all tokens minted, and the veCTM will be minted and distributed as appropriate to CTMDAOVOTE token holders.
Type of Proposal
Request for funding.
Scope
Milestones
- veCTM proxy pattern contract that allows vesting, merging, splitting, and liquidation of token IDs. (Fully tested)
- Inclusion of MPC node attachment. (Fully tested)
- Modified OpenZeppelin Governor proxy pattern contract. (Fully tested)
- Functional front end to all veCTM user features. (Completed)
- Token distribution. (Completed)
All tasks will be completed in collaboration with the core contributors, seeking their input into the design of the code and their sign off on each Milestone.
Timeline
Milestones 1 to 4 are anticipated to take 2 months to complete. Work can be started immediately, upon acceptance of this proposal.
Budget
The cost for all the above tasks is 8,000 USDC and 30,000 veCTM, locked for 4 years. The first half of the USDC is payable upon completion of Milestones 1 and 2, and the balance payable upon completion of Milestones 3 and 4. The veCTM will be payable following Milestone 5 which will be completed following the audit.
The cost of the audit is not included here.
-
-
The Snapshot poll is now live, with voting for 10 days. Please do go and vote :- https://snapshot.org/#/continuumdao.eth/proposal/0x6e51baec1fe4c21e1378af302017cb2f8141ab0843bd75172281d20738c81446