To simplify, the illustrations in this tutorial are based on the local development network. Most of the key factors have been adjusted to align with the documentation objective. This tutorial can also be applied to the production network.
Overview
The Council is a group of on-chain accounts that are elected to represent the passive stakeholders of the Darwinia network. The council has two main responsibilities in governance: proposing referenda and vetoing dangerous or malicious referenda.
This guide will provide step-by-step instructions on how to apply to become a council member and how to actively participate in the governance process.
Important Parameters
The important parameters to be aware of when voting using the Council module are as follows:
DesiredMembers
- Number of members to elect.
MotionDuration
- The time-out for council motions.
CandidacyBond
- How much should be locked up in order to submit one's candidacy.
TermDuration
- How long each seat is kept.
Parameters In The Networks
Darwinia | Crab | Pangolin Testnet | Pangoro Testnet | |
DesiredMembers | 7 | 7 | 7 | 7 |
MotionDuration | 7 days | 3 days | 10 mins | 10 mins |
CandidacyBond | 100 * MILLIUNIT | 100 * MILLIUNIT | 100 * MILLIUNIT | 100 * MILLIUNIT |
TermDuration | 1 day | 7 days | 10 mins | 10 mins |
Join The Council
- Submit Candidacy
It is recommended to announce your intention to run for the council before submitting your candidacy. This way, your supporters will be aware of when they can start voting for you. Additionally, you have the option to vote for yourself in case there are no other votes cast for your candidacy.
Go to Polkadot apps dashboard and navigate to the
Governance > Council
tab. Click the button on the right that says Submit Candidacy
To submit your candidacy for the council, you need to provide a small bond of tokens. If your candidacy is not successful, the bond will be forfeited. However, you can reclaim your bond by manually renouncing your candidacy before it is lost.
After making the transaction, you will notice that your account appears under the
Candidates
row. In this example, we are setting up 3 candidates for the tutorial.- Vote On Candidates
Next to the button to submit candidacy is another button titled
Vote
. You will click this button to make a vote for yourself (optional).The council uses Phragmén approval voting, which is also used in the validator elections. This means that you can choose up to 16 distinct candidates to vote for and your stake will equalize between them. For this guide, choose to approve your own candidacy by clicking on the switch next to your account and changing it to say
Aye
.- Winning
After the
TermDuration
, the top DesiredMembers
members will be selected as the Council. If you are one of the lucky ones to win a council election you will see your account move underneath the row Members
.Propose Council Motion
- Propose A Motion
Go to Polkadot apps dashboard and navigate to the
Governance > Council > Motions
tab. Click the button on the right that says Propose motion
.Specify the threshold and proposal action of your choice. In this tutorial, the
System -> remark
action is used as an example for the proposal action. To submit the transaction, click on the Propose
button.After making the transaction, you will see that your motion appears in the following format. This indicates that you have successfully proposed a council motion.
- Vote A Motion
During the
MotionDuration
, the proposed motion will be available for voting by all council members, including yourself. At the end of the MotionDuration
, the system will evaluate the vote results and determine whether to execute or abort the motion based on the outcome.Click the button
Vote
to cast a vote for the motion.Select the appropriate council member account, and if you agree with the proposal, click the
Vote Aye
button. Alternatively, if you disagree with the proposal, click the Vote Nay
button.Once successful, you will see your vote appear in the dropdown in the motion details.
Once all council members have cast their votes on the motion, if it is approved, click the
Close
button to initiate immediate execution of the motion. However, if the motion does not receive enough votes for approval, it will be closed without execution.It's executed immediately: