Open bonustrack opened 2 years ago
Few questions to find out the specs:
network
field?"delegation": { type: 'only-delegated', delegatorRevert: true, space: 'balancer.eth' }
Value can also be none
only-delegated
delegated-and-self
VP
and vp_by_strategy
from the votes
query, don't calculate voting power on UI, Current results
result from scores
and scores_by_strategy
from proposal
query scores_state: "pending"
else scores_state: "finished"
delegatorRevert: true
, after getting the voting power, check if the delegations
field exists, find the top delegate of the voter (example if A -> B -> C, If A vote now and C already voted and not B, C will be the top delegate, if C didn't vote and B voted, B will be the top delegate) Reduce the voting power of current voter from the top delegate scorescores_state: "pending"
calculate the score with all voters, and store the voting powerdelegation
param from the inputgetScoresDirect
if delegation.type !== 'none'
get the delegations of all the voters (recurevely), based on the type, calculate the voting power delegatorRevert: true
then reduce the voting power from the above level delegate VP, recursively @ChaituVR Core delegation should work only with "Delegated + Own Voting power" we shouldn't provide option to work with just Delegated vp, not sure who would need that? Also we shouldn't allow "Delegator can take back their voting power when they vote" this is exactly what blocking us to store vp when someone cast a vote. So basically you can only enable or disable delegation. This mean we need to store on the hub db for each proposal if there is delegation enabled or not. We also need to think how it work if someone delegate voting power in multiple chain.
Hi @bonustrack @ChaituVR , what's the status on this one? Does it need a pitch?
Yep need a pitch, I feel now we can support delegation as a core feature (at least for non-overriding strategies)
We need to specs how to move to delegation as core feature, this will require changes on:
snapshot-hub snapshot-score snapshot-strategies snapshot