# K18: the benchmark workload, expressed in the scenario format. # # Until CB-WP-0006 T07 the bench hardcoded this command sequence in Rust # and never touched `ScenarioFile`, so K18 โ€” "Criterion benches driving # the same scenario format at scale" โ€” was false, and # MetricsAndScenarios ยง3's "benchmarks live in benchmarks/" pointed at a # directory containing only `baselines/`. # # Mirrors the CB-RES-0001 harness shape: 3 players, commit/reveal round. # The bench replays these commands per round at scale; `bench_shape` in # the aggregate crate pins the resulting 7 commands / 13 events, so a # change here that alters the shape breaks a test rather than silently # rescaling AM-6 and AM-7. # # NOT an AM-3 subject. AM-3's baseline is a declarative *game object* # (~36 LOC, boardgame.io) โ€” moves, turn order, rules. This is a command # list; the rules live in games/ground (1,575 lines). Marking this file # as AM-3 would compare a script to a game definition, which is the # category error AM-3 is currently blocked on. scenario: ground/bench-synthetic-3p description: One 3-player GROUND round, replayed at scale by the Criterion bench. covers: [] seed: 42 setup: players: 3 preset: standard-3p commands: - actor: P1 cmd: select_action args: { action: ATTACK, target: P2 } - actor: P3 cmd: select_action args: { action: SUPPORT, target: P2 } - actor: P2 cmd: select_action args: { action: GROUND } - actor: SYSTEM cmd: reveal - actor: P2 cmd: choose_ground_mode args: { mode: GR } - actor: SYSTEM cmd: resolve - actor: SYSTEM cmd: end_round expect: {}