MatchingRound
contract contains the logic of a Kickflow match-funding round. It collects sponsorship funds, accepts project entries, allows contributions and finally withdrawal of match amount by the projects.MatchingRound
contract is deployed. The currently active round contract's address is stored in the DonationHandler
contract's storage. DonationHandler
points too, can be changed by submitting a proposal in the DAO. This essentially means that every new match-funding round must be approved by the DAO. enter_round
entrypoint. Every entry must deposit a returnable stake in tez. The value of the deposit could vary across rounds.entries
big_map
indexed by an incrementing id. Each entry has the fields mentioned in this types file.donate
entrypoint in the DonationHandler
contract, to relay the contribution amount to the project's wallet address.contribute
entrypoint of MatchingRound
contract and record the amount, contributor address and token of contribution.token_set
of the round. The set of tokens that would be accepted during a round are predefined during contract deployment. Contributions are accepted only from a limited number of tokens based on their present market liquidity and ease of fetching the price during CLR match calculation.disqualify
entrypoint is called by a proposal that has passed the vote.