HIP-27 - Quadratic voting power

Yes if we all go to vote we could nearly reach 53%

June 2021
Top 17 of 112 Validator (15.17%) control 50.6% stake weight
December 2021
Top 15 of 161 Validator (9.31%) control 51.6% stake weight
Februrar, 19 2022
Top 11 of 162 Validator (6.79%) control 50.33% stake weight

First to clarify again on request, this discussion is initiated by DAO members Stakeridoo and Coinchowder.
Any change to the voting mechanism requires a vote. At the same time, it is important to mention that we are in the process of reviewing the charter and should simply start a discussion based on previous experience.

A custom token like a VDAO token can be added or removed at any time. this is no problem @Pistake

I really like the idea of @Coinchowder like having a quadtric system. Since this was discussed before HIP-12: Vote equality - #45 by Sam

@TrickLuhDaKidz Our contact form asks for some kind of way to contact the validator. But it’s not a requirement. The idea is just as you mentioned to have the data in case of emergency and to be able to contact active validators easier. But if we now say only those could vote who also actively participate and fill in the form we would have a simpler solution for that proposal: HIP-21: Governance Flag Proposals

We would like to organize an AMA on this topic so that as many people as possible can give their input to find a solution together.

1 Like

What other options for the community going forward have been discussed?

No, because we are permissionless… Of course, it benefits the validator to be contactable but it is in no way mandatory.

Seems like something that could be voted on and implemented if passed. Validators would still be able to be validators without any communication to their delegators if that’s what they choose

Given how significant this topic is, we really encourage all community members to jump in and brainstorm ideas on how we should come out of this discussion with a better governance system (if any).

Just to re-iterate the point @ben2k_Stakeridoo made, this discussion is purely initiated by us two, who happen to be VDAO governors. Please do not consider this an official VDAO post or that it has any biased suggestions. It’s an open topic for discussion.

There’s a bit of Catch 22 going on right now. Our governance is bound by the Charter and it is becoming a challenge to pass votes if there are large nodes who have no interest in participating in governance. (kucoin/binance etc). However, in order to update the charter, we need to use the current voting system to pass any changes. I cannot stress how important it is that, whatever comes out of this discussion re: voting, when the time to vote comes, it is critical that we get high participation rates if we are to have a chance at breaking free from the current bounds.

Re: Contact details, it’s always great to have this information if the validator opts to share it. However, I can’t imagine it being a mandatory requirement.

4 Likes

Any options can be discussed and voted on! Nothing to stop that… Whatever the community agress on through voting is what will be :slight_smile:

3 Likes

The current staking system works fine when validators participate. Perhaps the discussion should be based around how we can encourage more voting participation. The governance indicator is one step, but big exchanges wont care about that all, however, if we could mark them inactive or remove their stake weight from the next vote if they dont participate, at least that way we can remove their stake from the equation.

5 Likes

I agree and think the governance flag as proposed by @slugo_slugom_crypto in hip22 or the request token by @ben2k_Stakeridoo are both good options.

I do fear however that over time, we could be in a position whereby not a large % participate and we could end up passing proposals with like 15% or something. This would not really reflect the community and could be viewed as centralised.

I guess if we end up going down that route, a min participation % could be appropriate.

4 Likes

So last year the first HIP 66% was not achieved and we lowered to 51% quorom. In between with Term 2 we had 69% quorom. That what would now only be 54%.
And with the new Snapshot voting with Chrome extension or CLI comes to an end. Not sure about reaching 51% again.
And when you think about that flag, imagine only 50% get the flag and from them only 80% go to vote we have effective 40%.

1 Like

I disagree that the system works fine. The current system favors not what the delegators want (which is what the system was designed for, validators to represent delegators). The current system favors what validators want.

Delegators delegate and don’t engage or even realize their vote is through a validator. The system favors the opinion of a select view against the majority.

Personally I came to crypto because of the values of decentralization and the decision making in the power of the community. If a select few control the strings how is Harmony any different from the international banking system which tells us, “Daddy and Mommy know best”.

8 Likes

It’s not clear what you’re proposing since you don’t offer a solution. If the solution is 1 validator equals 1 vote, that totally ignores the delegator’s representation and that’s before you even consider how easy it is to manipulate that vote (i.e. 1 million ONE could equal 100 votes if someone creates 100 validators at 10K ONE per validator). If your solution is where delegators vote with their individual stake, it’s hard to say they’ll have the network’s best interest in mind since they likely won’t be as well-versed as validators in how exactly the network functions.

Keeping it based on validator stake weight allows delegators the ultimate power of choice because they can undelegate from a validator they disagree with and redelegate to a validator with whom their views more closely align. If they’re unsure of what the vote means, they can trust their validator’s judgment to vote in the delegator’s and network’s best interest.

2 Likes

Currently we couldn’t reach quorum for hip 25 with all the promotion that was done. Removing the validators from the network that will not vote will be achieved in what way? Will the core team just simply remove their wallet from counting towards stake weight? (seems like a terrible option as this would show that validators hold no power). OR would we have to vote out validators’ stake by a stake weight snapshot?
I think the idea of having VDAO tokens on a logarithmic curve would be a good as we would have validators that want to participate with the VDAO token distributed (ideally). Currently we are still risking not being able to pass hips and we cannot have that. Unless there’s some way we can get every voting validator to vote in snapshots, I am all ears.

2 Likes

Any change to the current voting structure will require a HIP based on stake weight to pass so we might as well address the elephant in the room (Binance) while we’re at it and I think we’ll have fair and balanced votes just like before they added 900 million in stake.

2 Likes

I am voicing my opinion against the current system. I don’t propose a solution because there are not easy answers but I believe that the current system is failing to meet the goals it was designed for.

And as our benevolent overlords Binance demonstrated their ability to stop governance even if inadvertently. I think it is a mistake for large community validator to assume that they will continue to be the large community validators. Binance, Coinbase, Kucoin and other groups with large purse strings under the current system can steer Harmony to their interests. How does a delegator’s interest get represented then?

We assume that Binance will continue to honor their unwritten rule of not voting. I say unwritten because I havent read an official public statement on this. The same goes for Kucoin and maybe one day Coinbase? I value decentralization and not a select few acting as central bankers.

I think it is short sighted to believe that the every day delegators of Harmony can control the blockchain in a decentralized fashion under the current system. They don’t control a considerable amount of the current circulating supply of $ONE to do so.

4 Likes

What coinchowder wrote above addresses both issues pretty nicely, its still stake-weight, but also enables the DAO to not be controlled by a few.

3 Likes

Thank you for sharing your feedback!

I think both @ValidatorONE and @HankTheCrank raise really valid and practical concerns and our goal here is to find that middle ground where we can all reach a consensus.

So-called ‘larger’ validators often get a bad rap (I wrote ‘bad wrap’ at first but google told me that a bad wrap is an unappetizing sandwich made of fillings wrapped in a tortilla… but I digress). I don’t think we should be using this as an opportunity to completely nullify the efforts of those who have worked hard to build trust and their reputation within the community. I don’t believe we should be taking away the huge amount of trust (in the form of $ONE delegations) and belittling their vote.

At the same time, @HankTheCrank is not wrong in saying that the current system does not work. Although it may seem like it’s still working (even with the 900million staked with Binance), they aren’t bound by anything to enforce announcements when they’ve changed their minds and wish to participate. And while today, we can still sneak a vote past them via flawless participation, what happens if they pull another 100, 200, or 500million $ONE out of their gluteus maximus. Then we won’t even be able to dig ourselves out as we’re unable to amend the charter.

With the existing system, we often talk about how Binance doesn’t participate in governance. I would argue that it would be equally as scary when the day comes when they want to participate. I mean, all I can picture is some intern at Binance singing “I got da powah!”

That’s why I believe we could brainstorm or dive deeper into this ‘hybrid model’, aptly named by @TrickLuhDaKidz . Stake weight can remain, but a linear scale simply does not work given the huge variance between the top and the bottom bounds. We need to tweak it so that we raise the volume of the little voices, and set a maximum volume of the larger voices so we won’t go deaf.

So to keep the discussion going and our creative juices flowing, let’s ask ourselves a few questions:

1. In your mind, what is the perfect way to define the quorum?

Quorum
definition: the minimum number of members of an assembly or society that must be present at any of its meetings to make the proceedings of that meeting valid.)

I personally think that the staked amount in a validator should only be reflected in their vote. The quorum should be independent, taking the count of those eligible to vote. In other words, if there are 100 elected validators, then we may require the participation of at least 67 in order to make the vote valid.

2. Ok, but what about unelected validators?

Well… unfortunately, unelected validator votes will be a lot less significant in terms of voting. This is a must because we also need to consider the potential abuse of validators spinning up many unelected validator nodes to try and swing a vote. I envision unelected validators being able to vote, but their weight in the quorum calculation should be a fraction of what an elected validator should be. I don’t believe this is unfair given that elected validators are signing transactions on the blockchain, and could also serve as a motivator for more validators to reach elected status.

For argument’s sake, 25 unelected validators participating in voting would equate to a single elected validator’s quorum weight.

Example:
66 elected validators and 24 unelected validators voting will be considered as the quorum being not met.
66 elected validators and 25 unelected validators voting will be considered as the quorum being met.

Similarly, I believe the amount of VDAO tokens allocated to unelected validators should be less. e.g 0.04 VDAO voting tokens. (if we’re doing 25:1)

3. CoinChowder, so far your ideas stink. What else have you got for us?

Well, I personally like the hybrid model, but we could also consider penalizing nodes that don’t participate in governance. This can be done via slashing commission.

  • Missed 1 vote? Node will receive 66.67% of commission fees collected
  • Missed 2 votes? Node will receive 33.33% of commission fees collected
  • Missed 3 votes? Congratulations, you’re a charity node now. Receive 0% of commission fees collected.

How to get out of this hole? PARTICIPATE and reset your slashing rate.
Where do the collected penalty fees go? Maybe back to the treasury to fund more DAOs? :wink:

Normally when I see someone write a huge post I go “Hm, this guy must know what he’s talking about”. Don’t fall for it :joy: Just because I wrote a wall of text does not mean I’m right! I am here to instigate discussion.
Share your thoughts! Challenge the ideas. Express your insights. If there’s one conversation that you should be participating in with the largest impact, it’s gotta be this one!

7 Likes

Appreciate the thoughtful response @CoinChowder. How you suggest mitigating the risk of unelected nodes being spun up to influence the vote is creative and warrants further consideration. The quorum idea also makes sense as it still takes into effect the delegator’s voting power while helping ensure governance votes don’t always hit a wall due to lack of participation.

As for bullet point number 3, it’s a good idea in theory, but it may be difficult to achieve if votes aren’t being tracked on-chain. As of now, it’s my understanding that governance is off-chain and for any penalty to be put into place, changes would need to be either done manually or via some sort of smart contract that calls on voting participation data.

Also, as a community validator with many unique delegators, my concern is not that our vote as the operator isn’t counted, but rather that our delegator’s voice is diminished simply because our stake weight is higher. It’s hard to argue against the theory that 1 ONE = 1 vote unless there is an existential threat to governance that requires us to reconsider that theory (which may be the case now considering how much influence Binance carries over the network).

Otherwise, I like where you’re going with your ideas and look forward to hearing from other validators who haven’t commented yet.

3 Likes

I can get behind it. Our only other option right now is to ask Binance to unstake or vote (if they vote they will sway the voting by a huge margin). We can also remove them as well as others that will not vote (but this is against what Harmony is for). Having VDAO tokens scaled by stake is a good middle ground [thus far] but we need some minimum amount of nodes to participate in willingness to receive these. Another Idea would be, the VDAO could automatically distribute these tokens to all non-exchange/non-voting nodes?

3 Likes

So I made a quick mockup of a very early curve that may be modified to help get an idea of what @realcoinchowder was looking for - VDAO Tokens that increase with stake but they start to diminish as stake grows.

The main flaw is: Below the lower bounds validators could be spun up and used to contribute to voting and sway them. The curve will need to be modified to ensure that at lower stake, there are not so many VDAO Tokens distributed to brand new nodes.
Below this is ‘standardizing’ the curve for 1 VDAO Token per 3.4M-3.5M staked (being the current 0.65xEMS). Effective median time of writing: 5,528,524 ONE
However, this number will change overtime, so that is another flaw - but it’s a rough idea for the current stake data we have.
Here goes: The formula is ln(stakedONE)/15.09 ← that is the fudge factor to ‘normalize’ 1 VDAO Token ~0.65*EMS


Here is a cut away of the data (the graph runs from 10k - 1,000,010,000 ONE staked).

ONE STAKED VDAO TOKEN
10,000 0.61
1,010,000 0.92
3,510,000 1.00
10,010,000 1.07
100,010,000 1.22
200,010,000 1.27
300,010,000 1.29
1,000,010,000 1.37

So it does need work but I thought I would put this here to get it going. We need to prove this will work before we make any haphazard HIP that will not work or be explained well.

I do believe this method of VDAO Token voting can work very effectively if we can manage to make this asymmetric where the 10k stake range does not get awarded this many tokens. I also like this idea implemented correctly, can have much more meaningful voting by essentially excluding the non-voting exchange nodes and other large nodes we have that may not participate at all.

Please feel free to comment as we need constructive discussion on this matter.

Edit: @leo and @sophoah this would be a great topic to weigh in your 2 cents <3

3 Likes

I love this so much!

@PiStake and a group of validators have collaborated and put thought into this and it definitely paints a better picture for those who are joining into the conversation.

Maybe @Maffaz can comment on whether it is possible or not to add additional logic in the VDAO token smart contract to take into certain parameters that ultimately affect the token amount.

This could open up possibilities like:

  1. Elected status gives the token amount a multiplier of X such that we can still use the chart that @PiStake suggested above.

e.g multiplier of 10
10,000 + unelected = 0.61 tokens
1,010,000 + unelected = 0.92 tokens
1,010,000 + elected = 9.2 tokens
1,000,010,000 + elected = 13.7 tokens

  1. Days since the node was created also affects the amount of VDAO tokens

Another idea (although I’m not sure if this information is available) is that we can also take into account the age of the node. The idea behind this is again to try to address any new nodes spawned for the sole purpose of voting.

Finally, and something that is really important to consider is the upper limit for ‘large’ validators. As stake approaches infinity, the number of VDAO tokens should be reaching X. This “X” value is important because do we want ‘large’ validators to have 5x the voting power of a ‘standard’ validator? Or should it be 4x, 3x, or 2x? etc.

3 Likes

It is more than possible yes. Whatever the community votes on :slight_smile:

1 Like