Proposal to incentivize the diversification of followees in the NNS

  1. I’d say all topics. We do eventually want them all decentralized. Having 10 independent entities confirming the XDR to cycle ratio makes it very hard to hack.

  2. I’d apply it to all. If it applies just to governance then it eventually balances out the spam incentivization in the same way as Periodic Confirmation of Neurons. If everyone wants the full reward they need to edit their neurons asap and thus there is no more advantage for the spam.

  3. Until we have qualified neurons everyone is on the same playing field…or they are not because some ingenious person creates an (independent) bot to vote and shares it with his friends. Eventually, word leaks or code leaks and we have 20 or so bots to choose from. In meantime someone could just ask people to pay them to vote for them. Or follow the 17 named ICPMN neurons for all topics. If they are following ICA/DFINITY then they get a vote, but action can be taken by those voters to divert their vote if required. It increases the decentralization factor even if people just go through the motions. In fact, since manual voting gets you the same votes as everyone else it would be advantageous to run your own bot, or subscribe to a bot with a hotkey. I’ll allow that maybe it makes sense to start this with governance and scale-out from there.

  4. It is not hard, but it adds complexity to the code. Usability complexity can be masked by good interfaces. Code complexity can make the system difficult to change in the future. This proposal again is a two-line fix where I can tell you what line needs to be added( add a member of ballots called manual and set it at ic/governance.rs at 79bbd3177f6532037eb29d62b3e52a364a8103ee · dfinity/ic · GitHub and change the voting power by the ratio after ic/governance.rs at 79bbd3177f6532037eb29d62b3e52a364a8103ee · dfinity/ic · GitHub). I’ll grant that adding a property to each ballot may be a bridge too far from a data perspective as the reward function is very heavy already. Governance is difficult. Creating governance function that doesn’t blow the cycle limit is harder :joy:

1 Like