Staking faceted on the Diamond Standard.
**Alternative way: Use Weighted averages to calculate the delegatee’s delegated balance
Faceted on the Diamond Standard and using Minimum token as inspiration for total supply at a point in time and user balance at a point in time also known as a snapshot.
Users that holds enough vBOND can create a proposal. A Proposal Creator’s balance is locked until the vote ends.
- Can’t Withdraw
- Can’t Delegate
- Can’t vote on other Proposals
Proposal Has a maximum number of actions that can be executed.
A proposal can have the following States.
- List of Targets (Addresses)
- List of Values
- List of Signatures
- List of Calldata
After being created, proposals enter the warm-up states to allow people to stake their BOND. After warm-up, any user can vote. The voting period starts at the timestamp of the first vote. The first vote has to:
- Calculate circulating supply at the
moment and stores it on the proposal
- Set the proposal state to voting
Once a proposal is accepted, it will have to wait in a queue before it can be executed. During this time, it can be canceled by the guardian.
Once a proposal becomes executable, any users can call the execute function. If the proposal is not executed during the grace period.
Predefined Proposals are hardcoded into the DAO. They can be started by any user given they meet the requirements for a proposal.
- Get money out of Treasury
- Cancel Execution of proposal
Users can vote using their vBOND balance + delegated vBOND at the voting start timestamp/block. Users can only be pro or against and users can cancel vote or change their vote.