governance -> gauges -> GaugeController.sol -> Line 278
The GaugeController contract’s updatePeriod
function calculates the start of the next period using a "+2" multiplier instead of the expected "+1" multiplier. This miscalculation may result in longer-than-intended periods, causing delays in reward emission updates and misalignment of the time‑weighted average tracking.
Intended Behavior:
The design suggests that periods should roll over continuously, with the next period beginning immediately after the current one ends. Typically, a "+1" multiplier is used to calculate the start of the next period.
Observed Behavior:
The function uses the following calculation:
This approach adds an extra period’s worth of time (i.e., "+2" instead of "+1") to the current period’s calculation.
Implications:
Such misalignment can delay reward distribution updates and skew the time‑weighted averages used in reward calculations, potentially affecting overall protocol economics.
Reward Distribution Errors:
If periods extend longer than intended, rewards may be distributed on an unintended schedule, leading to either delayed or reduced reward emissions.
User Experience:
Users may experience unexpected delays in reward updates, reducing transparency and trust in the reward mechanism.
Economic Impact:
Misaligned periods could alter the effective emission rate per period, thereby affecting tokenomics and overall reward fairness.
Manual Review
Adjust Calculation:
If the intended behavior is a continuous rollover, modify the calculation to:
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.