Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/incentivized vote #74

Open
wants to merge 7 commits into
base: master
from

Conversation

@bgits
Copy link
Collaborator

bgits commented Oct 30, 2019

Based on this: https://discuss.status.im/t/incentivized-voting-a-theory-on-greater-network-engagement/1444

Considering adding a claimPeriod which if not claimed by that date can be moved to a global rewards and can be used to increase the reward pool size of future votes.

Thoughts?

P.S. For some reason I can't request @3esmit as a reviewer here.

bgits added 4 commits Oct 30, 2019
This patches a vulnerability discovered where someone can pass in
large ballot sizes and cause an overflow to pass the check below
@bgits bgits added the enhancement label Oct 30, 2019
@bgits bgits requested a review from richard-ramos Oct 30, 2019
@bgits bgits force-pushed the feature/incentivized-vote branch from 1db6dfd to 6e93177 Oct 30, 2019
@richard-ramos

This comment has been minimized.

Copy link
Member

richard-ramos commented Oct 30, 2019

Cool PR!

Having a claim period sounds like a good idea. The implementation of using it for rewards for future polls seem tricky, considering you might have many polls running at the same time. How would these rewards be distributed?

@bgits

This comment has been minimized.

Copy link
Collaborator Author

bgits commented Oct 30, 2019

Cool PR!

Having a claim period sounds like a good idea. The implementation of using it for rewards for future polls seem tricky, considering you might have many polls running at the same time. How would these rewards be distributed?

I think it would just be First come basis for now. The amount would just become:

  `uint amount = p.rewards.add(globalRewards).mul(claimerVotes).div(totalVotes);`

There would have to be another method like: moveFunds(uint _idPoll) which anyone could call after a poll claim period expires.

Another option is it could evenly distributed among all active polls when called.

A third option is that is doesn't change the amount calculation but rather is only used to 1-1 match when someone calls addReward

@richard-ramos richard-ramos self-requested a review Nov 1, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants
You can’t perform that action at this time.