Raisebox Faucet

First Flight #50
Beginner FriendlySolidity
100 EXP
View results
Submission Details
Impact: low
Likelihood: low
Invalid

Missing event when dailyClaimLimit value change

Root + Impact

Description

  • Every function on this contract has its own event to help off-chain data fetching.

  • This functions doesn't have its own event to track the change of dailyClaimLimit value off-chain.

function adjustDailyClaimLimit(uint256 by, bool increaseClaimLimit) public onlyOwner {
if (increaseClaimLimit) {
dailyClaimLimit += by;
} else {
if (by > dailyClaimLimit) {
revert RaiseBoxFaucet_CurrentClaimLimitIsLessThanBy();
}
dailyClaimLimit -= by;
}
@> //no event
}

Risk

Likelihood:

  • Reason 1: This will occur every time a user interacts with the function, since no event is emitted to log the action on-chain.

  • Reason 2: Off-chain applications relying on logs for state synchronization (such as UIs or The Graph subgraphs) will not detect these state changes automatically.

Impact:

  • Impact 1: The impact on protocol logic is very low, as the absence of an event does not affect the correctness of on-chain operations.

  • Impact 2: However, it can make integration with front-end or off-chain services more complex, as they would need to perform manual state reads instead of listening for emitted lo

Proof of Concept

Recommended Mitigation

Emit a dedicated event (e.g., DailyClaimLimitChanged(uint256 newValue) ).
This improves transparency, eases integration with monitoring tools, and simplifies debugging or auditability.

+ event DailyClaimLimitChanged(uint256 newValue);
function adjustDailyClaimLimit(uint256 by, bool increaseClaimLimit) public onlyOwner {
if (increaseClaimLimit) {
dailyClaimLimit += by;
} else {
if (by > dailyClaimLimit) {
revert RaiseBoxFaucet_CurrentClaimLimitIsLessThanBy();
}
dailyClaimLimit -= by;
}
+ emit DailyClaimLimitChanged(dailyClaimLimit);
}
Updates

Lead Judging Commences

inallhonesty Lead Judge 9 days ago
Submission Judgement Published
Invalidated
Reason: Non-acceptable severity

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.