Description
Quests with deadlines have no on-chain enforcement. A player can complete an expired quest and still claim rewards.
Expected Behavior
The contract should revert if a player attempts to complete a quest past its expiry time.
Proposed Fix
Add a timestamp guard in the completion function:
require(block.timestamp < quest.expiresAt, "Quest: expired");
Acceptance Criteria
Description
Quests with deadlines have no on-chain enforcement. A player can complete an expired quest and still claim rewards.
Expected Behavior
The contract should revert if a player attempts to complete a quest past its expiry time.
Proposed Fix
Add a timestamp guard in the completion function:
Acceptance Criteria