According to the docs StrategyOp::_harvestAndReport, StrategyArb::_harvestAndReport and StrategyMainnet::_harvestAndReport are crucial for accounting purposes and therefor should return an accurate value of all funds currently held by the strategy.
The issue arises since the sum in the return Value simply forgets to add uint256 claimable
StrategyOp::_harvestAndReport, StrategyArb::_harvestAndReport and StrategyMainnet::_harvestAndReport:
As you can see on the highlighted lines of code, claimable correctly gets fetched, but is than forgotten in the return statement of _totalAssets potentially critically harming relying functions with an incorrect return value.
According to the Documentation the _harvestAndReport function is considered as THE source of truth for accounting purposes (quote: "A trusted and accurate account for the total amount of 'asset' the strategy currently holds including idle funds."), therefore the impact of returning an incomplete value should be considered High by default.
Likelihood: High
Impact: High
Severity: High
Manual review.
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.