Calls to Oracles don't check for stale prices.
None of the oracle calls check for stale prices, opening potential staleness issues:
(,int256 priceEurUsd,,,) = Chainlink.AggregatorV3Interface(eurUsd).latestRoundData();
(,int256 assetPriceUsd,,,) = Chainlink.AggregatorV3Interface(asset.token.clAddr).latestRoundData();
Potential for incorrect/outdated prices
Manual review
Read the updatedAt
parameter from the calls to latestRoundData()
and verify that it isn't older than a set amount, eg:
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.