Skip to content

Latest commit

 

History

History
47 lines (34 loc) · 2.62 KB

readme.md

File metadata and controls

47 lines (34 loc) · 2.62 KB

Bounty Agreement

Intent

This contract was written by the Scruge team for the benefit of the EOS community. The purpose of this contract is to create a protocol for creating Bounties on the EOS network.

Definitions

  • Bounty Agreement: This Document
  • Bounty: A useful task presented by a Provider to be completed by Hunters in return for a Reward
  • Provider: An entity or a person that creates a Bounty and promises a Reward for completing the Bounty
  • Hunter: An entity or a person that accepts from a Provider to complete a Bounty to receive a Reward
  • Reward: A collection of cryptocurrencies in the form of Tokens and/or/nor EOS
  • Tokens: : a collection of EOS-based tokens. Usually emitted by the Provider as part of the Project
  • Project: Decentralised application that uses Tokens in its system

Campaign Creation

Provider that has done this before skips straight to Bounty Creation. Otherwise, the Provider does the following steps:

  1. Provider sends a fee to the EOS account scrugebounty. This fee will only be consumer in the creation of a bounty later.
  2. Provider initiates an action newproject with a description of their Project specifying:
  • Provider Name (name of the account)
  • Project Description (including token economies: total supply, inflation rate and expected exchange listing and other relevant info such as whitepaper, links etc.)
  • Project Name

In this way, Provider enters into Bounty Agreement, gets registered with the scrugebounty contracts and receives ID providerName

Bounty Creation

Provider sends a transaction to scrugebounty paying a fee for creation of the bounty. Then Provider initiates an action newbounty with a description specifying the following:

  • Bounty Description
  • Rewards Description
  • Bounty Duration (in milliseconds)
  • Participation Limitations, like:
    • user limit
    • submissions per user
    • time limit for one user to participate again
    • Budget Constraints

In this way, bountyID is created.

Bounty Submission

Hunter accomplished Bounty and sends proof of his work (e.g. a link) via action submit to the account scrugebounty specifyind bountyID and providerName. In this way, Hunter enters into Bounty Agreement and submissionID is generated.

Bounty Payout

After a certain period of time (as specified in the Bounty Description), a payout is made according to Rewards description. Provider sends a payment to the account scrugebounty passing in a memo submissionID for which payment is to be made. Payment is automatically sent to the respective Hunter