Open Ro5s opened 3 years ago
by default tokens can go to admin. maybe additional percentAirdrop
field in creator? then admin gets total - (total*percent airdrop). and the rest get sent to the merkle drop contract that just got deployed.
that's efficient 👍 👍 let's go with that flexible approach (rather than have a merkle dropper as separate factory).
would airdropped tokens then need a fourth contract as distributor? or do we simply add a claim function in governor alpha or timelock contract that is deployed?
while we could have tokens claimed from token contract itself, this feels like an anti-pattern.... many tokens are now incorporating format to reject transfers into itself.
I think another contract, the distributer, is still necessary to have the system designed well. the distributor has a bit more than just a claim function, since its doing quite a bit of math with the merkleproof things it imports.
I'm not sure if that requires a whole new factory though.
the distributer constructor is simple enough, you should already have all the data on hand to fill it in.
constructor(address token_, bytes32 merkleRoot_) public { token = token_; merkleRoot = merkleRoot_; }
Okay I'm almost done with this, one thing... The distributer needs the address of the gov token, so that needs to be launched first. How do I get that for the distributer factory?
edit: oh its address(token)
in the deploy function.
can we deploy a dao and make a massive airdrop of interactive stakes? (votes, loot, whatever).
context: https://twitter.com/r_ross_campbell/status/1404568349753987087?s=20
great idea from @shegenerates: https://twitter.com/shegenerates/status/1404569849678946306?s=20 on implementation.
To start, maybe we build merkle drop into the COMP-style factory (so instead of initial supply of token going to
admin
account...... the distribution is stored in token or a distro contract that can be claimed by accounts that prove receipt through merkle root?)COMP-style factory: https://github.com/Ro5s/Awesome-Governance/blob/main/COMP/GovernanceFactory.sol