The contract declares faucetClaimer as a state variable, but it is only used inside the RaiseBoxFaucet::claimFaucetTokensfunction.
This introduces unnecessary storage writes and increases gas costs. Worse, it creates a persistent state variable that could be accidentally reused or manipulated in future logic, leading to unintended behavior.
Impact:
1.Unnecessary gas cost due to persistent storage writes.
2.State pollution: the variable persists across transactions.
3.Risk of accidental misuse in future contract upgrades or logic.
4.Reduces clarity and violates the principle of least privilege.
Proof of Concept :
Put this test on the RaiseBoxFaucet.t.sol
Recommended Mitigation:
Replace the global state variable with a local variable inside the function.
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.