# ~~BUIDL Pallet~~ Hackathon Parachain An easy way to onboard projects into Kusama. To be deployed on Statemine OR as common good chain. Meeting Alejandro//Bruno 06/14/23 - The bounties chain, parachains can fund bounties in their native token. - Pitch from a hackathon perspective, you can create hackathons on this chain - Create a custom pallet that would accept reserve asset transfers that would fund the bounties - Parachain sends an XCM to propose_bounty on our chain, when funds are in statemint it becomes a funded_proposal **Goal**: 🏎️ - Accelerate experimentation on Kusama 💉 - Inject massive growth into Kusama > There could also be a smart contracts component to this: the inkubator! For next meeting: - Review bounties and child bounties pallet - Bounties or child bounties does not accomodate for a team - Perhaps use bounties but not child bounties - Accommodate for a challenge to be awarded to multiple teams - Simplest and best case may be to write all the logic ourselves --- Example flow using Bounties Pallet + BUIDL Pallet that has the `spend_funds` trait (which is needed by the bounties pallet to award the bounty) - This would mean BUIDL pallet would be in charge of spending/dispersing funds 1. Moonbeam creates a 1_000_000 GLMR bounty in the BUIDL pallet by locking funds 2. Moonbeam creates a bounty in the bounties pallet 3. Moonbeam adds a curator (account that approves the bounty award) 4. A team comes and decides they want to compete for that bounty and does the work 6. The team is ready to submit their work 7. The team creates their submission in the BUIDL pallet - bounty id of what they are submitting their work for - allocation amounts for each team member 8. BUIDL pallet has a pallet account 7. Curator approves their work via bounties pallet 8. Team claims their award via bounties pallet 9. Funds are dispersed via BUIDL pallet `spend_funds` 10. Funds go to BUILD pallet account 11. BUILD pallet disperses funds to team accounts Optional: - Teams can create sub bounties with the percentage of their potential award > Note: To use Bounties Pallet + Treasury Pallet + BUIDL Pallet we would be limited to the treasury's pot, we could customize the bounties pallet to tight couple with a custom pallet we build Example flow using a custom pallet that does everything 1. Moonbeam creates a bounty 2. Moonbeam locks 1_000_000 GLMR towards this bounty (using XCM) 3. Moonbeam chooses a curator 4. Team A decides to compete for bounty and works hard on it 5. Team A is ready to submit their work on chain 6. Team A submits their work via metadata/ipfs and also submits allocation amounts for each teammate 7. Curator is happy with their work and approves 8. 1_000_000 GLMR gets dispersed into accounts #TODO Example flow using Statemine DEX, XCM, custom pallet with `spend_funds`, Bounties pallet, BUIDL pallet for team management/allocation 1. Moonbeam creates a 1_000_000 GLMR ... --- Notes To couple this with the bounties pallet, the BUIDL pallet could have a team account - this is the account that the bounties pallet would reward to. The BUIDL pallet would also have percentages that each teammate will receive on reward. **This should be recursive**. --- We will need a UI (a dapp). Use this project to create a dapp for itself - good first test. --- Post-MVP - Make it recursive, a team can outsource to another team which could outsource to another team --- ### Review of Bounties Pallet Bounties pallet is tightly coupled with the Treasury Pallet because of `spend_funds` trait. Treasury pallet will call `spend_funds` at every spending period which will disperse funds. Does it make sense for use to use Treasury pallet + Bounties pallet or is it overkill? We need a multi-pot, multi-asset, XCM-enabled treasury pallet? --- Concerns How does this differentiate from our current use of bounties on Kusama? Perhaps what we are looking for is to be able to allow Kusama bounties to be paid in any asset? There needs to be massive incentive for teams to build. How can we create these incentives? Bounties on Kusama already exists. What are we doing that is so much better?