The general idea is that anyone can run the client and relay rewards.
- Read the repos to be indexed
- Run periodically
- Record the profile <-> wallet pairs in the Solana program
- When a new bounty is created, this should be relayed to the Solana program
- The client should also post the status of the bounty as a way to notify users
- Trigger transactions in a foreign context like github.com
> RUST_LOG=info cargo run
> cargo fmt // formatting
> cargo fix // try to fix warnings
- Install SandBlizzard github app
- Register github username with wallet in repo
- CREATOR creates an issue or PR
- Receives a signing url in the comment
- Signs
create_bounty
tx - Closes issue or PR with names of SOLVERS who should receive reward
- Relayer pays to the SOLVERS from the escrow
- Relayer posts status to Issue or PR
BOUNTY_CREATOR can always cancel_bounty
to get the funds out.
- Create dummy issues
- Separate Bounty, User etc into module
- Use structs from Bounty program
- Implement PR flow
- Implement account verification
- Integrate with bounty program
- Post status about create_bounty to the issue/PR
- Deploy executable with terraform or pulumi
- Be able to change payer address
- Add web server for hosting dapp
- (Implement JPEG module for creation of new NFT JPEGS)