distributeRewards() internally calls _calculateReward() which calculates gaugeShare incorrectly. It ought to be:
This is because of the following; imagine:
typeShare for RAAC is 50% and remaining for RWA gauge types
There are 5 RAAC gauges with weight 25 each. And there are 3 RWA gauges with weight 25 each.
Consider period emissions = 200
RAAC gauges are entitled to 50% emissions i.e. 50% of 200 = 100
The current RAAC gauge is eligible for gaugeWeight / totalRAACGaugeWeights or 25 / (5 * 25) or 1/5 of this i.e. 100/5 = 20. This should have been the returned value from _calculateReward().
Instead it does:
50% * emissions * gaugeWeight / totalWeightOfRAACplusRWAgauges = 50% * 200 * 25 / 200 = 12.5
What this means is: First calculate reward for each gauge according to their share of weight, irrespective of gauge type AND THEN give them a fraction of that depending on their type. That's not how the setting is supposed to work.
Incorrect rewards distributed to gauges.
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.