The reward for the claimants after the close of the pot is calculated incorrectly.
The closePot::Pot.sol
function has to distribute the remainingRewards
(after sending the managerCut to the ContestManager contract) to the users that already claimed their rewards a.k.a the Claimants. The formula for executing this action isn't correct:
The amount left as remainingRewards is divided by the i_players.lenght array, which is the array with all of the players that could get their rewards in the 90 days period. Eligible for this claimantCut are only the players that have claimed their reward, so the total amount of awards left should be divided by the length of the claimants
array.
The closePot
function could endup reverting due to insufficient amount of token in the contract or a small amount of token could be distributed and the leftovers could endup locked forever in the contract -> leading to a smaller reward for the claimants.
Manual Review
Change the formula for calculating the claimantCut
.
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.