--- id: CB-WP-0040 kind: meta title: "What a statement is about" status: done state_hub_workstream_id: "67f76fe2-0fd9-4ae6-a09b-1b5dc46d0e02" --- # Purpose ``` structural tier M (fixes the vocabulary the loop uses to describe its own defects, and states where the repo is going) chaos d8 = 5 → no override declared tier M ``` **Declaration 12 of chaos window 3 — the window's last.** Its verdict is due, and this pass does not write it. ## The report > *"It is hard for me to follow what you mean by error, failure, finding > and correction because i often cant tell if we are talking about the game > mechanics, the simulator, the telemetry, intended results, > visualization, etc."* **The maintainer is right and the confusion is ours.** Three review rounds produced twenty-odd defect statements spanning five different systems, all called "errors". ## Task: the taxonomy, grounded in canon ```task id: CB-WP-0040-T01 status: done priority: high state_hub_task_id: "75758aff-724a-4e25-8597-b0a5135774f8" ``` **Controls:** - **grounded, not invented** — named sources, because a private vocabulary is a second thing to learn; - **worked examples from this repo**, or the taxonomy was invented rather than observed (GameDesign §2); - **a falsifier**: what would show the strata are cut wrong. **Done 2026-08-08.** [`specs/Taxonomy.md`](../specs/Taxonomy.md). **Six strata** — GAME, MODEL, ENGINE, INSTRUMENT, ACCOUNT, PRESENTATION — from **Sargent**'s problem entity / conceptual model / computerized model, extended where a simulation-V&V frame stops (we also own an *instrument* and an *account*). **The two relations are the part that was missing.** GAME↔MODEL is **validation**; MODEL↔ENGINE is **verification**. Nearly every argument we have had about "is this our bug or their gap" was that distinction going unnamed. **Fault / error / failure** from **Avizienis et al.**, applied within a stratum, plus the rule that explains the whole review history: **a failure in one stratum is a fault in the next.** **And it finally defines the family ADR-0018 could only point at:** a wrong-subject error is *an ACCOUNT failure with no INSTRUMENT fault*. The measurement is right about its own subject; the sentence is about a different one. **That is why tests never catch these** and why the fix is never "add a test to the engine". **MDA** supplies the game-facing layers and one hard limit: **our panels measure dynamics, our trial logs sample aesthetics, and neither substitutes for the other.** A win rate does not answer "is it fun". ## Task: positioning, and the tracks ```task id: CB-WP-0040-T02 status: done priority: high state_hub_task_id: "bfc565ad-4eab-4933-9cc5-2581a797e48a" ``` **Controls:** - **name the competition and be fair to it** — a differentiator that requires misdescribing Ludii is not one; - **every claimed differentiator is visible in the repo already**, not aspired to; - **a falsifier for the whole document.** **Done 2026-08-08.** [`specs/Positioning.md`](../specs/Positioning.md). **Ludii is the closest relative and the right benchmark** — ludemes, a game in a QR code, far broader than us. If our answer to *"why not Ludii"* is "ours is in Rust", there is no answer. **The four differentiators, each already built:** the measurement is under suspicion by construction; authority is federated, so the owner rules and we report; what is *not* mechanism is modelled too; and a hypothesis is a package with declared criteria rather than a patch. > **Clay-borg is a design-evidence instrument.** Its product is an > auditable answer to *what does this rule do at the table, and how much > should you trust that*. Anyone can produce the number. **Three tracks named, none started** — a second game; game theory as the lens on dynamics; assimilated knowledge about why games work. **Track A is the falsifier for the entire positioning.** If a second game cannot be defined without reshaping the kernel, then "GROUND is an example" was never true and the differentiators belong to one bespoke tool rather than to a framework. **Every abstraction in this repo currently has exactly one instance**, which by our own rule means it may have been invented rather than observed. ## Task: survey the field and persist it ```task id: CB-WP-0040-T03 status: done priority: medium ``` `simulators/`, one profile per system, comparable schema. **Controls:** - **every claim carries its source**, and a claim from background knowledge is marked `unverified` — this directory was written straight after three review rounds whose entire yield was claims outrunning what had been checked; - **the survey is allowed to change the plan**, or it was decoration. **Done 2026-08-08.** Eight profiles and an index. **It changed the plan, which is the point.** Two of the three tracks in `Positioning.md` were overclaimed: - **Track C is not open ground.** **Browne published 57 criteria for game quality**, and **Ai Ai** already computes drama, lead changes, branching factor, completion and duration for game authors. The track becomes *adopt, credit, find the gap* — and the gap looks real: those measures presume a leader, and **SHARED GROUND has none**. - **Track B probably adopts.** **OpenSpiel** implements CFR, best-response and **exploitability** across simultaneous-move, imperfect-information, co-operative games — all four of GROUND's awkward properties. *"Does ATTACK ever pay"* is a best-response question, and we spent three review rounds refining a two-policy sweep for it. **The cost of not surveying earlier is therefore measurable**, and that is recorded rather than glossed. **Three profiles are marked `unverified` in full** — Machinations, the play substrates, and much of RBG. They are placeholders that keep an option from being forgotten, and they say so instead of reading as evaluations. ## Deliberately not done - **No game-theory implementation.** Track B is specified as a shape and nothing more, because a solution concept quoted without its assumptions is the wrong-subject error in mathematical dress — and this repo has just spent three review rounds on that family. - **No second game started.** It is the largest track and wants its own declaration. - **The register rows are not re-stratified.** `Taxonomy.md` §3 says a row should name its stratum; the existing rows do not yet, and rewriting twenty-five of them in the pass that invented the rule would put the rule beyond challenge before anyone had used it.