Files
spigot-quest-board/knowledge/user-stories/us-007-expire-quests-and-claim-held-items.md
dmg de8ff83c3c
Release / release (push) Successful in 2m40s
CI / build (push) Successful in 1m17s
feat(notifications): add login quest counts and claim reminders
2026-09-06 21:34:24 -04:00

2.1 KiB

type, title, description, status
type title description status
User Story US-007: Expire quests and claim held items Hold delivered blocks and returned rewards until their owner safely claims them. done

US-007: Expire quests and claim held items

As a quest issuer, I want delivered blocks and returned rewards held at the shared quest board so that I can retrieve them safely.

Acceptance criteria

  • An uncompleted quest expires seven days after its creation time.

  • Expiration removes the quest from active listings and converts its exact escrowed reward into a claim for the issuer.

  • Completed-quest claims contain the exact block items delivered by the completing player.

  • Claims from completion, cancellation, and expiration can be collected through any registered board.

  • The board clearly distinguishes delivered blocks from returned rewards.

  • Online issuers receive a real-time message when items become claimable.

  • Offline issuers receive a message on their next login.

  • When player commands are enabled, /quests claim collects the same pending claims.

  • Items are inserted into the claimant's inventory where space permits; overflow is dropped safely at their feet with a clear message.

  • A claim is removed only after all of its items have been inserted or dropped successfully.

  • Pending claims and notification state survive logout and server restart without duplication or loss.

  • Automated tests verify expiry boundaries, each claim source, notifications, overflow, failure recovery, and persistence.

  • Every login with pending claims shows “You have items waiting to be claimed. Visit the quest board to collect them.” independently of previous notification delivery.

  • Reminders stop once all items are claimed, preserve real-time notifications, and do not change claims or item storage.

  • Automated tests verify recurring reminders across logins and reloads, isolation by player, and silence after collection.