The contract mistakenly uses indexTokenPrice
to validate the price of the long token. This leads to an incorrect comparison when verifying the long token’s price because it references the wrong field (prices.indexTokenPrice
instead of a prices.longTokenPrice
).
In the _validatePrice
function:
It reuses prices.indexTokenPrice for the long token checks. If longToken is not the same as indexToken, then the long token’s price is never validated properly against its own values.
Medium
Manual
Fixed code:
Likelihood: None/Very Low, everytime the keeper send a price via run/runNextAction (sent by the Gamma keeper). Impact: Medium/High, does not check the longTokenPrice, it could go out of range. Keep in mind indexToken == longToken, an error from the keeper could be considered informational.
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.