clay-borg/workplans/CB-WP-0040-what-a-statement-is-about.md
tegwick b590e7fd59
Some checks failed
ci / check (push) Failing after 4s
simulators/: persist the survey, and let it shrink two of the three tracks
Eight profiles on a common schema, each marking what was checked against a
source this session and what is background recollection. Three are marked
unverified in full — Machinations, the play substrates, most of RBG — and
say so rather than reading as evaluations. Written straight after three
review rounds whose entire yield was claims outrunning what had been
checked, so the confidence rule is the first thing in the README.

The survey changed the plan, which is what a survey is for.

Track C was described in Positioning as open ground. It is not: Browne
published 57 criteria for game quality, and Ai Ai already computes
designer-facing measures — drama, lead changes, branching factor,
completion, duration — from played games. The track becomes adopt, credit
and find the gap. The gap looks real: those measures presume a leader, and
SHARED GROUND has none — Modes.csv gives its tiebreak as "Not applicable".

Track B probably adopts rather than builds. OpenSpiel implements CFR,
best-response and exploitability over games that are simultaneous-move,
imperfect-information and co-operative, which is 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
first Track B task is now one question — is exploitability meaningful for
a co-operative game with a shared threshold — not a build.

The cost of not surveying earlier is therefore measurable, and is recorded
rather than glossed.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-08 11:56:27 +02:00

6.4 KiB

id kind title status state_hub_workstream_id
CB-WP-0040 meta What a statement is about done 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

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.

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

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.

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

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.