HIP-27 - Quadratic voting power

Hej Harmony Validator Community,

this post is written from the Validator DAO Governors, @CoinChowder and Stakeridoo in review of the latest movements and failed voting for the Bootstrap Initiative.

With the impending migration to the new Snapshot.org, we believe it is paramount to open this discussion up and collectively determine what is the best and fairest governance strategy that should be used moving forward.

Up until now, the Validator DAO has been using the stake weight voting method whereby Validators represent their delegators to vote. This vote is weighted based on the size of the validator, meaning that the higher amount of ONE staked with them, the more impact it has on the voting outcome.

Please also take this opportunity to revise what is currently in the Validator DAO charter in relation to voting, and hopefully we can discuss and make any necessary amendments to it.

Validator DAO Charter Document

Now, let’s go through the existing options that the new Snapshot.org can offer us.

Strategies

First, a strategy must be established to define who can vote and how. Thus, a staked weight strategy or a single vote can be selected here. Here different conditions could be set. For example, a minimum of ONE resulting in one vote per wallet. Or generally the staked ONE & ONE as voting power. Currently, no delegation is directly linked in the new snapshot. There would be the possibility to perform delegations in Snapshot (currently under development for Harmony network). Snapshot

Or you could create a special non-transferable VDAO token which reflects the staked voting power or just as a single vote. This could be distributed after application to the VDAO, which would also be a simpler solution for HIP-11. The possibilities are endless.

The new strategy should be chosen with care, especially since the quorum has to be defined in the new snapshot and it does not allow for percentages.

To learn more about strategies, please visit this page.

Voting Methods

The new snapshot contains several new voting methods, each with their pros and cons.

1. Single Choice voting

As it suggests, Validators can only select one option and allocates all their voting power to that single option.

2. Approval voting

Validators can vote for multiple options and their votes will be equally distributed amongst their selected options.

3. Quadratic voting

Each voter may spread voting power across any number of choices. The results are

calculated quadratically, you can test out these calculations here https://wtfisqf.com/

4. Ranked choice voting

Each voter may rank any number of choices. Votes are initially counted for each voter’s top choice. If a candidate has more than half of the vote based on first-choices, that choice wins. If not, then the choice with the fewest votes is eliminated. The voters who selected the defeated choice as a first choice then have their votes added to the totals of their next choice. This process continues until a choice has more than half of the votes. When the field is reduced to two, it has become an “instant runoff” that allows a comparison of the top two choices head-to-head.

5. Weighted voting

Each voter may spread voting power across any number of choices.

6. Basic voting

Similar to ‘Single choice voting’ but with predefined options: ‘Yes’, ‘No’, ‘Abstain’ which is what we have been primarily using until now.

To learn more about voting methods, please visit this page.

Other Useful References:

This video explains the pros and cons of various voting methods which I found to be quite useful.

This video explains dictators, veto power and other critical aspects of weighted voting.

The Big Question now:

Do you like to stick with the actual strategy we had so far (staked weight & only Validator can vote)?

  • Yes
  • No

0 voters

If no suggest a strategy and voting type

6 Likes

Because of the latest issues with the HIP-25 Bootstrap Initiative, I would love to move forward to a special VDAO Token.

A VDAO Token that reflects 1 Vote. This Token will be spread to Validator who fill out a specific form like our contact form in the moment. So this would also kind of solve this HIP-21: Governance Flag Proposals

As voting types I would suggest:
Basic Voting for Yes or No
Ranked choice Voting for Multiple Options like at HIP-16
Approval Voting for Governor Elections

7 Likes

I think something like this is urgently needed, really favor the idea with the VDAO token, like @ben2k_Stakeridoo laid it out.

2 Likes

Thinking about this, I am in favor of a VDAO token/NFT that is non transferrable once contact information is confirmed by VDAO members for validators willing to participate. (helps indirectly implement HIP 16?)

Will the VDAO token be distributed to all validators that are elected or non elected or both? What happens when a validator decides to stop operations and remove it from the network (token revoke?)? Will they still be able to vote with their wallet afterwards or is a blacklist for snapshot needed as well?

This is a good idea but we need more members to chime in and give ideas and possible answers to these questions.

Thanks Ben!

2 Likes

I also like the VDAO token as action is required for those who wish to participate in governance. It is also symbolic since it initially started out as a HIP-21 which required the Harmony team to make changes. This VDAO token is a workaround which removes the dependency on the busy team at Harmony and allows us to determine how we would like to self-govern.

I believe that wherever possible, basic voting should be used. As explained in this video, it states that any vote which has more than two options, it’s mathematically impossible to design a voting system that doesn’t violate at least some theoretically desirable criteria.

As @ben2k_Stakeridoo suggested, approval voting for Governor Elections keeps it simple enough.

My main concern is how do we find the balance where small validators’ voices matter, but at the same time, the larger validators who have received large stakes also has the ability to represent all those people backing them, without bordering the ‘unfair’ territory (e.g 900 million staked)

My initial thought would be to implement a weighted voting system, but with diminishing returns by following some sort of logarithmic curve…

For example:
A small validator with 1million staked would have 1 VDAO voting token.
A validator who has 10 million staked would have 1.6 VDAO voting tokens.
A validator who has 50 million staked would have 2.1 VDAO voting tokens.
A validator with 100 million staked would have 2.6 VDAO voting tokens.
A validator with 200 million staked would have 3 VDAO voting tokens.

Granted these are just arbitrary numbers that I’ve used in there but I think you get where my head is at. Would love for others to criticise or give feedback as this is a significant topic which requires everyone’s input. Any math/stats wizards out there? :rofl:

A potential flaw with the above system is that it’s possible to spin up new validators just to get more voting power. This is why we need to discuss and put rules in place!

Edit: As for who can vote, I think it should still be the validators only who can vote (for VDAO proposals). Delegators should continue to express any opinions/concerns to their validators, as they currently do.

6 Likes

Just a quick note to this, what happens when stake is reduced or increased, how will the VDAO token be distributed/removed?

1 Like

It will be updated based on stake weight so it will be fluid.

You won’t be able to transfer it, it will just exist as a reference and to have something to count.

A representation of one staked. That would be it’s only purpose.

5 Likes

Yea! For those who have been involved with VenomDAO, you will notice a vipervote token that has a dynamic value, based on the number of tokens you hold within the Viper ecosystem. That custom is used for governance.

2 Likes

Yes, that is a similar idea!

1 Like

So we will have classical stake-weight voting either way?

2 Likes

I think this is a good idea, this will let us really have a voting where validators will participate (as they showed interest) and it will let the VDAO keep contact with the nodes (excellent when we had issues on epoch 833/834).

1 Like

We want to continue as outlined in the charter. Vdao.one

The mechanisms of voting are decided on by the community so for it to change we require a vote to do so.

There are other options for the community going forward which the dao have discussed in our meetings, promoting a discussion with the wider community here.

“Other options for the community going forward”? What do you mean by that?

1 Like

It’ll be hard to pass most governance proposals if we continue with the current system. And I’ve thought your “hybrid option” (as I refer to it) would be a better alternative for awhile now. So I’m on board

I also really like @ben2k_Stakeridoo suggestion about validators needing to apply for the VDAO token. Would part of that application include a contact “number” to reach out to validators in the event of another network shutdown like in January? Since my understanding is there were several validators that couldn’t be reached? I don’t think that would be a “centralization” issue, right?

For example:
A small validator with 1million staked would have 1 VDAO voting token.
A validator who has 10 million staked would have 1.6 VDAO voting tokens.
A validator who has 50 million staked would have 2.1 VDAO voting tokens.
A validator with 100 million staked would have 2.6 VDAO voting tokens.
A validator with 200 million staked would have 3 VDAO voting tokens.

I’m good with these figures unless someone proposes something “better”

2 Likes

All of the stuff mentioned above by Stakeridoo for example and other suggestions but to change the current way of voting will require a charter change which depends on a validator community vote to pass.

2 Likes

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

So the only way for us to fix the issue with not reaching a quorom is by reaching a quorom? :thinking:
Is that still possible, as the last 2 have failed?

1 Like

The last 2 failed due to lack of participation not because it was impossible.

But yes, we have to follow the charter which was voted on by the community.

2 Likes

So even with those who never vote (Binance, Kucoin etc.) it’s still possible reach 51% participation at the moment?

1 Like

Yes it is but it is not as easy right now!