The case where _stddev > _mean
is not addressed in LLMOracleCoordinator.finalizeValidation()
, which causes a revert when called by the last validator.
Statistics.stddev
calculates the mean and standard deviation from the scores of validators for each generation.
Since validators can submit scores as any value (there is no validation), malicious validators can provide a score that results in the standard deviation being greater than the mean. This, in turn, will cause the transaction to fail due to an overflow error:
Additionally, at the end of the finalizeValidation
function:
Impact
Validation will not be finalized, the requester will not receive the best response, and generators and validators will not be paid.
Manual review
Consider handling the case where _mean < _stddev
.
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.