Whenever some action is initiated by the keepers before execution protocol checks price is valid via _validatePrice :
It first check if sequencer is up by checking answer and startedAt from latestRoundData.
If answer return 0 it shows the sequencer is up.
But the issue that there is no addequate check for startedAt because it could return 0 if it is called during an invalid round (which could happen if there is an issue with updating sequencer status, network issues, oracle issues, etc...).
So it can happen that the startedAt have value of 0 and answer also have value of 0, which could lead protocol believe the round is valid and sequencer is up, which then could lead further to protocol using incorrect data for their prices.
Please check the screenshot from discord conversation with chainlink official engineer where he confirms that and recommend checking return value of startedAt:

To see that actual discord message click on this link.
Also more on that can you read on Chainlink official docs here.
So if startedAt is called during invalid round and return 0 this check will pass because block.timestamp will always be greater than GRACE_PERIOD_TIME which would lead wrongly protocol to proceed further.
Due to inadequate check protocol will use incorrect prices.
Manual Review.
Make sure to check if return values are called during an invalid round by making sure startedAt is not 0 like this:
startedAt is only 0 when contract is not initialized on Arbitrum, but it is already initialized on Arbitrum. startedAt is sufficient for the protocol, it does not need roundID. Current documentation of Chainlink does not have this sentence: “This timestamp returns `0` if a round is invalid.“
startedAt is only 0 when contract is not initialized on Arbitrum, but it is already initialized on Arbitrum. startedAt is sufficient for the protocol, it does not need roundID. Current documentation of Chainlink does not have this sentence: “This timestamp returns `0` if a round is invalid.“
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.