Voting every 10 days is broken? Incentives bug?

Since EIP 1559 gas prices have been consistently high. I noticed that the MIM Pool were offering great external incentives through bribe.crv.finance which make up for the high transaction costs.

More than 10 days ago I reset my vote for the previous pool from 0 % to 100 %, and then set my vote for MIM to 100 %. Everything worked as expected.

Not knowing if a wallet is eligible for a reward if a vote has not been cast since the reward has been added I decided to reset my vote for MIM and cast it again. Resetting worked fine this time, but recasting the vote did not.

The page where you vote now mentions that “You can vote only once in 10 days” when selecting the gauge that just got reset. Looking at the voting history it seems that there is no other addresses capable of placing a vote of 0 % followed by a vote of 100 % for the same gauge.

I’ve also noticed something that I thought was very strange but might be explained by the fact that those 10 days are limited to calling a single gauge twice. The incentive for the MIM pool has been very volatile compared to other trending pools in the past while being on it’s upward trajectory.

Since the behavior of setting your vote to 0 % followed to 100 % is not logical from the internal workings of the DAO this limitation is backfiring for external incentives where people seem to accidentally set their vote to 0 % and then being locked out from setting it to 100 % again.

Can we fix this somehow or update the interface to always warn “You can only vote or reset your vote for a single gauge once every 10 days.” instead of only warning you after you already messed up?

I didn’t have the same issue, but something close. I just got a failed transaction that on Etherscan said something like ‘voting too often’. Someone in Telegram explained there was a 10 day limit.

FWIW - It would be nice if voting were less expensive in terms of gas and if any error messages were more clear.

Also, is it really necessary to zero out one vote on a pool to cast a vote for a different pool? Seems like it would be a fairly easy thing to code to reduce all the other votes in proportion to the new vote.