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

Whitelist Deposit Function #5

Open
5 tasks
mitche50 opened this issue Jan 6, 2022 · 0 comments
Open
5 tasks

Whitelist Deposit Function #5

mitche50 opened this issue Jan 6, 2022 · 0 comments
Labels
enhancement New feature or request

Comments

@mitche50
Copy link

mitche50 commented Jan 6, 2022

The whitelisting event for early bonding will include an additional element of allowing the user to vote for a DAO which will receive a portion of set aside pCITADEL intended for distribution to partner DAOs. When the user deposits, they will include an additional parameter which indicates the DAO they'd like to vote for, and we need to capture this data.

We also need a way to enforce the whitelist. BADGER has already developed a bouncer system used for guarded launches and can provide that same architecture, but we will need to modify the deposit function for whitelisting events.

My proposal is to duplicate the deposit function into a whitelistDeposit function, adding in the whitelisting that we've developed at badger for guarded vaults as well as having an additional param included in the whitelistDeposit function _representative. We would have a mapping of representatives to a counter which is incremented by the payout amount. Once the whitelisting bonding period is over then we can get the values of the mapping and use that for a distribution amount of the reserved DAO amount.

Tasks:

  • Adapt badger bouncer to wrap around the whitelistDeposit function and utilize api.badger.com to serve the merkle proof
  • Duplicate the deposit function to whitelistDeposit including an additional parameter _representative
  • Define DAO constants in a mapping like mapping(string => uint256) public representatives;
  • increment the selected DAO by the payout amount like representatives[_representative] += payout after payout is made
  • Create dune dashboard collecting this data so it can be publicized
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant