when chainlink oracle node fulfilling request, requestId is not check aginst sendRequest, this will result in data mismatch feedings in consective requstings.
Requests are send to chainlink decentralized oracle network to process and fetch offchain prices via BaseCahinlinkFunctionOracle::sendRequest(). A requstId is saved to state variable "s_lastRequestId" to identify different requests. However, this value is not checked when oracles fulfilling requests in BaseChainlinkFunctionsOracle::fulfillRequest(), where in_ _processResponse, data are directly processed.
A major issue could come like this:
RAACHousePriceOracle sent two consecutive requsts to fetch different house's price. The later request was fulfilled firstly while the first request fulfilled sencondly. As a result, prices are assigned to wrong houseId.
broken oracle reponses process
manual
consider add requstId check when processing response
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.