diff --git a/workplans/CB-WP-0036-interactive-mode.md b/workplans/CB-WP-0036-interactive-mode.md index a1d0f4d..4233f2f 100644 --- a/workplans/CB-WP-0036-interactive-mode.md +++ b/workplans/CB-WP-0036-interactive-mode.md @@ -84,7 +84,7 @@ Two ways out, and only one is allowed: **The second keeps the server authoritative** and makes the animation a rendering of facts Rust wrote, exactly like the log. -## Tasks +## Task: decide the pace, and what it may not touch ```task id: CB-WP-0036-T01 @@ -92,7 +92,7 @@ status: todo priority: high ``` -**Decide the pace, and what it may not touch.** `decisions/ADR-0020-*.md`. +`decisions/ADR-0020-*.md`. - **Name it, and not `mode`.** `--mode` is already `ScoringMode` (shared/common/coalitions). A second "mode" on the same driver is a @@ -106,13 +106,15 @@ priority: high - **`prefers-reduced-motion` behaves as Speed**, and say so in the ADR rather than leaving it to the CSS. +## Task: transitions, computed in Rust + ```task id: CB-WP-0036-T02 status: todo priority: high ``` -**Transitions, computed in Rust.** The journal delta since the page last +The journal delta since the page last rendered, expressed as movements: what moved, from where, to where, and whether it stays. @@ -124,13 +126,15 @@ whether it stays. animates k..n and nothing else. Replaying a transition twice, or skipping one, must fail a test. +## Task: the movement itself + ```task id: CB-WP-0036-T03 status: todo priority: high ``` -**The movement itself.** A layer above the game layer; card summoned +A layer above the game layer; card summoned larger next to the acting seat, shrinking toward its target; discards drifting without shrinking. @@ -142,13 +146,15 @@ drifting without shrinking. has already been made unplayable once by growing (CB-WP-0028); an overlay layer is the same hazard wearing a different hat. +## Task: the rituals + ```task id: CB-WP-0036-T04 status: todo priority: medium ``` -**The rituals.** Opening — shuffle, deal, first player. Closing — hand the +Opening — shuffle, deal, first player. Closing — hand the cards on, or throw them down. - **Never a `GroundCommand`.** A ritual is a driver-level decision point. @@ -157,13 +163,15 @@ cards on, or throw them down. - **The closing ritual comes before the play-again decision**, which is where the report puts it. +## Task: the hand: dealt from the right, sortable + ```task id: CB-WP-0036-T05 status: todo priority: medium ``` -**The hand: dealt from the right, sortable by drag.** +Cards enter from the right; drag to reorder. - **Control: sorting does not move `state_hash`.** Assert it directly. Sorting that changed the hash would silently break every trial note's @@ -175,13 +183,15 @@ priority: medium Solution.**"* **Do not build a draw the game does not have.** What is explicit here is the *animation* of a draw that already happens. +## Task: evidence + ```task id: CB-WP-0036-T06 status: todo priority: medium ``` -**Evidence.** `evidence/CB-EV-*.md`. +`evidence/CB-EV-*.md`. - **Does it make the game more legible, or only longer?** The report's own claim is that ritual helps focus. That is testable only by playing, and