clay-borg/evidence/CB-EV-0031-a-seat-that-does-not-regulate.md
tegwick c4a8a227c0
Some checks failed
ci / check (push) Failing after 3s
CB-REV-0003: round 3, and three of four FATAL came from round 2's fixes
The pattern is now measured over three rounds: 5 fatal, then 3 (2 from the
previous round's corrections), then 4 (3 from them). The corrections are
not getting safer.

FATAL 1: round 2's short-cell assertion went into regulation.rs only.
attack-value.rs — which produced every number in CB-EV-0030's DARVO table
— still just warned, and the gate registered to close the finding claimed
the property for both.

FATAL 2, the sharpest of the three rounds: counting games proves they
STARTED. Stopping the engine after one round gives 200 games, all-zero
columns and exit 0 — byte for byte the signature CB-EV-0030 says the
instrumentation distinguishes from a real result. Both harnesses now
require every counted game to have reached an outcome over five rounds.

FATAL 3: round 2's `.csv` filter was applied to all three loops, so
catalog.yaml and rules_delta.yaml — whose missing digests were round 1's
finding — were recorded and then never compared, and never checked against
upstream at all. Only the parser loop filters now.

FATAL 4: five of six tiebreak comparators had no coverage. GR-E04's
tiebreak never executes in any scenario. All four are now covered and
mutation-verified; the Blame key needed compensating claims to be
reachable at all, since Blame also lowers the coalition score.

SERIOUS: "peak held" computed the same number as "peak assigned" for every
possible input — the real gap was that START_STRESS was an unchecked
constant, now read off the dealt state; cadence="none" was a pure
loophole, removed; sibling discovery swapped a hand-written list for
hand-written globs and missed metadata.json and VARIANT.md, both named in
the package's own changed_files — now walked, and it found them
immediately; and "~72,000 games" was unsourced, make panels runs 17,600.

Also separated two kinds of number that were presented alike: seats×games
is invariant, 363 and 29 vary 7.1%-11.5% across samples.

Round 4 owed. The conclusion is not that the work is nearly right — it is
that author-made corrections to measurement work should be assumed
defective until a fresh reader has attacked them.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-08 10:26:25 +02:00

10 KiB
Raw Permalink Blame History

CB-EV-0031 — a seat that does not regulate

CB-WP-0039. Tier M (adds a policy to the panel every future measurement is reported against; chaos d8 = 2 → no override). Declaration 11 of chaos window 3. Closed 2026-08-08.

CORRECTED 2026-08-08 after adversarial review, and most of the original file was wrong. The review is in CB-REV-0001. The policy this pass called "greedy with one preference changed" differed in five places — including SpendFreedom, which it ranked 95 unconditionally where greedy ranks it 0 unless the gate bites, so the seat burned its Freedom token in round one of every game. Every number below was measuring that bug. They have been re-derived against a policy that delegates to GreedyPolicy::rank and overrides exactly one arm.

Sections 1 and 2 are rewritten. Section 3 is withdrawn entirely.

Delivered: the reactive policy, and the measurement CB-EV-0030 §4 named as the one it had not run.


1. It changes CB-EV-0030's verdict

CB-EV-0030 concluded H1's DARVO arm rate was still 0. That was true of the panel, and the panel was greedy-family throughout.

GreedyPolicy ranks Action::Ground if gated => 100: the instant the stress gate bites it grounds. Stress plateaus at 3, and the arm at 5 is unreachable by construction. So "H1 does nothing" was really "H1 does nothing to a seat that already manages its Stress" — and H1 was written for the seat that does not.

reactive now delegates to GreedyPolicy::rank and overrides one arm (Ground if gated), so "one preference differs" is structurally true rather than a claim. SHARED GROUND, 200 games per cell, all 200 ran, and peak is now Stress held, not Stress assigned (§2):

greedy reactive
seats won atk darvo peak won atk darvo peak
2p 68 0 0 4 66 726 363 5
3p 0 0 0 4 0 1200 600 5
4p 0 0 0 4 0 1600 800 5
6p 0 0 0 4 0 2400 1200 5

H1's mechanism does reach the unregulated seat. DARVO arms exactly 1 per seat per game — 600/(200×3), 800/(200×4), 1200/(200×6) — and 0.91 at 2p. The first correction said 2 per seat per game, which is wrong by a factor of two and was caught by round 2 (#3).

Criterion 3's verdict is corrected. The original said reactive "wins nothing, at any seat count". False. At 2p it wins 66 against greedy's 68 — indistinguishable. It wins nothing at 3p and above, which is also where greedy wins nothing.

2. The baseline finding, which is larger than H1

Look at the baseline half of the same run. Greedy and reactive are identical — 132/165/190/200, zero attacks, zero DARVO, in all four bands.

Peak Stress held across the 1,600 baseline games was 2 — the starting value, never exceeded. Stress only ever went down.

Three corrections to what this section originally said.

  1. It reported 1, because peak was a maximum over StressSet event payloads. Starting Stress is written by setup, never by an event, so a table sitting at 2 all game reported 1 — and a table with no StressSet at all would have reported 0. Wrong subject: the metric answered "highest value ever assigned" while the prose claimed "highest Stress reached".
  2. It said 3,200 baseline games. The run is 3,200 total; the baseline half is 1,600.
  3. It generalised to "a policy built to be reckless with Stress plays identically to one built to husband it". False, and refuted by this repo's own sibling harness: attack-value.rs's rank-95 policy is exactly that policy, and under baseline it drives Stress to 5 and arms DARVO 4001000 times per cell.

What survives, stated narrowly. Under both policies measured here — neither of which ever selects ATTACK under baseline — no Stress is ever added at all. The baseline's Stress economy is reachable only through ATTACK, so a table that does not attack never meets the gate, the arm, or the Freedom token. That is still a real observation about F17, and it is about ATTACK being the sole inbound pressure, not about the economy being unreachable in general.

3. WITHDRAWN — "H1-B suppresses DARVO in the attacker"

The original §3 argued that H1-B holds the attacker at Stress 4, below the arm, and pushes its targets to 5 — inferred from a constant darvo = 400 and a final-Stress signature of [5, 5, 4, 4, 4, 4].

Withdrawn on two independent grounds, both found by the review.

  1. The constant was the broken policy — but a constant remains, and saying otherwise was wrong (round 2, #12). With the one-arm-override policy darvo is exactly seats × games at 3p and above. The constant moved from 400 to n·games; it did not dissolve, and whatever forces exactly one arm per seat per game is still unexplained.
  2. Disabling H1-B changes the arm count by exactly zero, in every cell, under the corrected policy. The effect attributed to H1-B's arithmetic was an interaction with the undeclared preference deltas.

And the inference was invalid even where the numbers held. Final Stress does not record who armed: DarvoEnded resets the stage to Off and REVERSE applies 2 to its owner, so a seat can arm and finish below 5. The review demonstrated six seats arming behind the same [5,5,4,4,4,4] signature. The original hedged the wrong variable — it disclaimed "the number 2" and defended "the direction", and the direction is the part that failed.

4. What this does not say

  • reactive is not a good player and is not meant to be. It wins nothing under H1 and exactly what greedy wins under baseline. It is an instrument for reaching the Stress economy, not a claim about how people play.
  • Two policies is still not a panel. RetrospectiveAnalysis §4.1 asks for greedy, random and first-legal at minimum; this pass added a fourth axis to two of them, in one mode.
  • SHARED GROUND only. CB-EV-0030 covered three modes; this covers one.
  • No felt-play, and this is the kind of claim — about pressure, and when a player feels cornered — that a human table answers and 3,200 simulated games do not.

5. The three items the review left open, now closed

H1-B on the DARVO extra Attack — the delta says the extra Attack shares the Attack resolution "so it can self-soothe too if Stress ≥ 4". CB-WP-0038 asserted it because the code shares resolve_attack; nothing tested it, and the withdrawn §3 ran straight through this path. h1b_soothes_the_darvo_stage_attack_too now covers it, mutation-verified.

Round-5 pressure did not reach the score. end_round_events scored from self while H1-A's pressure went into work, and score reads Stress for the GR-E03 and GR-E04 tiebreaks. Fixed, and the test uses the case that actually bites: uniform pressure preserves an ordering, so it takes the clamp at 5 to collapse a gap and change who wins.

Its impact was claimed and never measured, and the measurement is zero (round 2, #5). This file said the pressure was invisible to "the two modes CB-EV-0030 reports on" without checking. Reverting the fix leaves attack-value's output byte-identical across all 24 cells and all three modes, including the two whose won column reads through the tiebreak. The defect is real in principle and its only witness is a hand-constructed board.

The sample size quoted here was "~72,000 games" and was not derivable from anything in this repo (round 3, #9). make panels runs 17,600: attack-value is 2 variants × 3 modes × 3 policies × 4 seat counts × 200 = 14,400, and regulation is 2 × 4 × 2 × 200 = 3,200. The figure was adopted from a reviewer's message and never re-derived — in the file whose whole correction history is about exactly that.

Inert arms, and a second wrong-subject error caught on the way. A DARVO arm at the End of Round 5 can never advance a stage — GameEnded follows immediately — and ground-game's criterion 1 is about DARVO mattering. Now reported separately:

seats arms of which inert
2p 363 29 (8%)
3p 600 0
4p 800 0
6p 1200 0

Two kinds of number are in that table and this file did not distinguish them (round 3, #10). 600 / 800 / 1200 is exactly seats × games and holds on every sample tried. 363 and 29 are sample-specific: across four disjoint windows the 2p arms run 354366 and the inert share runs 7.1%11.5%. So "92% of arms at 2p are live" is a fact about seeds 0..200, not about the game — it reads 88.5% elsewhere.

The same applies to the baseline win counts quoted throughout (132/165/190/200): the identity of greedy and reactive under baseline holds on every sample, the digits do not.

The first version of that metric was wrong and equalled darvo in every cell, because it tested g.rounds >= 5 — a property of the game, not of the event. Every arm in every completed game was marked inert, which briefly looked like "criterion 1 is not met after all". An arm is inert when no RoundEnded follows it.

The 29-of-363 citation has now been wrong twice and is stated plainly here. Round 2 found it credited to CB-REV-0001, which did not contain the figure; round 1's reviewer had reported it, in its message only. Round 3 found the remaining problem (#10, #11): both "independent confirmations" used seeds 0..200, so what was confirmed twice is the definition, not the figure — and whether round 1's StrictReactive was the corrected one-arm policy or the five-difference one cannot be determined from anything in this repo, because that reviewer's code was never kept. Treat 29/363 as one sample of a quantity that varies.

Criterion 1 stands as met: 92% of arms at 2p and all of them above are live.

regulation.rs no longer skips setup failures silently. They are counted, and a short cell now fails an assertion rather than printing a number a reader has to notice — which is what CB-EV-0030 §3 claimed credit for and only half did.

6. Open

  • The baseline's Stress economy being unreachable (§2) deserves its own finding, and is not raised here because it wants the plural panel of §4 first. It is the more consequential of the two results in this file.
  • Whether H1-B's suppression is intended is ground-game's question, and it is the sharpest thing this pass can hand them.