distributeRevenue will revert most of the times due to a for loop with miscalculated amounts.
notifyRewardAmount is used by the gauge controller to increase the rewards for this gauge. Where if the reward surpass periodState.emission or the contract balance, the TX reverts.
With than in mind when we look into how _distributeToGauges calls each gauge notifyRewardAmount we can spot an issue.
Even if 1 of these gauges doesn't have enough balance of it's reward token, or if it surpasses it's periodState.emission the whole TX would revert.
_distributeToGauges will revert most of the time, preventing revenue distributions
Manual review
Either add this statement up into a catch block. Yo can also do some calculation in the for loop to make sure the vault has balance and the new amount won't breach the emission cap, if it violates one of the 2, either skip it or lower the amount
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.