in the BaseGauge
constructor the boostState.minBoost
is denominated in 18 decimals instead of basis points.
This will lead to total DoS of the BaseGauge
contract because of the following block of code in the BoostCalculator::calculateBoost
function:
Since maxBoost == 25000
and minBoost == 1e18
this line will always revert, leading to full DoS of the contract because the calculateBoost
function is practically called in every core function in the contract like stake
, withdraw
, etc.
Normally this wouldn't be a problem since there is GaugeController
that could upgrade the minBoost
, but in this case the GaugeController
doesn't have the implementation to call the setBoostParameters
function, which leads to full contract DoS
Full DoS of both RWAGauge
and RAACGauge
manual review
Fix the value in the constructor or implement a way for GaugeController
to fix the value
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.