clay-borg/games/ground
tegwick 7a78c58404 CB-WP-0018-T02: a game log the player can read
bot::Journal -- a shared list of Applied { actor, command, events } the
driver appends to via play_journaled; play delegates with None so
nothing existing changed. BotGame.events only appears after play
returns, which is no use to a page rendered mid-game.

Phrased with record::to_step, the recorder's vocabulary, so what the
player reads is what the scenario file will say, and all 29 GroundEvent
variants now render in words instead of Debug.

A command that produced no events says 'no effect'; the mutation
dropping that branch goes red. Honest limitation recorded: the reported
SOLVE case is resolved inside the system's resolve command, which does
produce events for other seats, so it shows as a selection with no claim
following rather than an explicit 'no effect'. Making it explicit would
mean the renderer deciding why a rule did nothing -- a second
implementation of the rules, which this task's control forbids.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-03 02:15:30 +02:00
..
benches CB-WP-0006 T07: implement K18, amend K14 2026-08-01 12:47:16 +02:00
src CB-WP-0018-T02: a game log the player can read 2026-08-03 02:15:30 +02:00
Cargo.toml CB-WP-0008-T02: cb-play — INTENT stage 0's CLI player 2026-08-01 14:43:53 +02:00