darwinia-network / research

Research related document and topics
MIT License
3 stars 2 forks source link

darwinia-democracy should use power_of() as public voting weight? #18

Closed hackfisher closed 3 years ago

hackfisher commented 4 years ago

Some casual ideas and summaries:

  1. power can be retrieved from staking module
  2. for public voting, it's not a good idea to add another pool to lock people's assets.
  3. It's a consistency design of the dual currency design, and how it will influent governance.
  4. users can choose to not validator/nominate, e.g. only for the purpose of voting.
  5. Governance modules can be easily upgraded, so we can keep it as draft and request more reviews before upgrading and implementation.
  6. The assets locking will influence the power in real time, and voting counts as result, that's ok, since we only need to count the vote at the end of a proposal.
AurevoirXavier commented 4 years ago

Yes, Power can simplify the logic in multi-currency system.

Power is a dynamic value. If I found a way to store the CORRECT snapshot, that we can remove the primitives/phragmen.

hackfisher commented 4 years ago

Yes, Power can simplify the logic in multi-currency system.

Power is a dynamic value. If I found a way to store the CORRECT snapshot, that we can remove the primitives/phragmen.

Let's try to clean the concepts and terminology:

pub fn power_of(stash: &T::AccountId) -> Power;

is a common used call will return Power at the block of calling, Power is a trait which can

The 2th and 3th will have some redundant, but will be required at scenarios like slashing.

Thus, power_of is dynamic, Power can be taken as the snapshot, and the assets in the snapshot as related requirement for staking/voting

hackfisher commented 3 years ago

To complicate for user this way, not friendly, closing it due to this disadvantage.