-
Notifications
You must be signed in to change notification settings - Fork 0
[HT-71]: Branch & play — take over your seat mid-replay in a sandbox #119
Copy link
Copy link
Open
Labels
✅ readyWell-scoped, unblocked, and ready for implementation or review work to begin.Well-scoped, unblocked, and ready for implementation or review work to begin.🎨 designVisual design, interaction design, product tone, layout, animation, or design review work.Visual design, interaction design, product tone, layout, animation, or design review work.📏 rulesClassic Hareeg rule-engine behavior, validation, turn state, scoring, or rule presets.Classic Hareeg rule-engine behavior, validation, turn state, scoring, or rule presets.🔹 p2Normal-priority work that matters but does not block the immediate critical path.Normal-priority work that matters but does not block the immediate critical path.🖥️ uiFlutter screens, navigation, table layout, controls, feedback states, or responsive UI.Flutter screens, navigation, table layout, controls, feedback states, or responsive UI.🙋 hitlRequires human-in-the-loop judgment for rules, naming, design, tone, or product behavior.Requires human-in-the-loop judgment for rules, naming, design, tone, or product behavior.🧠 aiCPU move selection, difficulty, personality, reaction timing, or strategy evaluation.CPU move selection, difficulty, personality, reaction timing, or strategy evaluation.🧩 featureA vertical slice that delivers user-visible behavior or playable product capability.A vertical slice that delivers user-visible behavior or playable product capability.
Description
Metadata
Metadata
Assignees
Labels
✅ readyWell-scoped, unblocked, and ready for implementation or review work to begin.Well-scoped, unblocked, and ready for implementation or review work to begin.🎨 designVisual design, interaction design, product tone, layout, animation, or design review work.Visual design, interaction design, product tone, layout, animation, or design review work.📏 rulesClassic Hareeg rule-engine behavior, validation, turn state, scoring, or rule presets.Classic Hareeg rule-engine behavior, validation, turn state, scoring, or rule presets.🔹 p2Normal-priority work that matters but does not block the immediate critical path.Normal-priority work that matters but does not block the immediate critical path.🖥️ uiFlutter screens, navigation, table layout, controls, feedback states, or responsive UI.Flutter screens, navigation, table layout, controls, feedback states, or responsive UI.🙋 hitlRequires human-in-the-loop judgment for rules, naming, design, tone, or product behavior.Requires human-in-the-loop judgment for rules, naming, design, tone, or product behavior.🧠 aiCPU move selection, difficulty, personality, reaction timing, or strategy evaluation.CPU move selection, difficulty, personality, reaction timing, or strategy evaluation.🧩 featureA vertical slice that delivers user-visible behavior or playable product capability.A vertical slice that delivers user-visible behavior or playable product capability.
Parent
PRD-05: Game History & Replay — #111
What to build
From any point in a replay, let the player take over their own seat (south) and keep playing from there against live CPUs, to try a different line. The sandbox is seeded from the reconstructed snapshot at the chosen step (reusing the replay driver from HT-68), then hands control to a live game: the player acts and the three CPUs respond live.
The branch is a throwaway sandbox — discarded on exit, never written to history, so experimenting can't pollute the archive. The player chooses blind (opponents' hands hidden, a faithful re-attempt) or full-visibility study mode when branching in. If the original match had the coach on, the existing live coach is available in the sandbox (consistent with how that table was actually played); otherwise it is not. Only the human's own seat is playable.
Acceptance criteria
Blocked by