Skip to main content
BountyCovenant enforces a competition-style payout where the authority co-signs each winning claim. Contract path: contracts/core/distribution/BountyCovenant.cash

Parameters

ParameterTypeDescription
vaultIdbytes32Links to source vault
authorityHashbytes20Co-signs all claim() calls
rewardPerWinnerintFixed prize per winner
maxWinnersintMaximum number of prizes available
startTimestampintCompetition opens. 0 = immediate.
endTimestampintDeadline. 0 = no deadline.

NFT State (40 bytes)

[0]:    status
[1]:    flags
[2-9]:  total_paid (uint64)
[10-13]: winners_count (uint32)
[14-18]: last_claim_timestamp (5 bytes)
[19-39]: reserved

Functions

claim(sig authSig, pubkey authPubkey, bytes20 winnerHash, bytes32 proofHash)

Authority co-signs and identifies the winner with winnerHash. proofHash is a non-zero hash of the submission proof. Prize is released to winnerHash. Auto-completes at maxWinners.

pause() / resume() / cancel()

Authority-only. Cancel returns remaining prizes to authority.