The protocol plans to deploy on multiple L2 chains, including Optimism, Arbitrum, and Base. However, the ChainlinkOracle contract lacks a critical L2 sequencer uptime feed check. This omission could lead to an incorrect price when the L2 sequencer experiences downtime.
While the likelihood of an L2 sequencer downtime is low, the potential impact of this incorrect price is medium because it affects the weightage and thus impacts the core functionality. Therefore, this finding is submitted as an MEDIUM** **issue.
The ChainlinkOracle contract currently fetches price data from Chainlink's latestRoundData() function but does not validate the sequencer's operational status. For L2 environments, verifying the sequencer's uptime status is crucial to ensuring the reliability of Oracle data.
Relevant code snippets:
In the absence of a sequencer uptime feed check, the oracle may:
Return stale or incorrect data during sequencer downtime.
This leads to incorrect weightage calculation affecting the core functionality.
Manual review
Add an L2 sequencer uptime check. Chainlink L2 sequence doc.
LightChaser: ## [Medium-6] Missing checks for whether the L2 Sequencer is active ## [Low-22] Chainlink sequencer status is not checked
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.