MPIPs, or how to change the current protocol status
A Meta Pool Improvement Proposal (MPIP) is an initiative that describes a suggestion or change intended to improve some aspect of the protocol. These proposals can originate from community members, users, or developers.
Meta Pool Improvement Proposals promote a process for decision-making within the protocol, encouraging transparency, participation, and open discussion on the NEAR Blockchain Operating System (BOS).
Meta Pool aims for MPIPs to serve as the primary mechanism for proposing new features and changes to protocol parameters. The goal is to establish a highly participatory and transparent process for making complex decisions that affect the Meta Pool Protocol, emphasizing a more decentralized approach.
How does the voting mechanism on MPIPs work?
MPIPs follow a voting mechanism called Token-Based Quorum Voting.
Here are some pillars of this mechanism:
- Voting Power: the foundation of this implementation of token-based quorum voting is the distribution of voting power based on the number of META tokens locked (amplified by the locking period used). Voting power holders are granted voting rights proportional to their holdings, which means those with more voting power have a greater say in decision making.
- Proposal Submissions and Discussion: The first step in the voting process is the submission of proposals by any member of the community that reach the proposal thresholds – see Proposals Thresholds section. Before the proposals enter a voting process, there is usually a period for discussing and refining the proposals to ensure clarity and feasibility.
- Voting Period and Votes Types: A specific voting period is defined during which voting power holders can cast their votes on the proposals. Voters are given the options to vote “For”, “Against” or “Abstain”.
- Minimum Participation Quorum: To validate the voting outcome and prevent decisions from being made by a small minority, a minimum participation threshold, known as Quorum. See Quorum section.
Proposal Thresholds
Proposal thresholds are the criteria someone needs to meet in order to introduce a proposal that will be voted on. A proposer needs to hold a certain amount of voting power in order to introduce a proposal.
Besides the required voting power, the proposer should deposit a certain amount of $NEAR for storage.
The MPIPs thresholds are:
- 200,000 Voting Power.
- 5 $NEAR deposit for storage.
What is the primary goal of Meta Pool Improvement Proposals (MPIPs)?
Quorum management
A quorum is the minimum number of votes required for a governing body to approve a proposal. If a quorum is set at 50%, it means that 50% of all circulating tokens need to vote ‘yes’ for the proposal to pass.
In the MPIP context, a quorum is the minimum number or percentage of voting power required that must be cast in the voting process. If the Quorum is not met, the voting results may not be considered valid, and the proposal might be rejected.
There are 3 types of votes, for, abstain and against. The votes that count to exceed the quorum for a MPIP to be successful are:
- The sum of the for and abstain votes must exceed the required quorum.
- The votes of ‘for’ must be greater than ‘against’.
- If these two premises are not fulfilled, the MPIP will be rejected.
E.g.: If the current circulating supply of voting power is 60,000 VP, and the MPIPs is set to 5% of the quorum floor, the voting power required to approve a proposal is 3,000 VP.
Question: What is the voting mechanism used for MPIPs called?
How it works?
How to participate in the MPIPs?
In the MPIPs a member of the community can participate:
- Creating a MPIPs.
- Voting for MPIPs.
- Both.
MPIP Process
The Proposal life cycle:
- Draft – Authors submit a draft MPIP for community discussion, comments and polling (e.g.: Easy Poll). Community, dev team provides feedback on the MPIP. If the draft MPIP has gained sufficient traction during the review window the MPIP goes to the voting stage.
- Canceled – If the proposal is not accepted, it will be canceled (only the Author or an Operator can cancel a MPIPs been in the Draft status).
- In progress – Is the voting period. The proposal is open for voting. Note: All feedback in the form of comments in the draft stage and polls are dumped on-chain into the proposal before the proposal vote begins.
- Succeeded – The proposal has reached the quorum floor and the amount of “For” votes is greater than “Against” vote.
Rejected – The proposal has reached the quorum floor and the amount of “For” votes is lower than “Against” vote. Or the proposal has not reached the minimum quorum floor.
What is the current minimum participation threshold required for a proposal to be valid?
Voting Power
MPIP participants have the ability to leverage their entire voting power in order to create proposals and cast votes. This implies that their voting power will be available even if it is being utilized on other voting processes within the DAO, such as Ambassador Initiatives voting, Launchpad voting or Validators voting.
Each voter has their entire voting power available at the moment to cast votes on proposals (MPIPs).
During each voting session, the community can use the total voting power they possess, allowing them to vote on multiple proposals if there are multiple active ones.
Creating a Meta Pool Initiative Proposal (MPIP)
1. Go to: MPIP app on near.org: https://near.org/meta-pool-official.near/widget/ImprovementProposals
Proposal metrics:
- Current Quorum needed for the circulating supply.
- Proposal thresholds in Voting Power. Amount of voting power needed in order to introduce a proposal. The proposer needs only to hold this amount.
Please note that it is also required: the proposer should deposit a certain amount of $NEAR for storage.
The indicated Voting Power is the total voting power that the Proposer has available even if it is being used on other voting processes within the DAO. - Voters / VP Holders: Number of voters and number of Voting Power holders.
- All Proposals: Proposal list ordered by MPIP Id descending.
2. Connect your NEAR wallet by clicking the Sign In button or if you do not have an Account yet, create one by clicking the Create Account button.
3. Choose your preferred wallet.
Balance: Voting Power balance + NEAR balance. Once the wallet is connected, you can see, up to the right, the balance that the user has of Voting Power and NEAR associated with that wallet.
4. Click on “Create Proposal” button.
Important: In order to create an MPIP, the proposer should have enough voting power and a certain amount of NEAR (see Proposal Thresholds section).
5. A MPIP proposal consists of:
- Proposer: a creator (or author) account.
- Title. Required.
- Short description: a one-line human readable description. Required.
- Description: a body description containing technical specification of the feature or protocol parameters changes. Required.
- Function Call Data: could contain call data encoding a function call that the contract will perform if the proposal passes.
6. Create Proposal: Once all the required information is completed and the proposer has the necessary Threshold (Voting Power and NEAR for storage), pressing the Create Proposal button generates the MPIP.
Important: once the necessary fields have been completed, the amount of NEAR required for storage appears under the create proposal button. Amount that will be requested when creating the proposal.
7. “Confirm” the transaction of the proposal and then “Approve” the transaction in your wallet.
8. Succeed you have created a MPIP.
9. Congratulations, your proposal is now on the proposal list with Draft status.
Proposal View
Once the MPIP has been submitted, clicking on the proposal in the dashboard/list opens a view of the selected proposal. This is the view that the proposal has, of its proposed MPIP.
The MPIP detail’s view is composed by 5 cards or sections:
- 3 Options buttons:
- Edit: This button allows the editing of the MPIP, as long as it is in the Draft status.
- Cancel: Allows the proposer to cancel his submitted MPIP as long as it is in the Draft status. It should be noted that an Operator also has the power to cancel an MPIP that is not correctly prepared or submitted.
- Start voting: This button starts the voting period. Once the voting period is activated, the possibility of receiving feedback from the community is blocked.
- Proposal details: information, status and discussion subsection.
- Vote section: it allows the voter to cast a vote, show the vote and remove the vote if already done.
- Voting period: it shows the voting period time status. It will show if the voting period has started, has finished or the remaining days to vote if the voting period is in progress.
- Vote results: it shows the number of votes per vote type with a progress bar representing the number of votes. Quorum: it keeps the desired quorum to reach to approve the proposal. This Quorum value is calculated as a snapshot once the proposal is moved to the voting period.
- Votes: it lists the votes casted. It includes who votes, which type of vote, the memo (if it exists), and the total amount of voting power.
Start the voting period
A Proposer can only start an MPIP if it was submitted by it.
The Proposer sees this screen once they choose the project to start for voting.
1. Click on the Start Voting button.
2. Confirm the transaction.
3. Approve the wallet transaction.
4. Done, your MPIP is ready to receive votes from the community.
Community Participation and Voting
Go to: MPIP app on near.org: https://near.org/meta-pool-official.near/widget/ImprovementProposals
The community can gets involved in two ways:
- Giving feedback, writing messages and giving opinions in the draft period – Draft status of a MPIP.
- Voting in the voting period – In Progress status of a MPIP.
Giving Feedback – Discussion
During a draft period, community members or even the core team, can discuss the proposal by adding comments on the Discussion section. That means, if the project is not yet in the voting period (in progress), the entire community can leave comments and participate in the discussion regarding the chosen MPIP.
How to give feedback?
1. Connect your NEAR wallet by clicking the Sign In button or if you do not have an Account yet, create one by clicking the Create Account button.
2. Choose your preferred wallet.
3. Choose a MPIP in Draft status from the list and click on it. A detailed view of the selected MPIP will open on the screen.
A detailed view of the selected MPIP will open on the screen.
4. Adding comments on the Discussion section clicking on the Discussion button.
5. Write and or upload an image and click on Comment.
6. Save the data and approve the transaction.
Important: Adding a comment requires having NEAR and generating a minimum deposit in storage.
7. Congratulations, you are already participating in the discussion of a proposal. Thank you for being part of and supporting the DAO of Meta Pool.
Voting a MPIP
During the voting period, all community members are invited to vote on MPIPs.
Comments will remain disabled during this period, and beyond, allowing only the display of comments.
How to vote a MPIP?
1. Connect your NEAR wallet by clicking the Sign In button or if you do not have an Account yet, create one by clicking the Create Account button.
2. Choose your preferred wallet.
3. Choose a MPIP “In progress” status from the list and click on it. A detailed view of the selected MPIP will open on the screen.
A detailed view of the selected MPIP will open on the screen.
The MPIP detail’s view is composed by 5 cards or sections:
- Proposal details: information, status and discussion subsection.
- Vote section: it allows the voter to cast a vote, show the vote and remove the vote if already did.
- Voting period: it shows the voting period time status. It will show if the voting period has started, has finished or the remaining days to vote if the voting period is in progress.
- Vote results: it shows the number of votes per vote type with a progress bar representing the number of votes. Quorum: it keeps the desired quorum to reach to approve the proposal.
This value is calculated as a snapshot once the proposal is moved to the voting period.
- Votes: it lists the votes casted. It includes who votes, which type of vote, the memo (if it exists), and the total amount of voting power.
- In the section Vote, the community can write a memo for a vote (optional) and then cast a vote. The voting options are:
- For.
- Abstain.
- Against.
If you want to leave a memo, write it down before clicking on the selected voting option, otherwise directly click on the chosen option.
5. Confirm the transaction.
6. Approve the transaction.
7. Votes section. Congratulations you have now Your vote will appear in this section of the MPIP.
- Congratulations, you have just cast your vote with 100% of your voting power for this option.
Important:
- You can cast only one vote per MPIP.
- You vote for the total voting power associated with the wallet.
- You can vote on all the MPIPs you want.
- Voting does not affect your ability to use your voting power in other Meta Pool applications. Since it does not block your Voting Power.
- While the “in progress” voting period is active you can remove your vote and vote again for any of the voting options.
How to Remove the vote / change it?
1. Go to the Vote section and click on Remove Vote on the Vote option you already cast your vote.
2. Click on confirm.
3. Now you have already recovered your total voting power for this MPIP (including the memo/comment for your vote) and you can change your vote.
Top comment
Great way to descentralize will and knowledge to improve.
Great job NEAR
Super awesome way to descentralize and knowledge to improve.
Great article