Users can vote for multiple gauges at the same time and screw up the weights
Currently gauge weights are user balances are broken due to another bug that must be fixed. However sill after fixing it users will still be able to
vote
multiple gauges at the same time and screw up the weights and rewards.
https://github.com/Cyfrin/2025-02-raac/blob/main/contracts/core/governance/gauges/GaugeController.sol#L190
This is bad as gauge weights are meant to determine how much each gauge is in favor of the users and increase it's reward share. We can clearly see that rewards for each gauge are based off it's percentage share of the totalWeight
, however if users vote for 2 their entire balances for 2 gauges at the same time their combined share will be more than totalWeight
and we will distribute more rewards than necessary.
https://github.com/Cyfrin/2025-02-raac/blob/main/contracts/core/governance/gauges/GaugeController.sol#L360
Example:
User has 10k voting power, total is 100k
Both gauges are at 45k weight
He votes for both of them
totalWeight
is 100k, but the combined weight of those 2 gauges is 110k, thus both receive 55% of the rewards.
Users can vote for multiple gauges at the same time with the same weight in order to mess up the reward.
Manual review
Remove the weight from the old gauge and add it to the new one.
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.