FeeDistributor. Rewards are tracked by owner address, not by veNFT token ID.
Core Functions
getReward
owner across the provided token list. The caller must be owner or an approved admin in VoteModule.
getPeriodReward
notifyRewardAmount
feeRecipient address, which is the fee-routing source for that market.
incentivize
getRewardForOwner
owner, sending them to the owner address. Only callable by the Voter contract.
Parameters:
getRewardForOwnerTo
owner, sending them to a specified destination address. Only callable by the Voter contract.
Parameters:
earned
owner across finalized periods, net of prior claims.
Key Concepts
- Rewards are period-based and typically queued into
getPeriod() + 1. Voterupdates each user’s balance in the fee distributor when votes are cast, reset, or recalculated.- A distributor can hold multiple reward tokens at once.
notifyRewardAmount()is used for fee routing, whileincentivize()is used for vote incentives and bribes.- Claims are permissioned through
VoteModule.isAdminFor(), which is why admin relationships matter even outside direct voting.
