Ensure market.receivedFees
is updated after converting fees to WETH in convertAccumulatedFeesToWeth
to maintain correct state transitions. The current code does not do this.
The function retrieves the accumulated fees for an asset (market.receivedFees.tryGet(asset)
), converts them to WETH, and calls _handleWethRewardDistribution
.
It fails to update the receivedFees
for the asset after processing, meaning the same fees are reprocessed indefinitely in subsequent calls.
Fees already converted to WETH remain in receivedFees
, allowing keepers to repeatedly claim them. Causes double-spending of fees, corrupting reward distributions and draining protocol funds.
Manual Review
Deduct the processed fees for the asset from market.receivedFees
in convertAccumulatedFeesToWeth
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.