Proposals

/

Proposal

Executed

[SIP-18] Rewards Claim Function - Reactivation


User profile image

by

by

0x6D0C9128165A7BF2A2072319129D49D8F...

0x6D0C...fe0A

ID 988879...3118

ID 988879...3118

Proposed on: May 30th, 2024

Proposed on: May 30th, 2024

Votes

Actions

Type

Address

Details

Custom

setAddressAsProxy(..)

Custom

Account

0x0E02...f3a0

Method

setAddressAsProxy(..)

Proposal

TL;DR Summary

  • There was a recent governance proposal fixing a rewards rounding error bug, SIP-15.
  • In this SIP 15 bug fix, there was a bug migrating the reward state as part of the contract upgrade, this resulted in some users receiving more rewards than they were due in some cases.
  • Once the incorrect rewards calculations appeared, Seamless Guardians temporarily paused rewards claiming to sufficiently investigate the issue.
  • Now with a fix and path forward in place, governance must review and vote on this proposal to apply the fix so that reward claiming is unpaused.
  • This proposal seeks to upgrade the RewardsController implementation contract again with the fixed code and introduce a new admin role/function that will allow the Seamless Guardians to apply reward state patches to the users impacted by this bug. After the reward state is fixed, the Guardians will renounce this role.
  • Users will receive ALL rewards they should have accrued based on usage and participation in Seamless supply/borrow markets and Seamless is in direct contact with users who may have incorrectly claimed rewards prior to the Rewards Claim button being paused after SIP 15 was executed onchain.

Context & Motivation

After SIP 15 was executed onchain, a couple of users observed reward claiming and calculation errors. This finding prompted Eng contributors to immediately investigate, identify, and confirm there was a bug with rewards calculations. Once the bug was confirmed, rewards were temporarily paused from claiming. Now that Eng contributors have a fix and path forward in place, this proposal seeks to execute on the fix onchain which requires approval from community governance.

Proposed remediation steps

  1. Deploy fixed RewardsController contract.
  2. Create governance proposal onchain to upgrade the RewardsProxy to use the new RewardsController implementation.
  3. If the proposal passes, after the timelock is executed, the Guardians will correct the incorrect user reward accruals onchain. *This must be calculated at the time the new implementation is deployed onchain to get an exact diff amount.
  4. Guardians will renounce this temporary admin permission permanently.
  5. Guardians will unpause claiming of rewards allowing users to claim rewards on the app as usual.

Additional notes:

  • This temporary admin role can only adjust user reward accrual amounts (unclaimed). It has no power of the lending pool, supplied liquidity (including accrued interest) or other Seamless Protocol contracts.

Here is the deployed and verified Rewards Contract: https://basescan.org/address/0x36321e1b5e41f3b719e7618dae96619164d1bd89

Votes
Status