The protocol has competing boost calculation implementations, with BaseGauge and veRAACToken bypassing the intended BoostController architecture.
The BoostController contract is designed to manage protocol-wide boost mechanics including user boost delegations, pool-specific boost tracking, and boost calculations. However, BaseGauge and veRAACToken bypass this intended architecture by calculating boosts independently, not respecting delegated boost and ignoring specific boost states.
Example in BaseGauge:
veRAACToken maintains its own boost state:
High: No contract integrates with BoostController's systems, which breaks the boost mechanics.
Consider consolidating all boost logic in BoostController, removing duplicate boost implementations and updating all contracts to use BoostController.
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.