Open JakeHartnell opened 1 year ago
It's possible to have this be usable with out ExecuteMsg::Update { .. }
... so maybe that isn't a requirement.
hey @JakeHartnell couple Q's:
Thoughts? I'm down to help on this
hey @JakeHartnell couple Q's:
- Wouldn't it need to handle received funds? So amount ideally needs to be able to keep track of funds received, likely a map. (Think hackathon pool, or USDC + JUNO)
- Agree with update not being required, but nice for the metadata (typo's happen). Ideally only init or cw20 receiver can update funds. I'm assuming Execute::Close would return/withdraw all remaining funds. Execute::Claim would also need to forward all funds to bounty recipient
- I think one major thing missing is the definition of recipient, needs to be set by the owner at some point. Potentially there can be a "commit" method where multiple individuals can start work toward a bounty, (V2 could require staking :D ) that puts their address in the ring. Then the owner simply approves the claim upon completion.
Thoughts? I'm down to help on this
Great questions! Forgot about recipient
, updated it accordingly.
It would need to handle funds. They would be mapped to the bounties and sent when the bounties are created. Perhaps a fun thing to add in a V2 would be the ability for others to add more to the bounty (for example, if 1337 makes a bounty that would also be useful to the Osmosis team, they could add extra funds on top).
A bounty contract is special type of escrow that takes an owner and holds funds for an
On bounty creation the funds are taken, on update funds are added or removed and bounty details can be updated, on removal funds are returned to the bounties contract owner.
Typical usage would involve a SubDAO with open proposal submission. Bounty hunters would be able to see a list of bounties, work on one and make a proposal to claim it.
Managing the contract owner (handling updates, etc.) should be done via
cw-ownable
.Example interfaces:
V2 could include milestones in the bounty, which would allow for breaking up bounties into claimable parts.