As we continue with live testing in the swapping pre-release and enjoy seeing things going very smoothly so far, I’ve had a bit of time and space to set up a basic but important system for involving the community in governance.
There is an existing token weighted Governance system described in the docs and the whitepaper, where stakeholders can vote in a new Governance Council if they feel that the existing steward isn’t serving the interests of the protocol. However, with less routine actions, we haven’t yet devised a system of discussing proposals around topics in which the wider community of stakeholders should be able to weigh in and put forward opinions, proposals, and feedback.
We’re pleased to see that off the back of this ‘Optimistic Governance’ design, Thunderhead’s stFLIP Governance System has partially inspired a now formalised ERC20-based governance system in Aragon. We are big believers in this Optimistic Dual Key Governance. We are generally in favour of off-chain governance to handle the vast majority of topics, given that it is practically necessary in almost all cases anyway (developing code, signing releases, distributing binaries/source code, communicating with operators, etc).
In general, we think it is totally reasonable to unilaterally execute actions that are directly related to improving the functionality of the protocol, fixing any issues, and generally moving faster to execute on the stated protocol objectives and goals as defined in the whitepaper and docs, so long as these actions are undertaken in good faith. If we (Chainflip Labs) give the stakeholders a reason to doubt our decisions or overstep our role, then we stand to lose our position in the protocol, and that is a powerful deterrent to keep us in line.
That said, some decisions that we should not make unilaterally, and instead, give the wider stakeholders a say in what should be done surrounding topics of community governance. This is again a component of Optimistic Governance that shouldn’t be overlooked.
To start with, we’ve created the #community-proposals forum in the Chainflip Community Discord. It’s a low-friction way of getting a community governance system in place which will allow stakeholders to participate.
What Issues Are Considered
Community Proposals are designed to cover non-core issues that may not be appropriate for Chainflip Labs to make decisions on without a broader stakeholder consensus in place. This may include issues such as:
- Recovering lost funds of users;
- Significantly modifying economic parameters;
- Delisting or removing certain chains or features, and;
- Other topics that don’t directly relate to the core functionality of the protocol.
General protocol upgrades, design additions, and other core features will remain under the stewardship of Chainflip Labs unless the community decides we are not the appropriate stewards for the protocol using the existing governance features.
Who Can Participate
To limit participation to those with a genuine interest in the protocol, we’ll limit posting permissions to Mainnet Operators, Advanced Members, Market Makers, Associates, and members of the Community Council. In essence, that means major token holders and service providers as well as long-time community members. However, all discussions will remain publicly visible and other community members are welcome to petition to acquire one of these roles to join the discussion.
This system is of course not perfect, but creating larger governance systems or new platforms that will almost certainly receive less participation doesn’t seem like a big value add for now. Token weighted voting is also difficult given the multichain nature of the protocol. Dedicated governance systems for this kind of thing are almost completely inactive in other protocols and receive almost no participation anyway.
This basic system is easy to implement and demands little from stakeholders to achieve the desired effect. Chainflip is a novel protocol and we may implement changes and improvements to this system in the future as necessary.
Who Can Create Proposals
To begin with, Chainflip Labs will accept petitions to create proposals and assess viability before beginning the discussion. There’s no point soliciting feedback for a proposal that may be technically impossible or impractical. This can be done directly through Simon or other members of the team.
Once a petition has been initially considered, we will open a new post in the forum and allow the Petitioner to make their case. It may be Labs itself, or someone else.
How Proposals Are Decided
The proposal will remain open until a sufficient level of discussion has taken place. We will leave it open as long as the discourse runs. If no significant opposition is recognised, the proposal will be approved and Chainflip Labs will execute the requisite actions. This works in line with the optimistic governance system more generally in place in the ecosystem.
If there is no clear consensus on approving the proposal due to mixed views, we will begin the process of soliciting specific feedback from stakeholders to gather a clearer understanding of the overall picture. If the resulting consensus is predicated on changes to the proposal, we will ensure the Petitioner agrees with those changes before executing the modified proposal.
If the overall opposition is recognised and no majority of stakeholders, based on their token holdings, come forward in favour of the proposal, we will simply close the proposal, and no actions will be taken.
We will happily arbitrate the overall weighting of opinions based on stake and contributions to the protocol. Token-weighted voting is an imperfect system in and of itself, and we will of course take this into consideration when making these arbitrations.
If you have a proposal you’d like to put forward, get in touch with a team member to kick things off! Otherwise, sit tight and wait for a proposal to show up on the Discord.