The oracle does not validate for minAnswer/maxAnswer which can lead to incorrect weight updates.
The ChainlinkOracle::_getData and MultiHopOracle::_getData fail to check for the minAnswer/maxAnswer range.
The Chainlink documentation notes that "On most data feeds, these values are no longer used and they do not prevent your application from reading the most recent answer.". However, this is not the case on Arbitrum, as for most data feeds (including ETH and most stablecoins), these values are indeed used, for example, the ETH/USD aggregator: link
Hence in case of a price crash / fluctuations, incorrect price will be used to calculate the weights for the pool.
In case of sharp fluctuations, this can affect the weight calculation which is updated at intervals using these oracle prices, hence can even lead to loss of funds as rule uses incorrect values.
Manual Review
If the price is outside the minPrice/maxPrice range of the oracle, activate a breaker in order to mitigate out of bound prices.
LightChaser: ## [Low-25] Chainlink answer is not compared against min/max values
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.