-
Notifications
You must be signed in to change notification settings - Fork 0
Governance calls reference
Create a proposal vote.
Parameters:
- Address of a voter which receives the delegation. If sender is a self-voter, then sender address should be used
- Proposal ID (number)
- An array of choices. Number of choices must be equal to the number of options.
Index of a choice in the array corresponds to an index of option. Example:
[0, 3, 4]
represents "0 for option 0, 3 for option 1, 4 for option 2"
Creation of a vote from a self-voter:
gov.vote(voter, proposalID, choices, {from: voter});
Creation of a vote from a delegator:
gov.vote(delegatedTo, proposalID, choices, {from: voter});
Check out voting model for additional details.
- Voter has a non-zero weight
- Vote with a tuple {voter, delegatedTo, proposalID} must not exist
- Proposal isn't finalized
- Proposal voting has started
- Number of choices is equal to the number of options
- Every opinion is smaller than a number of opinion scales for the proposal
Cancel a proposal vote.
Parameters:
- Address of a voter which receives the delegation. If sender is a self-voter, then sender address should be used
- Proposal ID (number)
Cancellation of a vote from a self-voter:
gov.cancelVote(voter, proposalID, {from: voter});
Cancellation of a vote from a delegator:
gov.vote(delegatedTo, proposalID, {from: voter});
- Vote with a tuple {voter, delegatedTo, proposalID} must exist
- Proposal isn't finalized
Create a proposal using a proposal contract.
User should deploy a proposal contract before calling the method.
gov.createProposal(proposalContractAddress, {from: sender, value: proposalCreationFee});
After the call, proposal ID may retrived with gov.lastProposalID()
. There might be multiple proposals
deployed at the same time, thus double-check the proposal ID by comparing its parameters: gov.proposalParams(id)
.
50% of the proposal fee is burnt, 40% is rewarded to a task handler, 10% is rewarded to a task eraser.
- Proposal parameters and proposal contract passed the verification
- Proposal creation fee is equal to
gov.proposalFee()
Canceles a proposal if it has no votes.
The call doesn't refund proposal fee.
The call must be called by the proposal contract. Look up proposal cancellation interface of your proposal contract.
- Proposal exists
- Proposal isn't finalised
- Proposal has no votes
- Caller is the proposal contract