You are viewing a single comment's thread from:

RE: My position on the soft fork - I am not running the changes on my witness node

in #witness-update4 years ago (edited)

I understand this idea has been going around but people are very confused about its effectiveness. @timcliff pointed out one simple scenario how it would fail but there are many others (the details of which vary according ot the specific voting rules) once you carefully think it through, pretty much no matter how you set up the voting rules. There is no plausible set of voting rules that is going to prevent a very dominant majority stake (current about 150% as much as all other actively voting stake put together) from effectively "being in charge". That ought to be pretty obvious from the very concept of "voting".

Furthermore any such change would require a hard fork, which means all nodes and exchanges updating. That is obviously very costly and disruptive, and generally (for good reason) those have been limited in frequency and number.

That isn't to say that some changes to the voting rules wouldn't be beneficial in some ways and perhaps those should be included in some future hard fork, but it isn't a solution to this issue.

Sort:  

That isn't to say that some changes to the voting rules wouldn't be beneficial in some ways and perhaps those should be included in some future hard fork...

This really is something that we should be working towards as the platform and community matures and the decentralised governance of STEEM evolves long term.

I'd actually be most in favor of a 1 SP=1 vote system wherein 100 million SP of stake would have to spread it across 30 witness votes, not get to vote 100 million on all 30, but limiting witness votes to say 5, accomplishes much the same thing and may be a simpler and more elegant solution to code. It does not prevent a massive stake from voting in witnesses, but it makes it extremely difficult for them to control consensus.

100 million SP with 5 witness votes could divvy it up to the point of optimizing 25 million SP of support on 20 witnesses, but that level still leaves room for actual community elected witnesses to remain in the top 20 and essentially give Steem classic seats at the table and keep any malicious hard forks from achieving consensus.

Of course 1 SP = 1 vote is the most extreme form of decentralizing the chain and honestly makes the most sense. In that kind of scenario, 100 million SP spread across 20 witnesses is equal to only 5 million SP of support per witness. Huge stake can control a number of witness seats, but certainly not all of them as is currently the case. SP being multiplied by a factor of 30 for witness voting is the flaw that needs addressed. If Tron wants to put their thumb on the scale and buy seats at the witness table, I think we could actually allow that provided they can't buy consensus, which the current system is allowing.

This assumes NO support from any other stake, which is unlikely and unrealistic, especially after any degree of marketing, campaigning, offering incentives, etc. In reality, a dominant stake would still be to override, say an 80-20 split of the rest of voters against what they want to do, just not 100%. That's a little better from that perspective and in that particular scenario, but nothing close to a panacea, and this also significantly weakens the chain because any malicious minority attacker can still push in a minority of witnesses who can cause harm in various ways, instead of being kept out by broad stake consensus as the current rules are intended to do.

I think people are being a little selective in thinking here. At the moment, "we" are in the minority therefore giving a minority more influence is "good" . But there are also plenty of situations when "we" won't be in the minority and giving a minority more influence would be bad. Once you put rules into place you can't pick and choose how they will be used.

Also, I think it might make sense to break out the policy voting and block producer voting roles (as I believe was the case in Bitshares, and was dropped from Steem without much explanation other than "simplfiication"). In the case of voting on forks and policy, I agree there benefit in not "amplifying" a majority and giving smaller voting blocs a seat at the table (though this still allows a malicious minority to block policy decisions i.e. hard forks which may in fact be beneficial), but in the case of block production, this really isn't true. Minority influence on block production is pretty much only bad. It can't create a longest chain and can only cause trouble (including outright failure).

I realize that ~1/3 of stake is going to have immense influence on the platform, but in fact it does not create a supermajority. Further I note that equitable distribution of influence over governance is appropriate, particularly to an investor that purchased their stake.

I don't see any other lawful way to potentially secure the decentralization of the blockchain, than the proposal I have linked in my reply to the OP.

Please prove me wrong.

It's not 1/3, it is about 150% of the currently active voting stake, meaning 71% of all actively voting stake, were it to vote.

Perhaps some more stake might vote but there will always be some held by dormant accounts/passive investors who literally aren't paying attention or aware of any governance decisions, by dead people, by accounts with lost keys, by custodians with a policy of not voting, etc.

Claiming that 29% having much of a say is a push for 'decentralization' is a stretch IMO.

The core problem is simply that the stake is too centralized, was too centralized to begin with, and people were led to accept this situation by a bunch of empty promises, misleading and outright false statements, and a misplaced sense of trust in the founder (even, somewhat inexplicably, after the other founder demonstrated one reason why one should not trust in a founder).

That being said, I've noted elsewhere that I think splitting block production and governance (as was the case in Bitshares before this was combined in Steem with no explanation beyond "simplification") might be best, and even your exact proposal might be good, as long as people recognize it for the tradeoff that it is.

I did indeed fail to reckon inactive stake, or stake lost to the vicissitudes of key management. I agree with all of your comment I understand.

Thanks!