Normal behavior: authorized claimants have 90 days to claim; after that the manager closes the pot and the remainder is split among those who claimed in time. Claiming should only be possible during the 90-day window.
Specific issue: claimCut never checks block.timestamp - i_deployedAt < 90 days. A player can therefore claim their original cut at any time, including after the window has closed and after closePot has already run its distribution. closePot also never zeroes remainingRewards, so a late claimCut still finds a non-zero playersToRewards[player], decrements the stale remainingRewards, and pulls tokens from whatever balance is left in the pot (including the funds left locked by finding #1), corrupting the intended accounting and racing the close distribution.
Likelihood:
Any player who missed the window can call claimCut afterwards; nothing prevents it.
Impact:
The "claim within 90 days or forfeit to in-time claimants" rule is unenforceable; late claimers still take their cut, undermining the incentive design and the post-close balance, and can cause closePot/late-claim transfers to revert on insufficient balance.
A player who never claimed calls claimCut after block.timestamp has passed the 90-day mark (and even after closePot); the call succeeds and transfers their reward, proving the window is not enforced.
Reject claims once the window has elapsed.
The contest is live. Earn rewards by submitting a finding.
Submissions are being reviewed by our AI judge. Results will be available in a few minutes.
View all submissionsThe contest is complete and the rewards are being distributed.