The claimFaucetTokens() function should allow claims when the faucet has sufficient balance. However, it uses <= instead of < at line 184, causing claims to fail when the balance exactly equals the drip amount.
The function reverts when the faucet balance equals the drip amount, permanently locking the last claimable tokens in the contract.
Likelihood: High
Occurs naturally when balance depletes to exactly one drip amount
Deterministic - will happen with mathematical certainty during normal operation
Example: Faucet with 2000 tokens → user1 claims 1000 → 1000 tokens stuck forever
Impact: Medium
One drip amount (1000 tokens) permanently locked per faucet lifecycle
Last eligible user denied their rightful claim
Poor user experience - balance visible but unclaimable
Requires owner intervention to rescue stuck tokens
Output:
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.