RewardCovenant lets an authority issue variable amounts to recipients for arbitrary events — achievements, referrals, loyalty milestones, or custom categories. Unlike airdrops (fixed, self-claim), rewards require the authority to sign each payout and set the exact amount.
Use Cases
- Achievement rewards (reach milestones in a protocol)
- Referral bonuses (variable by referee activity)
- Loyalty programs (tiered rewards based on usage)
- Custom incentive campaigns
How It Works
Reward Categories
Thereward_category byte in the NFT state records the type for indexing and display:
| Value | Category |
|---|---|
1 | ACHIEVEMENT |
2 | REFERRAL |
3 | LOYALTY |
4 | CUSTOM |
Key Properties
| Property | Detail |
|---|---|
| Amount per event | Variable. Must satisfy 0 < rewardAmount <= maxRewardAmount |
| Recipients | Different address per reward event |
| Pool | Fixed at deployment — auto-completes when exhausted |
| Authority | Controls all payouts — no self-claim path |

