CB-WP-0050 T02: F31 falsified — the module is unreachable, then real
Some checks failed
ci / check (push) Failing after 4s

GateAttackPolicy ranks ATTACK above GROUND at the stress gate and
delegates everything else. A PROBE, not a better bot: it wins 12/100
where greedy wins 60/100 under the same module, and the panel's banner
says so, because a column that looks like a policy comparison will be
read as one.

(a) THE MODULE IS UNREACHABLE IN THE PRINTED GAME. Selected alone it
still never fires: peak Stress never exceeds 2, so the gate never bites
and no ATTACK is ever gated. A module can be unreachable because of an
aspect it does not name -- attack_relief needs a problem_stress module
before it can act at all, and nothing in its own declaration says so.

(b) ONCE REACHABLE IT IS REAL. Holding the probe fixed and varying only
the module: group wins 12->21, 19->28, 50->57 at 3/4/6p, and DARVO arms
299->221, 294->213, 334->164. Under flat pressure the same shape appears
in DARVO alone: h1 arms 200 against flat_any_open's 300/400/600.

Stated as the conditional it is: GIVEN seats that attack at the gate.
Not advice to attack, and not evidence against F17.

AND IT CHANGES WHAT WE TOLD GROUND-GAME. CB-EV-0030 rejected H1 with
policies that never attacked, so H1-B was inert for every game behind
that verdict. The rejection stands on flat pressure alone -- wins are 0
either way -- but "H1-B does nothing" was never established and is now
known to be false. We owe them that correction.

Sensitivity: vary only the ATTACK rank. At 10 (greedy) and +55
(module-aware) the module never fires; at 110 it fires in every game.
Nothing about the module changed -- only whether any seat gave it a turn.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
tegwick 2026-08-09 02:30:08 +02:00
parent 1b6a68fb39
commit 4a72420e01
4 changed files with 224 additions and 11 deletions

View file

@ -56,7 +56,7 @@ kinds, states and metrics: [`GameDesign.md`](GameDesign.md). Reported by
| F26 | inert | ruled | `crates/cb-render-html/src/lib.rs::a_scoped_table_says_what_a_scope_does` | counterexample | 2026-08-08 | ground-game |
| F27 | unplayed | reported | `games/ground/examples/scenario-panel.rs` | counterexample | 2026-08-08 | clay-borg |
| F29 | inconsistent | applied | `games_ground::edition::card_text_tests::which_scenarios_are_mechanically_distinct` | counterexample | 2026-08-08 | ground-game |
| F31 | unplayed | raised | `games/ground/examples/module-panel.rs` | counterexample | 2026-08-08 | clay-borg |
| F31 | unplayed | reported | `games/ground/examples/module-panel.rs` | counterexample | 2026-08-08 | clay-borg |
| F30 | degenerate | ruled | `games/ground/examples/scenario-panel.rs` | counterexample | 2026-08-08 | ground-game |
| F28 | underdetermined | applied | `games_ground::tests::the_mastery_rating_and_the_shared_score_count_different_things` | counterexample | 2026-08-08 | ground-game |
@ -95,6 +95,49 @@ are the whole register and `make design` reads them from here.
**no claim about this module is supported in either direction**, and
CB-EV-0030's H1 verdict rests on its flat-pressure half alone.
**FALSIFIED, 2026-08-08, and the answer has two parts.**
`GateAttackPolicy` — a probe that ranks ATTACK above GROUND at the
stress gate, delegating everything else — was built for exactly this.
**(a) The module is unreachable in the printed game, not merely
unchosen.** With `attack_relief.self_soothe_ge4` selected *alone* the
probe still never attacks and the row still reads `never fired`:
**peak Stress never exceeds 2**, so the gate never bites and no ATTACK
is ever gated. The baseline has no inbound Stress (F17's observation
from the other side), so this module needs a `problem_stress` module
before it can act at all. **A module can be unreachable because of an
aspect it does not name.**
**(b) Once reachable it is real.** Holding the probe fixed and varying
only the module — the only comparison that isolates it:
| seats | `scoped` | `scoped_plus_attack_soothe` | group wins | DARVO arms |
|---|---|---|---|---|
| 3p | 12 | **21** | +9 | 299 → 221 |
| 4p | 19 | **28** | +9 | 294 → 213 |
| 6p | 50 | **57** | +7 | 334 → 164 |
Under flat pressure the same shape appears in DARVO alone: `h1` against
`problem_stress.flat_any_open` arms 200 against 300 / 400 / 600 at
3/4/6p, with group wins 0 in both.
**Stated as the conditional it is:** *given seats that attack at the
gate*, self-soothe raises group success by ~79 per 100 and cuts DARVO
arming by a quarter to a half. The probe is deliberately poor play — it
wins 12/100 where greedy wins 60/100 under the same module — so this is
**not** a recommendation to attack, and the row is not evidence against
F17.
**What this changes about H1.** CB-EV-0030 rejected H1 with policies
that never attacked, so H1-B was inert for every game behind that
verdict. The rejection stands on flat pressure alone — group wins are 0
with or without self-soothe — but *"H1-B does nothing"* was never
established and is now known to be false.
**Sensitivity:** vary only the ATTACK rank. At `Attack = 10` (greedy)
and at `+55` (module-aware) the module never fires; at `110` it fires
in every game. Nothing about the module changed — only whether any seat
ever gave it a turn.
- **F30 — SCN_04 is materially harder at 2 players.** 52/100 group
success against 67 and 73, with **every other parameter held by the
edition itself**: same deal shape, same 6 available points, same