Committee Neurons

Maybe I’m suggesting committee neurons are one solution to power concentration and limited named neurons.

There are a few dangerous aspects of this concept (if I’m understanding it correctly):

  1. If people aren’t experts themselves, they’ll do a poor job picking experts and be easily swayed by people who “act” like experts.
  2. If big neurons can boost rewards by increasing followers, then that’ll inherently lead to the consolidation of power, not the decentralization of it.
2 Likes

I do think committee neurons is worth exploring, but perhaps the complexity could be too much too soon for the NNS.

There are other options though, I’m going to copy below a comment I recently posted on the Daowabunga channel of the Psychedelic Discord server (this is another proposal I need to write up soon):


Nima & I chatted about this on the live DSCR thread , but I just wanted to bring it up again. I think Quadratic Voting would be a great proposal for the NNS, and I would love to see this come from the Psychedelic Neuron.

Nima said Daowabunga’s v2 governance canister’s will likely support Quadratic Voting, which is awesome!

Even if the NNS was much more decentralized, there will always be a threat of very rich and powerful entities (think BlackRock) buying influence as long as 1-on-1 voting is in place.

It’s tricky, but governance power should be liquid yet not so liquid such that the outcome of decisions can be outright purchased (sadly in the USA it’s both illiquid and up for sale). Sure, the ICP supply can be mostly locked into Neurons, but ultimately this would only slow down the quiet and subtle accumulation of a large bad actor.

Quadratic Voting would reduce DFINITY’s influence without destroying their revenue stream. I assume they ultimately plan to cover the cost of operations using the maturity of their neurons. Having them airdrop their ICP and/or neurons would introduce a wide range of issues, and I see no problem with the inventors of the protocol having a good long term strategy for funding R&D operations. If we can find a way for them to keep their maturity without being too powerful or hurting the ecosystem, then that would be ideal.

In fact, I actually think it may be smart to have the neuron maturity rewards slightly decrease to perhaps 10%-25% of the current rate for small neurons if we enable Quadratic Voting. This means that as your neuron stake increases, your additional voting power decreases exponentially while your maturity reward rate slightly improves.

This would have a few positive implications:


  • If you vote manually, you’ll earn a slightly smaller amount of maturity for that particular vote, but your vote will be given significantly more influence in determining the outcome. This means you must choose between a small loss of profit vs a principle which may matter a great deal to you, and a wave of passionate manual votes by small neurons could have a chance against of handful of large neurons followed by all the passive voters.

  • The power of Quadratic Voting could easily be circumvented by a large and powerful bad actor if they simply created thousands of small neurons which followed the votes of their primary neuron. By forcing them to choose between maximizing profit vs maximizing influence, we should gain a bit more resilience for the protocol. While nothing can be made impossible, we should make purchasing significant control of the NNS as infeasible as possible (ideally, exponentially less feasible the harder you try).


I’d be happy to publish a more detailed write-up of this concept if you think it’s something Psychedelic might want to support. Just let me know!

A few other thoughts:

  • It could be smart to also introduce a small fee for creating new neurons (or splitting one). This would also hurt bad actor efforts to get around quadratic voting by creating lots of small neurons rather than a single large one.

  • There should be a “Defer” or “More Info Needed” voting option on the NNS. It wouldn’t immediately kill the proposal like a “No” vote, but instead holds it open longer and allows edits until the “Defer” voters can feel good picking either “Yes” or “No”. Incentivizing voting activity is a good idea, but on it’s own it introduces a risk of careless voting just to harvest rewards. There should be something to help prevent this, since default “No” or “Yes” from the bulk of careless voters would both lead to bad outcomes. In other words, people shouldn’t be penalized for not understanding a poorly written proposal, or forced into voting out of ignorance.

9 Likes

Can we skip a few steps and create a House of Representatives style committee and have liquid democracy elect those qualified people to vote? Remove voting rights from the average person while simultaneously making it easier for people to stake.

Unfortunately, I don’t think Quadratic voting is possible within the way the NNS is currently drawn up.

This would just result in large neurons splitting into many small neurons in order to regain voting power. Charging a fee to get around this would make it difficult for those who want to split and dissolve part of their neuron. Currently the fee that’s already charged for splitting a neuron is mostly just to cover the computational cost. If it’s an additional flat fee being charged, this would just act as a regressive tax.

If you have other ideas on how to combat this in the context of the NNS I’m all ears.

1 Like

Quadratic voting ideas are indeed interesting, and they’ve been explored to some extent in the forums already. If you’d like to discuss it in more detail perhaps let’s create a new thread dedicated to that, link it here, and keep this one focused on committee neurons.

5 Likes

These are all very valuable ideas, I think we have to move towards something like quadratic voting to lessen Dfinity’s hold on the NNS. A large fee to split neurons would be sufficient disincentive against whales gaming the system. But of course, @justmythoughts objection is valid, it would be regressive to charge a large amount for people wishing to split to dissolve a portion of a neuron.
I think there is a way around it, though it adds complexity to the NNS which is already pretty complicated. This is the solution: if you split a neuron, the split part begins dissolving automatically for no charge. If you want to split a neuron without dissolving, you then get charged a fee, either as one payment upfront or constant rent until you dissolve.
I agree this deserves a separate thread, although there are some overlaps with the committee neuron idea.

I think you may be reading more than what was said. We need experts to get involved in governance and they need to be incentivized. We shouldn’t assume these experts will get rewarded proportional to the voting power that follows them. The mechanism of incentives was not part of the discussion.

This is a fascinating idea, and reminds me of the famous P != NP problem in computer science. Easy to verify, but difficult to solve.

2 Likes

I think this proposal for committee neurons is interesting and relatively simple, which is great.

I’m not sure I totally buy the problem that it’s trying to solve though.

It’s true that nobody outside of DFINITY is seriously checking the replica code changes, but has that been a problem yet? There haven’t been any major security vulnerabilities or hacks. (Actually, DFINITY has hired a few third-party auditors to review the code.)

AFAICT, the biggest problem with governance seems to a disagreement over the roadmap and who implements it. The community votes for stuff they expect DFINITY to implement, and they also don’t want DFINITY to implement some other stuff.

I’m not sure a committee solves either of those problems. Especially with respect to the former, what we need is more people willing to read and write IC code. That way, the community can implement its own changes and put them up for a vote in a proposal. I don’t know how we can encourage (or even incentivize) this, however.

4 Likes

I honestly still have concerns with even the general concept of designing any form of extra incentive for Neurons run by “experts”.

Power and influence are enough incentive on their own, and without help power/influence tends to naturally snowball and consolidate.

There are plenty of ways experts can monetize their influence external from the NNS (podcasts, affiliate links, consulting services, bribes, etc), the protocol should not need to provide any of it’s own.

7 Likes

Maybe at a basic level we need a process to test the changes and not necessarily make the changes. Adding any code requires specific set of skills and time. I would just like to know what the process of making the changes and deploying it to the IC even looks like.

1 Like

One reason for providing incentives is precisely so experts are less tempted to accept bribes. Not saying it won’t happen anyway, greed can be infinite, but not paying ensures one of two outcomes: 1) Experts will give up saying it’s not worth the effort; and 2) They will seek external incentives not aligned with the role they were voted in to play.

2 Likes

It’s generally unorganized and ineffective in various ways. I think this stems from a few reasons, including that for most material aspects (like updates to the actual protocol itself), it is controlled by one party (DFINITY) that cannot actually be controlled directly by the NNS

Thank goodness that Definity have had control of this project that come about with a clear vision from Dominic. The experience I have experience from the neurons owners has not been a great experience in my opinion as I feel we could have had a class action on our hands from the only ones that want to speak up for their own selfish purpose that was voted down as I feel most didn’t agree.

The Definity team in my opinion have done a great job and doing what I expect and that is to expand the network and complete the shortfall of the top Crypto. Also if it wasn’t for the Definity and teams the NNS would be reward less as there, in my opinion, has been very little for neuron owners and their recommendation other than the span, Thanks’ Dog Boy for the extra rewards.

To be honest even if the neuron owners had great ideas and recommended changes, as I believe it, there was no one to make those changes anyway.

effectiveness of smaller groups of expert leaders, while providing the means to prevent those leaders from abusing their positions of influence and power.

Lol, sorry, lol

Very excellent feedback, I especially lean towards your line of thinking on the rewards.

Surprise, surprise, I will not be signing up for any of this.

Power Consolidation: Followee neurons are amassing too much voting power due to laziness of voters and no economic incentive to re-follow once a follow relationship is in place.

Those who claim they do work are really following as there is nothing to vote on except Definity and the teams, sorry I forgot the spam. Tell me about the work you did on voting @dfisher that following didn’t?

1 Like

Thanks for sharing this proposal @lastmjs! While I think I understand your intent, I think your proposal may benefit from an explicit “problem statement”, explaining precisely what you aim to improve.

Roadmap Committee Neuron
The roadmap c-neuron votes on the direction of the protocol. It would set the vision for all other c-neurons to follow. This c-neuron would be a check on all other c-neurons, as if the other c-neurons do not follow the roadmap c-neuron, then the NNS could work to rearrange the memberships of those c-neurons. And as stated above, this c-neuron could be as large or small and as diverse as they NNS community desires.

Could you clarify what the main difference is between how the system currently works for the governance topic vs your proposal? It seems somewhat similar to me actually: Today NNS voters can choose to delegate their vote by following, and in your proposal they can “delegate” the vote by voting certain members into the roadmap committee.

Replica Committee Neuron
Considering that the replica code is the most vital and security-sensitive part of the entire IC ecosystem, the greatest care should be taken to ensure that updates to its code are safe and secure. The replica c-neuron members would be tasked with reviewing all code changes, and also not allowing anything into the replica that was not in line with the roadmap set by the roadmap c-neuron.
Especially at this time, almost little else matters in on-chain governance than the replica’s code. It’s unilaterally controlled by DFINITY at this point in time. Having a c-neuron control the code would even provide a check on DFINITY, as though they could work on whatever they wanted, the replica c-neuron should not allow changes through that are not in line with the proposals passed by the roadmap c-neuron.

I think this is a very good point. While I think that DFINITY does a good job reviewing the technical side of things, I do also think it would be healthy to have some additional “checks”, especially as you mentioned, checking that all significant changes are in line with what the community wants, and if not, vote to reject saying “we think feature X should be a separate motion proposal first”. I think this could be achieved quite easily already: Some neurons today (eg ICPMN and ICDevs) indicate that they vote manually on all proposals in topic governance. We could have neurons similarly indicate they will vote on topic “elect replica version” manually, and invite followers on that topic. This would only require replica version proposals to be their own topic (which I think would be a reasonable thing to do anyway, and should be almost no work). I’m involved in the ICPMN neuron and I really hope that in the future this neuron (and others!) would independently vote on multiple topics, instead of just governance.

7 Likes

I suppose the main difference would be commitee members would be compensated way more than they currently are.

3 Likes

Compensating committee members doesn’t require changing the system of how we reach consensus. That can happen by changing tokenomics or by funding experts from a treasury dedicated for that purpose.

@Manu
I think @lastmjs already described the main difference…

Also, by the way, I think the desired outcome of decentralization can be achieved without changes to consensus of our current system. We need to incentivize people and organizations to become public neurons and give people reasons to follow them.

Committee = Neuron
Committee Member = Followee

A c-neuron (e.g. Replica Committee Neuron) just needs to be a named neuron in the NNS dApp that has experts configured as Followees for the specific proposal types that update the replica. These experts need to be incentivized to fulfill this job reliably. There can be many experts and many of these specialized neurons if people are motivated to provide this service to the IC community.

Once they exist, the proposal type that updates the replica can be removed from the All Topics Except Governance and then additional proposal weight needs to be given to that proposal type. A fraction of the voting body will naturally migrate to following this new specialized public neuron in order to maximize their own voting rewards. DFINITY will undoubtedly not follow one of these public neurons because they would follow their own technical experts, so no matter what they would retain their 22% of total voting power.

Better incentives will result in more experts and more public neurons. More public neurons results in a higher degree of decentralization. Decentralization will require incentives in my opinion. I just don’t think volunteerism or power and influence are strong enough incentives for people to fill these expert roles. This is evidenced by how few public neurons exist for the Governance topic.

4 Likes

Hello!

I would suggest adding another coefficient to Voting Power. More precisely, a couple. Developer Rank/The rank of the community.
The Rank of the Developer can grow depending on the activity on the github, and the Rank of the Community on the number of manual votes.
In each proposal, the initiator of the proposal himself sets the weight of the voice for developers and the community.
For example, the introduction of a new token standard worries developers more than community. And vice versa. The percentage for staking is more concerned with the community than the developer.
This would help to avoid such misunderstandings in the voting.

1 Like

Hello,

To begin with, I would like to say that it is extraordinary what dFinity has put in place. We read a proposal from an active but not founding member that questions the governance of ICP. It’s a bit like AWS customers giving instructions to Jeff Bezos.

Honestly, I think it’s awesome.

Regarding the proposal:
It mentions that there are a number of problems, now even if we can agree on that, I think we should start by listing them, and then show how this proposal could solve them or improve the situation.
I’m not convinced that moving to a representative model will solve the “problems” but I think it will create more:

  • Transparency - what are the interests of the experts or members
  • Election of these in a global digital organization. With a forum or github ? …
  • Control organs, all democratic systems have checks and balances: justice, press, popular protest, etc…

I am convinced that, the proposal is with a very good intention, but I don’t believe that it will solve anything.

1 Like

I’m not sure that I’m all caught up on the feedback, but here are some of my initial thoughts:

  1. I am very COLD in the idea of compensating anyone for their participation out of a shared pool because it creates attack vectors for spam. I’ve proposed shifting to voter based pools here and I still think it is a good idea because it allows us to put weights back in and encourage decentralization while funding a dev or NNS treasury with the forfeited inflation(or burn it) Proposal to covert from system based reward to voter based reward; to implement an accept quorum mechanism; and to return the reject cost to 1 ICP . I don’t want career politicians in the NNS voting to perpetuate the system. If you want to incentivize them, give them locked neurons and the market will take care of the in incentives.(ICDevs model)…if we want to continue to exist then we need to make ICP fly)

  2. I don’t see why we don’t just use the current system. How would this be different than adding new topics that you could delegate your votes to? Topic is an int32 which gives us the ability to have 2B of them. We could add an extensible proposal variant and have an NNS function that creates/retires them as necessary. We already have weights so we can incentivize voters to select a delegate and when “change your vote” is implemented we have a built in citizen veto.

  3. I think this is a UI problem. Make new topics/creating named neurons/selecting and advertising delegates easy and I think the system will self assemble.

More thoughts later. Great topic and direction Jordan….let’s find an mvp with the parts already laying around.

9 Likes