Review: Move step-by-step flow to /terms page + create terms page

review-831-2026-04-05 Review

review ready

Verdict: READY

Template Completeness

  • [x] Type -- Feature
  • [x] Lineage -- present (UX improvement, /terms 404s)
  • [x] Repo -- forgejo_admin/twitch-2k-wager
  • [x] User Story -- present, well-formed (challenger wants dedicated terms page)
  • [x] Context -- present, clear motivation (action-first /play page)
  • [x] File Targets -- 2 files listed with clear descriptions
  • [x] Acceptance Criteria -- 4 criteria, all testable
  • [x] Test Expectations -- present (200 status, no steps on /play)
  • [x] Constraints -- present (keep it simple)
  • [x] Checklist -- present
  • [x] Related -- references #52 (original steps ticket)

Traceability

  • [x] story:challenger-pay label -- present on board item
  • [x] story entry verified -- "challenger-pay" row exists in project-twitch-2k-wager user-stories table
  • [ ] story note MISSING -- story-twitch-2k-wager-challenger-pay referenced in project page but does not exist in pal-e-docs. Pre-existing gap across all challenger-pay tickets; not a blocker for this ticket.
  • [x] arch:twitch-2k-wager-app label -- present on board item
  • [ ] arch note MISSING -- No arch-twitch-2k-wager-app note exists. The project has arch-domain-twitch-2k-wager, arch-dataflow-twitch-2k-wager, and arch-deployment-twitch-2k-wager, but no app-specific architecture note. Pre-existing gap; not a blocker for this pure frontend reshuffling ticket.
  • [x] Forgejo issue -- forgejo_admin/twitch-2k-wager#58, open

File Targets

  • [x] src/routes/terms/+page.svelte -- NEW file, confirmed: directory does not yet exist (currently 404s as noted). Content to move: step-by-step flow from /play (lines 50-57), payout details and FAQ from landing page (+page.svelte lines 237-281).
  • [x] src/routes/play/+page.svelte -- verified: file exists, steps list confirmed at lines 50-57 (ol.steps with 6 li items). Already has a "Terms" link in footer (line 105).

Repo Placement

Correct. Issue filed on forgejo_admin/twitch-2k-wager, all file targets are in this repo. Single-repo scope.

Dependencies

No blockers. Board item #812 (/play guest checkout route) is done. Board item #789 (landing page prototype) is done. No in_progress items conflict. The /terms link already exists in both /play footer (line 105) and landing page footer (line 285) -- currently 404ing, which this ticket fixes.

Acceptance Criteria

All 4 criteria are agent-verifiable:
  • "AC1: /terms page exists with step-by-step flow + payout details" -- verifiable by checking route file exists and contains expected content.
  • "AC2: /play page shows tiers immediately (no steps above them)" -- verifiable by confirming ol.steps removed from play/+page.svelte.
  • "AC3: Terms link at bottom of /play links to /terms" -- already present at line 105. Agent should confirm it still exists after changes.
  • "AC4: Mobile-friendly, dark theme" -- verifiable by checking CSS uses existing CSS custom properties (var(--color-*)).
Note: Issue says "payout details, FAQ (from main landing page)" in file targets but does NOT say to remove them from the landing page. Agent should clarify: copy or move? The acceptance criteria say "shows tiers immediately" only for /play, not for landing page. Recommend treating as copy (landing keeps its content, /terms gets the detailed version).

Blast Radius

Low. Changes are purely frontend, two Svelte pages in the same repo. The .steps CSS class is defined in both app.css (global, used by landing page) and scoped in play/+page.svelte. Removing the ol.steps from /play will not affect landing page or other pages. The payout/+page.svelte also uses a .steps class but it is for a different context (payout flow steps) and will not be affected. No API changes, no database changes, no deployment changes.

Decomposition Assessment

2 file targets, 1 repo, 4 acceptance criteria. Well under the three-thing limit and five-minute rule. No independent subtasks that need parallelization. No decomposition needed.

Recommendation

No action needed -- ticket is READY for dispatch.
Non-blocking observations (pre-existing gaps, not specific to this ticket):
  • [SCOPE] Create story note story-twitch-2k-wager-challenger-pay (referenced by project page but missing from pal-e-docs). Affects all challenger-pay tickets.
  • [SCOPE] Create architecture note arch-twitch-2k-wager-app for the SvelteKit frontend component. Affects all arch:twitch-2k-wager-app labeled tickets.