CB-WP-0040: name the stratum before naming the defect
The maintainer could not tell whether "error", "failure", "finding" or
"correction" referred to the game's design, our formalisation of it, the
code, the measuring apparatus, or the sentences we wrote. Three review
rounds produced twenty-odd defect statements spanning five systems, all
called errors. The confusion was ours.
specs/Taxonomy.md, grounded in named canon rather than invented here: six
strata 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 what was missing:
GAME<->MODEL is validation, MODEL<->ENGINE is verification, and nearly
every argument about "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 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, which is why tests never catch them.
MDA supplies the game-facing layers and one hard limit: our panels measure
dynamics, our trial logs sample aesthetics, and a win rate does not answer
"is it fun".
specs/Positioning.md names the field fairly — Ludii is the closest
relative and the right benchmark — and the four differentiators, each
already built rather than aspired to. Clay-borg is a design-evidence
instrument; anyone can produce the number. Three tracks named and none
started: a second game, game theory as the lens on dynamics, and
assimilated knowledge about why games work.
Track A is the falsifier for the whole positioning: every abstraction here
has exactly one instance, which by our own rule may mean invented rather
than observed.
Chaos window 3 closes at 12 declarations with one override that changed
nothing. Its verdict is due and is deliberately not written here.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-08 11:41:16 +02:00
|
|
|
---
|
|
|
|
|
id: CB-WP-0040
|
|
|
|
|
kind: meta
|
|
|
|
|
title: "What a statement is about"
|
|
|
|
|
status: done
|
2026-08-08 11:44:05 +02:00
|
|
|
state_hub_workstream_id: "67f76fe2-0fd9-4ae6-a09b-1b5dc46d0e02"
|
CB-WP-0040: name the stratum before naming the defect
The maintainer could not tell whether "error", "failure", "finding" or
"correction" referred to the game's design, our formalisation of it, the
code, the measuring apparatus, or the sentences we wrote. Three review
rounds produced twenty-odd defect statements spanning five systems, all
called errors. The confusion was ours.
specs/Taxonomy.md, grounded in named canon rather than invented here: six
strata 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 what was missing:
GAME<->MODEL is validation, MODEL<->ENGINE is verification, and nearly
every argument about "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 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, which is why tests never catch them.
MDA supplies the game-facing layers and one hard limit: our panels measure
dynamics, our trial logs sample aesthetics, and a win rate does not answer
"is it fun".
specs/Positioning.md names the field fairly — Ludii is the closest
relative and the right benchmark — and the four differentiators, each
already built rather than aspired to. Clay-borg is a design-evidence
instrument; anyone can produce the number. Three tracks named and none
started: a second game, game theory as the lens on dynamics, and
assimilated knowledge about why games work.
Track A is the falsifier for the whole positioning: every abstraction here
has exactly one instance, which by our own rule may mean invented rather
than observed.
Chaos window 3 closes at 12 declarations with one override that changed
nothing. Its verdict is due and is deliberately not written here.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-08 11:41:16 +02:00
|
|
|
---
|
|
|
|
|
|
|
|
|
|
# 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
|
2026-08-08 11:44:05 +02:00
|
|
|
state_hub_task_id: "75758aff-724a-4e25-8597-b0a5135774f8"
|
CB-WP-0040: name the stratum before naming the defect
The maintainer could not tell whether "error", "failure", "finding" or
"correction" referred to the game's design, our formalisation of it, the
code, the measuring apparatus, or the sentences we wrote. Three review
rounds produced twenty-odd defect statements spanning five systems, all
called errors. The confusion was ours.
specs/Taxonomy.md, grounded in named canon rather than invented here: six
strata 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 what was missing:
GAME<->MODEL is validation, MODEL<->ENGINE is verification, and nearly
every argument about "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 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, which is why tests never catch them.
MDA supplies the game-facing layers and one hard limit: our panels measure
dynamics, our trial logs sample aesthetics, and a win rate does not answer
"is it fun".
specs/Positioning.md names the field fairly — Ludii is the closest
relative and the right benchmark — and the four differentiators, each
already built rather than aspired to. Clay-borg is a design-evidence
instrument; anyone can produce the number. Three tracks named and none
started: a second game, game theory as the lens on dynamics, and
assimilated knowledge about why games work.
Track A is the falsifier for the whole positioning: every abstraction here
has exactly one instance, which by our own rule may mean invented rather
than observed.
Chaos window 3 closes at 12 declarations with one override that changed
nothing. Its verdict is due and is deliberately not written here.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-08 11:41:16 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
**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
|
2026-08-08 11:44:05 +02:00
|
|
|
state_hub_task_id: "bfc565ad-4eab-4933-9cc5-2581a797e48a"
|
CB-WP-0040: name the stratum before naming the defect
The maintainer could not tell whether "error", "failure", "finding" or
"correction" referred to the game's design, our formalisation of it, the
code, the measuring apparatus, or the sentences we wrote. Three review
rounds produced twenty-odd defect statements spanning five systems, all
called errors. The confusion was ours.
specs/Taxonomy.md, grounded in named canon rather than invented here: six
strata 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 what was missing:
GAME<->MODEL is validation, MODEL<->ENGINE is verification, and nearly
every argument about "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 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, which is why tests never catch them.
MDA supplies the game-facing layers and one hard limit: our panels measure
dynamics, our trial logs sample aesthetics, and a win rate does not answer
"is it fun".
specs/Positioning.md names the field fairly — Ludii is the closest
relative and the right benchmark — and the four differentiators, each
already built rather than aspired to. Clay-borg is a design-evidence
instrument; anyone can produce the number. Three tracks named and none
started: a second game, game theory as the lens on dynamics, and
assimilated knowledge about why games work.
Track A is the falsifier for the whole positioning: every abstraction here
has exactly one instance, which by our own rule may mean invented rather
than observed.
Chaos window 3 closes at 12 declarations with one override that changed
nothing. Its verdict is due and is deliberately not written here.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-08 11:41:16 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
**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.
|
|
|
|
|
|
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
|
|
|
## 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.
|
|
|
|
|
|
CB-WP-0040: name the stratum before naming the defect
The maintainer could not tell whether "error", "failure", "finding" or
"correction" referred to the game's design, our formalisation of it, the
code, the measuring apparatus, or the sentences we wrote. Three review
rounds produced twenty-odd defect statements spanning five systems, all
called errors. The confusion was ours.
specs/Taxonomy.md, grounded in named canon rather than invented here: six
strata 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 what was missing:
GAME<->MODEL is validation, MODEL<->ENGINE is verification, and nearly
every argument about "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 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, which is why tests never catch them.
MDA supplies the game-facing layers and one hard limit: our panels measure
dynamics, our trial logs sample aesthetics, and a win rate does not answer
"is it fun".
specs/Positioning.md names the field fairly — Ludii is the closest
relative and the right benchmark — and the four differentiators, each
already built rather than aspired to. Clay-borg is a design-evidence
instrument; anyone can produce the number. Three tracks named and none
started: a second game, game theory as the lens on dynamics, and
assimilated knowledge about why games work.
Track A is the falsifier for the whole positioning: every abstraction here
has exactly one instance, which by our own rule may mean invented rather
than observed.
Chaos window 3 closes at 12 declarations with one override that changed
nothing. Its verdict is due and is deliberately not written here.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-08 11:41:16 +02:00
|
|
|
## 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.
|