Skip to content

feat(cardshed): round/match results + settings + rules help (M10+M11) #150

@w7-mgfcode

Description

@w7-mgfcode

Sub-issue of #146. PRP 3 milestones M10 (RoundResult / S07 + MatchResult / S08) + M11 (Settings / S10 + RulesHelp / S09). Reference: `PRPs/cardshed-03-experience-prp.md` lines 915–951.

Scope

M10 — Results

  • `docs/SCREENS/round-result.md` + `docs/SCREENS/match-result.md` (Stitch)
  • `apps/ui/src/features/result/{RoundResult,MatchResult}.tsx`
  • `matchStore.actions.startNextRound()` → calls `@cardshed/core.startNewRound(prev, newSeed)`

M11 — Settings + RulesHelp

  • `docs/SCREENS/settings.md` + `docs/SCREENS/rules-help.md` (Stitch)
  • `apps/ui/src/features/menu/{Settings,RulesHelp}.tsx`
  • Settings persisted in `localStorage["cardshed:settings"]` (default player count, animation speed, a11y toggles)
  • RulesHelp opens via Radix Dialog from MainMenu and from Table's top-right "?"

Acceptance

  • `Skill: stitch-design` → all four screens committed
  • After a winning action, RoundResult shows within 1s
  • "Next round" → dealer rotates clockwise (assert via `@cardshed/core.rotateDealer`)
  • Discard pile does NOT carry across rounds — `startNewRound` gathers all
  • After MVP-defined N rounds (default N=1 per contradiction T9 — UI design system foundation (Tailwind + Stitch + tokens) #9), MatchResult shows
  • Settings persists across reloads
  • RulesHelp closes on Escape (Radix Dialog default)
  • `agent-browser` captures `dogfood-output//{m10-result,m11-settings}/`

Common bugs (from PRP 3)

  • Keeping discard pile across rounds (FORBIDDEN)
  • Not rotating dealer
  • Not closing dialog on Escape

Complexity

S + S = ~6 hours.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions