x/gov
The Governance Procedure
Phase 0 - Submit a proposal along with an initial deposit:
Users can submit a proposal with an initial deposit. The proposal will then become "active" and enter the deposit period.
Phase 1 - Deposit period
During the deposit period, users can deposit and support an active proposal. Once the deposit of the proposal reaches min_deposit, it will enter the voting period. Otherwise, if the proposal is not successfully funded within max_deposit_period, the proposal will be destroyed: the proposal will be removed from state and the deposit will be burned.
Phase 2 - Voting period
During the voting period, staked (bonded) tokens will be able to participate in the voting. Users can choose one of the following option: yes, no, no_with_veto and abstain
After the voting_period has passed, there are several scenarios where a proposal will be considered to be "Rejected", for example, if
- No one votes (everyone
abstain) - Votes did not reach the
quorum - More than veto of voters vote for
no_with_veto - More than threshold of non-abstaining voters vote
no - Otherwise, the proposal will be accepted and changes will be implemented according to the proposal.
Deposit refund and burn
When a proposal is finalized, the coins from the deposit are either refunded or burned according to the final tally of the proposal:
- If the proposal is approved or rejected but not vetoed, each deposit will be automatically refunded to its respective depositor (transferred from the governance ModuleAccount).
- When the proposal is vetoed with greater than 1/3, deposits will be burned from the governance ModuleAccount and the proposal information along with its deposit information will be removed from state.
- All refunded or burned deposits are removed from the state. Events are issued when burning or refunding a deposit.