The BaseGauge
contract constructor initializes boostState.minBoost
with a value (1e18) that is significantly larger than maxBoost (25000), which breaks the boost calculation logic.
The minBoost value of 1e18 is significantly larger than the maxBoost value of 25000, which breaks the intended boost calculation logic where minBoost should represent 1x (10000) and maxBoost should represent 2.5x (25000).
in the constructor:
The incorrect minBoost value will cause the boost calculation to malfunction since:
minBoost (1e18) > maxBoost (25000)
This breaks the calculateBoost function in the BoostCalculator library BoostCalculator::calculateBoost
and cause an underflow revert error due to uint256 boostRange = params.maxBoost - params.minBoost;
Manual code review
Fix the boost parameters:
boostState.minBoost = 10000; // 1x base
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.