The BaseGauge contract lacks any mechanism to update the value in its TimeWeightedAverage Period after initialization.
In the BaseGauge constructor, the TimeWeightedAverage Period is initialized with a value of 0:
The TimeWeightedAverage library provides an update mechanism through updateValue:
However, there is no code path that ever calls TimeWeightedAverage.updateValue. This means the value in the Period struct remains at its initial value of 0, regardless of any activity.
The calculateAverage in TimeWeightedAverage will always return 0.
Implement an update mechanism.
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.