ADR-0016, Tokens.csv vendored, tracks and discs on the table, and a supply audit that found nothing and says so. T03 MEASURED BEFORE T01 DECIDED. 750 games, 2-6 seats, greedy and random: Protection reaches 1 per seat and 2 on the table against a supply of 6; Denied 3 of 5; relation links EXACTLY 12 OF 12 and never more; Focus/Blame 0 conflicts. The link row is the interesting one -- GR-L01's two-slot rule IS the twelve-token supply written twice, which is the shape of a supply needing no separate enforcement. AND THE FIRST VERSION OF THE FOCUS/BLAME CHECK WAS WRONG. It compared a seat's own placed Focus against its OWN blame_from -- but that list holds OTHER players' discs, so they are different tokens. It reported 2 conflicts; corrected, it reports 0. Fifth instance of this project's recurring defect, a number computed correctly about the wrong subject, and the first caught before it left the repo rather than by a reviewer. D2: a token is a VIEW, not a type. The aggregate gains no `Token` -- adding one would create a second source of truth for Stress, and the first time they disagreed the bug would be invisible because both would look internally consistent. D3: quantity does NOT bind, and the reason is not the measurement. A component limit the rules do not state is not a rule. Refusing a seventh Protection token would enforce something nobody ruled -- CB-WP-0023's error inverted: SOLVE was OFFERED where it could not act; this would REFUSE where the rules allow. The check ships as a standing control, so a future violation becomes a question for ground-game (does the box bound the game, or do the rules?) rather than a bound the engine invented. Registered as F22, withdrawn: a stated negative, because a survey that finds nothing and leaves no trace cannot be told from one never run. D4: Stress on a 0-5 track that turns red at 5 where DARVO arms, DARVO on OFF/DENY/ATTACK/REVERSE, Freedom as the two-sided disc the edition says it is, Protection and Blame counted, Lead and Round on the table. Two tests broke on token discs and both were FIXTURE defects: seat_centres matched every <circle> and track stops are circles. Seats now carry class="seat". The table height limit went 460 -> 500 as a CORRECTION, not a concession. 460 had no derivation; 500 does -- ~800px viewport less ~120 header and ~150 controls leaves ~530, and the version that broke dragging was 620. CB-WP-0021 T06's rule is to fix the measurement rather than lower the floor, and an underived number is a measurement defect. make all: exit 0. 66 render tests, 26 cb-play. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
51 lines
2.4 KiB
Markdown
51 lines
2.4 KiB
Markdown
# Vendored edition data — provenance
|
|
|
|
**Not ours.** This directory holds a copy of content owned by the
|
|
`ground-game` repository, vendored under ADR-0011 Decision 2 because the
|
|
build must not depend on a sibling checkout that CI does not have.
|
|
|
|
| | |
|
|
|---|---|
|
|
| upstream repo | `ground-game` |
|
|
| upstream repo path | `editions/ground-darvo-r0/` |
|
|
| authoritative? | **yes** — ruled by ground-game, GROUND-WP-0002 T01 |
|
|
|
|
## Files, and why each is here
|
|
|
|
| file | vendored | upstream revision | why |
|
|
|---|---|---|---|
|
|
| `Problems.csv` | 2026-08-04 | `9fd27a51` | the deal (ADR-0011) |
|
|
| `Actions.csv` | 2026-08-06 | `4fa3b8ed` | the five action cards' own words (ADR-0015 D2) |
|
|
| `Solutions.csv` | 2026-08-06 | `4fa3b8ed` | Solution titles and microcopy |
|
|
| `Modes.csv` | 2026-08-06 | `4fa3b8ed` | mode text and `scoring_tiebreak` |
|
|
| `Tokens.csv` | 2026-08-07 | `4fa3b8ed` | the components: `front_text`, `quantity`, `sides` (ADR-0016) |
|
|
|
|
**Deliberately absent**: `BOM`, `Print_Manifest`, `Back_Designs`,
|
|
`Symbols`, `Design_Tokens` — production artifacts for a physical print
|
|
run, meaningless to a simulator. And `Extensions.csv`, which names content
|
|
the designer placed *outside* the core; importing it would break the claim
|
|
that this engine plays the edition as printed (ADR-0015 D2).
|
|
|
|
## Digests
|
|
|
|
```
|
|
sha256 7a7a302aabecdeb419c562a029bec3e3576a306b0bd1175d1200de60d9530073 Actions.csv
|
|
sha256 565431571bc06adafb67edefd4b368839b6b94134c2289877384688cc643390b Modes.csv
|
|
sha256 0a04830c93b62dcb2f4411a9fbde576368a7427fe9e63c5015e606e4d42d23a0 Problems.csv
|
|
sha256 0bda1ee97de726b5e8c4404ab15ecc53a359e6c23db74fb41ecb51d78f9884ad Solutions.csv
|
|
sha256 25273bb6e74c9ad545c5e89dfe0f76b294d0a6cbef51f80d548039d5f0943484 Tokens.csv
|
|
```
|
|
|
|
`make edition-check` compares this against `../ground-game` when that
|
|
repository is present, and reports **`upstream not checked out`** as a
|
|
distinct outcome when it is not — never a pass. An absent check is
|
|
reported absent, not treated as satisfied (the shape ADR-0009 used for
|
|
`node`).
|
|
|
|
## What may not change under this revision
|
|
|
|
Per GROUND-WP-0002 T01's contract: `point_value` and
|
|
`required_solution` are **authoritative and frozen within `r0`**. The
|
|
engine hashes game state and both values are *in* that state, so a silent
|
|
change would rot every recorded scenario expectation. A change to either
|
|
is a new revision (`-r1`), and this digest is what notices.
|