Reward Distributor

The Hourglass Reward Distributor distributes the yield generated by all assets locked within the system via a Merkle proof claim. Each strategy harvests the yields accumulated during it's defined reward period, harvesting the revenue generated by the assets held on that strategy, and sending the rewards to the Safe designated to post those assets.

From time to time, currently , the Merkle root is updated to reflect which address held how much of which asset and for how long. Each address can then claim their accumulated yield without the expense of harvesting it from each strategy or maturity.

Rewards Processing

Event monitoring tracks user balances through transfers over the course of each asset's reward period & accumulated yields are distributed to the addresses that held that receipt token at some point during the period via a Merkle claim.

For example, say a reward period is 10 days & a deposit of 100 LP tokens accumulates 100 CRV & 10 CVX. User A deposits the original 100 tokens, after 5 days, they sell half to User B, and half to User C. In this case, User A would be entitled to claim 50 CRV & 5 CVX, while user B & C would each get 25 CRV & 2.5 CVX. Note that User A doesn't have to have a balance at the end of the reward period to claim the accumulated yield.

Rewards accumulate across periods—you do not have to claim each week to secure your yields.

When a receipt is transferred, it calls to checkpoint on the rewards distributor. Currently, this performs no action, but allows for future on-chain reward tracking & distribution, though doing so in an gas-intensive environment like Ethereum L1 is more costly.

Reward Distributor:

Last updated