-
Notifications
You must be signed in to change notification settings - Fork 5
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
Milestone 1 #1
Comments
About amount per account:
|
Suggestion:
claim(boostId, accounts[], merkleProofs[]) |
For this first milestone, we agreed that we don't require merkle trees. Individual messages for each vote will be signed and signatures published via IPFS (as a single file) to allow claiming. That means no start method is required to store a tree root.
Therefore the claim method takes a signature instead: claim(boostId, account, signature) And here a more detailed todo/checklist for hub and UI: The frontend/plugin:
The hub:
A thought on allowing multiple deposits from different accounts: I could imagine that this isn't really that much demanded and just the DAO itself deposits in most cases. I'm a bit concerned that this makes withdrawals of remaining funds (after expire date) more complicated. Do we really want to support this? Maybe it's easier to allow just top-ups from the account that created the boost. |
See snapshot-labs/snapshot#2110 for context.
For the first milestone here is what I propose:
Focus on a single use case where anyone can rewards voters on a proposal with an ERC20 and a fixed amount per voter. Here is the requirements:
I imagine a contract with these functions:
create(id, amtPerAccount, token, expires, guard)
To create a new "boost" with fixed amount per voter, the id is a proposal id in our case but we can imagine the contract being used for others scenario.
start(boostId, merkleRoot)
To send a merkle root so users can start claim
deposit(boostId, amt)
To add more ERC20 into a boost
withdraw(boostId, account, amt)
To withdraw funds that you or someone else deposited
claim(boostId, account, merkleProof)
To claim your or someone else ERC20
The text was updated successfully, but these errors were encountered: