The contract assumes that the game will always end properly via the endGame
function. There is no mechanism to handle scenarios where a player might abandon a game without completing it.
Stalled Games: Players who abandon games may have their state preserved indefinitely, preventing them from starting new games.
Storage Bloat: Accumulated data from incomplete games can consume unnecessary storage on the blockchain.
Resource Wastage: The contract may maintain unnecessary state information, leading to inefficiencies.
Game Timeout Mechanism: Implement a timeout feature that automatically ends games after a certain period of inactivity.
State Cleanup: Provide a function to clean up or reset game states for inactive players.
Player Notifications: Inform players about the timeout policy to encourage timely completion of games.
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.