Skip to content

feat: implement quest expiry enforcement with on-chain timestamp vali…#224

Open
JoaquinSkorg wants to merge 1 commit into
MindFlowInteractive:mainfrom
JoaquinSkorg:main
Open

feat: implement quest expiry enforcement with on-chain timestamp vali…#224
JoaquinSkorg wants to merge 1 commit into
MindFlowInteractive:mainfrom
JoaquinSkorg:main

Conversation

@JoaquinSkorg
Copy link
Copy Markdown

@JoaquinSkorg JoaquinSkorg commented May 26, 2026

Closes #214


Modifications made to project passes requirements and criteria stated.

…dation

- Add timestamp guard in complete_quest to prevent expired quest completion
- Require current_time < quest.expires_at for successful completion
- Emit QUEST_EXPIRED event when quest is past its deadline
- Add comprehensive test coverage for expiry scenarios:
  - test_complete_quest_before_expiry_succeeds: verify pre-expiry completion
  - test_complete_quest_exactly_at_expiry_fails: boundary condition at exact timestamp
  - test_complete_quest_after_expiry_fails: reject post-expiry attempts
  - test_complete_quest_no_expiry_always_succeeds: handle indefinite quests
  - test_expiry_event_emitted_on_rejection: verify event publication
  - test_expiry_event_panic_message_correct: validate panic message
- All 32 tests passing with expiry enforcement active
@drips-wave
Copy link
Copy Markdown

drips-wave Bot commented May 26, 2026

@JoaquinSkorg Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Quest Expiry Timestamp Validation

1 participant