From 4cfac860aa0411405864dab38d78e693d5275512 Mon Sep 17 00:00:00 2001 From: nitrix Date: Thu, 5 Mar 2026 10:58:10 +0100 Subject: [PATCH] Add US-20 (404 page) to user stories Catch-all route for unknown paths with link back to home. Co-Authored-By: Claude Opus 4.6 --- spec/userstories.md | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/spec/userstories.md b/spec/userstories.md index 94d62dd..a143fc7 100644 --- a/spec/userstories.md +++ b/spec/userstories.md @@ -4,9 +4,9 @@ ## Status -- Total stories: 20 +- Total stories: 21 - Complete: 0 -- Remaining: 20 +- Remaining: 21 ## Token Model @@ -467,3 +467,20 @@ The following terms are used consistently across all stories: **Notes:** The overseer identified that using the expiry date as a deletion mechanism (setting it to today or a past date in US-5) was unintuitive and conflated two different actions. US-5 now enforces that the expiry date can only be set to a future date. If the organizer wants the event gone immediately, they use this explicit deletion feature. Unlike cancellation (US-18), which keeps the event visible with a cancellation notice until the expiry date, deletion removes the event entirely and immediately. This is the organizer's "nuclear option" — useful when the event was created by mistake, contains wrong information, or is no longer needed at all. The deletion behavior is identical to what US-12 does automatically after expiry, but triggered manually and immediately by the organizer. +--- + +### US-20: 404 page + +**As a** user who navigates to a non-existent URL, +**I want to** see a helpful error page, +**so that** I can find my way back instead of seeing a blank screen. + +**Acceptance Criteria:** +- [ ] Unknown routes show a "Page not found" message +- [ ] The page includes a link back to the home page +- [ ] The page follows the design system + +**Dependencies:** None + +**Notes:** Identified during US-1 post-review: navigating to an unknown path currently shows a blank page because the Vue Router has no catch-all route. This is a small UX story but important for polish. Note: This story has no structural dependencies but requires the frontend scaffold from T-4 (which includes T-1) to be practically implementable. +