The GaugeController contract uses inconsistent decimal scaling for weights, which leads to incorrect calculations.
Vote weights have no decimals (WEIGHT_PRECISION = 10000):
Initial period weights have no decimals:
Gauge weights get 18 decimals in _updateGaugeWeight:
updatePeriod uses g.weight:
There are more functions that use weights.
High: Incorrect weight scaling, leading to wrong calculations.
Ensure consistent decimal scaling across all weight-related operations.
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.