Resupply Recovery Plan Phase 2: Activate IP Retention Program
Summary
This proposoal executes the on-chain actions requied to fulfill Phase 2 of the Resupply Recovery Plan. Specifically, the IP Retention Program which will work as follows:
- Stream 2.5M RSUP over 52 weeks to Insurance Pool (IP) depositors who were slashed in Phase 1 and remain staked.
- The Retention Program will receive 6.25% of total RSUP emissions each epoch. Additional RSUP required to reach 2.5M after 52 weeks will be automatically transferred from the treasury.
- Contracts have been deployed:
- Retention Incentives:
0xB9415639618e70aBb71A0F4F8bbB2643Bf337892
- Retention Emissions Receiver:
0x6E7D5dade33f76F480EA38E3c47f870de74906F1
- Retention Incentives:
- Snapshot of affected users was taken at block
22,830,880
and data is already loaded in contracts. - Insurance Pool depositors may withdraw at any time, but doing so permanently forfeits future retention incentives.
- Any forfeited incentives will be shared across all remaining participants.
Rationale
In the Resupply Recovery Plan, Phase 1 focused on eliminating bad debt and has been completed. Phase 2 now delivers the on-chain retention program aimed at aligning long-term incentives with protocol health.
Specification
- Program cap: 2,500,000 RSUP
- Duration: 52 epochs (≈ 1 year)
- Weekly target: 48,076 RSUP
- Start epoch: first epoch after execution
On-Chain Actions
# | Call | Purpose |
---|---|---|
1 | retentionIncentives.setRewardHandler(retentionReceiver) |
Authorize the receiver to pull rewards. |
2 | emissionsController.registerReceiver(retentionReceiver) |
Register the receiver with the emissions controller. |
3 | emissionsController.setReceiverWeights([debt, ip, liq, retention], [1875, 2500, 5000, 625]) |
Allocate 6.25% of RSUP emissions to the retention program. |
4 | treasury.setTokenApproval(govToken, retentionReceiver, type(uint256).max) |
Allow the receiver to pull RSUP top-ups from the treasury. |