To compensate users who received fewer GFI rewards due to an unintentional bug in the
StakingRewards contract, we propose transferring the equivalent amount of GFI from the Goldfinch Treasury to the affected users.
If approved, ~2923 GFI will be transferred to the affected 23 unique wallet addresses.
We should do our best to honor and uphold the intended design of the protocol. The
StakingRewards contract behaved in an unexpected way, and users should not be penalized for interacting with the contract.
Due to a missing modifier on the
unstakeMultiple function in
StakingRewards, users received less GFI rewards than they should have when unstaking their positions. The modifier contained logic to checkpoint rewards before unstaking. Omitting the modifier meant that users only received GFI rewards up to the previous checkpoint.
The usage of the erroneous
unstakeMultiple function has been temporarily removed from the frontend, so the bug is no longer affecting users of the Goldfinch dApp. The proper smart contract fix has been put in place, and will be deployed in the upcoming weeks.
In total, 23 unique wallet addresses lost ~2923 GFI rewards between April 30 to May 13.
To calculate the amount of GFI that should have been disbursed to each affected user, we simulated a
getReward transaction at the block number in which the original
unstakeMultiple transaction was executed. The output of the
getReward transaction represents the exact amount of GFI that should have been claimable when the user unstaked a position at that block number; it accounts for checkpointing and slashing rewards for early unstaking.
See this spreadsheet for full details.
To transfer GFI, will execute a multisend transaction from the Goldfinch Council multisig. No smart contract changes will be required for transferring GFI to affected users.
Increase trust between the team, protocol participants, and community members.
No real downsides except usage of the token, but if the proposal passes, then it is assumed the community believes this is a worthwhile use of the token.
YES: Transfer GFI to compensate affected users
NO: Do not transfer GFI to compensate affected users