Assessing the status quo of IC governance & the proposal for committee neurons

Authors: @lara, @bjoernek

TL;DR

  • We assess two alternative voting processes (liquid democracy and committee neurons) against previously syndicated governance goals.
  • We conclude that the main problem hindering better decentralization is independent of the voting process.
  • We conclude that the main solution for better decentralization is that more parties contribute more actively to the IC. In a first stage, this could be achieved by vetting NNS proposals such as verifying replica and canister upgrades. Furthermore, it would be great if more parties contributed to the code base where feasible.
  • We propose next steps to get there.

Background and goal

Voting in the NNS follows the model of liquid democracy. This means that neurons have the ability to directly vote on all proposals (like in a direct democracy) but also have the option to delegate their voting power to other neurons (like in a representative democracy).

The proposal for committee neurons, which would replace liquid democracy for some proposal topics in favor of representative democracy, led to an interesting and broad discussion in the forum. In this post we want to

  • take a step back and assess the main differences between committee neurons and liquid democracy

  • Identify that the main barrier for better decentralization is the same for both options

  • Propose some possible next steps to address the actual problem

We suggest assessing the status quo and the proposal against previously syndicated goals for governance & voting enhancements. Via this step, we hope to distill the problem statement as efficiently as possible, before moving on to suggest possible solutions.

We, the DFINITY foundation, would like to seek feedback from the community on the assessment and the suggested next steps.

Assessment of the status quo & committee neurons

The NNS is a thriving DAO that has successfully upgraded the IC protocol, including replica and system canister upgrades, many times since the IC launch. One of the exciting properties of the IC is that the NNS makes it fully adaptive. The NNS can at any point decide to change the protocol, including the rules of the DAO itself. Therefore, what we see today is just a current version of the NNS that can be changed, experimented with, and continuously be improved.

Let us understand better which goals the status quo already achieves and whether committee neurons would be an improvement. To this end, let us first assess the status quo against the goals “Decentralized & active” and “Secure & available” which are most relevant for this discussion.

Decentralized & active:

  • (+) The locked ICP stake, and thus the actual voting power, is distributed over many independent entities. This has continuously been improved since genesis, for example DFINITY and ICA had around 40% actual voting power at genesis and only 22% of voting power today.
  • (+) There is an increasingly active community, mainly for proposals of topic governance, that discusses proposals on the forum and votes on them.
  • (-) For non-governance proposals, in particular replica and system canister upgrades, almost all neurons follow DFINITY.
  • (-) End-to-end technical know-how to contribute code and to assess replica upgrades are not yet available outside of DFINITY.

Secure & available:

  • (+) As a Swiss foundation DFINITY is legally bound to act in the best interests of the protocol. DFINITY inspects all proposals and is likely to identify and not adopt malicious upgrades to replica and system canisters. As DFINITY has a large effective voting power on such proposals (that is its own voting power and the voting power of followers), the current setup ensures that malicious proposals are not adopted.
  • (+) Availability of governance has been great! With one small exception, there was no down time since launch.
  • (-) Robustness and security would be greater if several independent entities were involved in the code development and review process.

Next, let’s discuss if committee neurons would help improve these goals.

Decentralized & active:

  • Committees of experts gate or remove the ability for individuals to make decisions for themselves. Also, they reduce the incentives to decentralize knowledge sharing beyond the committees, which over time cements power into a small group of experts.
    Therefore, we do not agree that committees are improving the decentralization goal.
  • Solely introducing committee neurons would not improve the goal that more parties have the technical know-how to contribute code and to assess non-governance proposals.

Secure & available:

  • Solely introducing committee neurons would not improve this goal as, without further measures, the committee neurons would not be able to verify critical proposals.

The core problem & proposed solution

We conclude from the above assessment that

  • The main barrier for improving decentralization and robustness is that contributing to the code base and verifying all proposals requires a lot of effort and, in many cases, technical knowledge. This is especially true for replica and system canister upgrades. For example, verifying all upgrades to a system canister, say the II canister, requires looking at the source code, comparing the source code to the code at the time of the last upgrade, re-building the source code, and verifying that the re-build wasm corresponds to the wasm in the proposal.
  • This is a problem that is orthogonal to the comparison of committee neurons to liquid democracy. In both forms of voting, improvements are needed so that the voters can make well-informed decisions.
  • Fostering decentralization by enabling more parties to contribute more actively to the IC, e.g. by verifying replica upgrades, seems also aligned with a key takeaway for Jordan, the author of the committee neuron proposal, who wrote “perhaps the next incremental step towards decentralization is just figuring out how to get more specialized neurons with sufficient followers to vote on various proposal topics, especially the replica code”.

Next steps

Ensuring that more parties can contribute more actively to the IC, independently from DFINITY, is an endeavor that should be initiated by the community. Nevertheless, DFINITY would like to discuss how we can support the community to plan and realize this and to be more involved in the development of new features.

  • What kind of support, training & organizational structure are required?
  • What would be a good approach for neurons to get to a state where they can verify many proposals? For example, it has been proposed that they could first start in one, isolated place, e.g., verifying all upgrades to a system canister such as Internet Identity. How could DFINITY help define what would be a good starting point?
  • How can the community be involved more actively in contributing to more parts of the IC?
  • What else can we do to support?

We can of course also review what kind of changes to the NNS make sense to support this, for example changes to the tokenomics to create incentives for the operation of such neurons.

We hope that this post & provided context was useful and we are happy to hear your feedback!

6 Likes

Thank you for taking the time to write this up. I don’t necessarily disagree with the conclusion as to next steps, but I think the committee neuron idea has been slightly mischaracterized.

I’m not sure committee neurons and liquid democracy are mutually exclusive. In the committee neuron thread and elsewhere the idea of using liquid democracy to elect committee members has come up. Essentially you would follow neurons for specific committees, and with enough followers a neuron would be allowed membership into the committee. The mechanism can be played with, but core to committee neurons for me is still the ability for the community to always be able to control the makeup of the committees. Also, I think the community at large would still be able to override committees under certain circumstances.

Another point that is not addressed in this thread is the deterministic voting properties that committee neurons would provide. What’s missing in our simple liquid democracy is assurance that certain properties hold for each proposal that is passed. For example, all we know is that a majority of voting power voted yes for replica code updates. But we have no guarantees on how many independent entities were involved in that process.

I think it may be important to bake rules like this into the proposal voting process, allowing us to ensure certain properties hold. For example, for replica code, one neuron can only ever contribute x percent to the vote, ensuring a higher level of decentralization.

There are various ways to go about these ideas, I feel the original post just left out a few material aspects of committee neurons.

1 Like

Thank you for your reply @lastmjs and giving further context!

It seems that we have a common view on the actions listed under next steps and in addition we should continue the discussion on some of the nuances you mentioned. This might be another candidate for the agenda of the governance working group.