Rock Paper Scissors

First Flight #38
Beginner FriendlySolidity
100 EXP
View results
Submission Details
Severity: medium
Invalid

No Handling for Inactive Game Start

Summary

If a player creates a game and no one joins, there’s no mechanism to refund or cancel after time passes.

Vulnerability Details

Games remain in limbo without timeout tracking on the open state.

Impact

  • Fund lock risk

  • Poor user experience

Tools Used

  • Manual test case

  • Simulation of idle states

Recommendations

Track startTime and allow cancelation:

mapping(address => uint256) public gameStartTime;
function cancelGame() public {
require(block.timestamp >= gameStartTime[msg.sender] + 1 days, "Too early to cancel");
// refund logic
}
Updates

Appeal created

m3dython Lead Judge about 2 months ago
Submission Judgement Published
Invalidated
Reason: Non-acceptable severity
Assigned finding tags:

Informational

Code suggestions or observations that do not pose a direct security risk.

Support

FAQs

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