MatchingRoundcontract 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.
MatchingRoundcontract is deployed. The currently active round contract's address is stored in the
DonationHandlerpoints 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_roundentrypoint. Every entry must deposit a returnable stake in tez. The value of the deposit could vary across rounds.
donateentrypoint in the
DonationHandlercontract, to relay the contribution amount to the project's wallet address.
MatchingRoundcontract and record the amount, contributor address and token of contribution.
token_setof 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.
disqualifyentrypoint is called by a proposal that has passed the vote.