_harvestAndReport()
has following comment
here it is getting quite confusing, cause contract considering `alETH` as ASSET and WETH
as UNDERLYING.
But in function implementation its adding all
if i go though code comment as i mentioned above, its intend to include all assets(all type of funds i.e both alETH & WETH) here
_totalAssets here includeing
Unexchanged Amount from Transmuter
alETH balnce of contract
WETH balance of contract
But here it forgot to include claimable balance from transmuter
cause according to Transmuter Docs
When a user deposits synthetic tokens into the Transmuter, the tokens are added to their UnexchangedBalance
.
Over time, as collateral becomes available, the Transmuter converts the synthetic tokens to the underlying asset. This process reduces the UnexchangedBalance
and increases the ClaimableBalance
.
So its possible that a significant amount of Claimable amount will be left behind.
Possible solution is that
totalAssets should also add claimable
to itself as it defined inside _harvestAndReport()
_harvestAndReport() should always called after claimAndSwap()
https://github.com/Cyfrin/2024-12-alchemix/blob/main/src/StrategyOp.sol#L173
Manual review
Possible solution is that
totalAssets should also add claimable
to itself as it defined inside _harvestAndReport()
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.