The SeasonFacet
calculates rewards for users calling the sunrise
function using the stale price fetched from LibWell.getWellPriceFromTwaReserves(C.BEAN_ETH_WELL)
. This method reads the Bean/ETH
price calculated by the Minting Well from storage, resulting in the retrieval of stale price data. This stale price calculation can lead to discrepancies between the actual and calculated rewards.
Using stale price data to calculate rewards introduces a significant risk of inaccurate reward distribution. If the live price of Bean/ETH
deviates from the stale price used for reward calculation, users may receive more or fewer rewards than intended. This discrepancy can result in protocol losses or user dissatisfaction, undermining the fairness and integrity of the reward system.
It is recommended to update the reward calculation mechanism in the SeasonFacet
contract to fetch the live price of Bean/ETH from an oracle or another reliable source instead of relying on stale price data. By incorporating live price data, the reward distribution process can accurately reflect market conditions, ensuring fair and transparent rewards for users.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.