117 lines
4.3 KiB
Markdown
117 lines
4.3 KiB
Markdown
|
|
---
|
|||
|
|
id: GROUND-RPT-0007
|
|||
|
|
type: report
|
|||
|
|
title: "clay-borg: correction — H1-B was never measured, and it does something"
|
|||
|
|
domain: consumer
|
|||
|
|
repo: ground-game
|
|||
|
|
status: informational
|
|||
|
|
owner: bernd
|
|||
|
|
topic_slug: whynot
|
|||
|
|
created: "2026-08-09"
|
|||
|
|
extends: GROUND-WP-0006
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# Correction to GROUND-RPT-0004 (H1 measured)
|
|||
|
|
|
|||
|
|
Upstream: clay-borg `specs/FindingRegister.md` F31,
|
|||
|
|
`games/ground/examples/module-panel.rs`.
|
|||
|
|
|
|||
|
|
**This is a correction we owe you, not a new result we chose to send.**
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 1. What we got wrong
|
|||
|
|
|
|||
|
|
We reported H1 as measured and rejected. **Half of it was never
|
|||
|
|
measured.**
|
|||
|
|
|
|||
|
|
H1 is two modules: flat problem→stress pressure (H1-A) and ATTACK
|
|||
|
|
self-soothe at Stress ≥ 4 (H1-B). Every game behind that verdict was
|
|||
|
|
played by bots that **never attacked, in any game, at any seat count**.
|
|||
|
|
H1-B acts only on an uncancelled ATTACK by a seat at the stress gate, so
|
|||
|
|
it had no opportunity in a single one of them.
|
|||
|
|
|
|||
|
|
**The rejection itself stands** — group success is 0 with or without
|
|||
|
|
H1-B, and that is H1-A's doing. But *"H1-B does nothing"* was never
|
|||
|
|
established, and is now known to be false.
|
|||
|
|
|
|||
|
|
The cause was on our side and is not subtle: our bot ranked GROUND at
|
|||
|
|
100 when the gate bites and ATTACK at 10, so at exactly the position
|
|||
|
|
where self-soothe would pay, GROUND won the comparison every time.
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 2. H1-B is unreachable in the printed game
|
|||
|
|
|
|||
|
|
We built a probe that attacks at the gate. **Selected on its own,
|
|||
|
|
`attack_relief.self_soothe_ge4` still never fires.**
|
|||
|
|
|
|||
|
|
Peak Stress in the baseline never exceeds its starting 2. The gate is at
|
|||
|
|
4. So no ATTACK can ever *be* gated, however eagerly a seat attacks —
|
|||
|
|
the baseline has no inbound Stress at all, which is the same observation
|
|||
|
|
as F17 seen from the other side.
|
|||
|
|
|
|||
|
|
**A module can be unreachable because of an aspect it does not name.**
|
|||
|
|
`attack_relief` needs a `problem_stress` module before it can act, and
|
|||
|
|
nothing in its own declaration says so. That may be worth a field in the
|
|||
|
|
catalog — a module's *preconditions*, distinct from its aspect — so that
|
|||
|
|
"unreachable in this configuration" is detectable rather than discovered.
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 3. Once reachable, it does something
|
|||
|
|
|
|||
|
|
Same probe throughout, varying **only** the module:
|
|||
|
|
|
|||
|
|
| seats | `problem_stress.scoped` | `+ attack_relief.self_soothe_ge4` | 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 effect shows in DARVO alone: `h1` arms **200**
|
|||
|
|
against `problem_stress.flat_any_open`'s 300 / 400 / 600, with group wins
|
|||
|
|
0 in both.
|
|||
|
|
|
|||
|
|
**Read this as the conditional it is.** *Given seats that attack at the
|
|||
|
|
gate*, self-soothe raises group success by ~7–9 per 100 and cuts DARVO
|
|||
|
|
arming by a quarter to a half. The probe is deliberately poor play — it
|
|||
|
|
wins 12/100 where our ordinary bot wins 60/100 under the same module — so
|
|||
|
|
this is **not** a claim that attacking is good, and **not** evidence
|
|||
|
|
against F17.
|
|||
|
|
|
|||
|
|
**Sensitivity:** vary only the ATTACK rank. At 10 and at +55 the module
|
|||
|
|
never fires; at 110 it fires in every game. Nothing about the module
|
|||
|
|
changed — only whether any seat gave it a turn.
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 4. What we are not saying
|
|||
|
|
|
|||
|
|
- **Not** that H1 should be reconsidered. H1-A drives group success to 0
|
|||
|
|
at every seat band and self-soothe does not move that.
|
|||
|
|
- **Not** that ATTACK is good play.
|
|||
|
|
- **Not** that these numbers describe a table. Every one is bots, and the
|
|||
|
|
seats that produce them play badly on purpose.
|
|||
|
|
|
|||
|
|
**Ask:** is a *reachability* declaration worth adding to a module — the
|
|||
|
|
conditions under which it can act at all — so a consumer can report "not
|
|||
|
|
reachable in this configuration" instead of a number that looks like a
|
|||
|
|
null result?
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 5. Two earlier items still open on your side
|
|||
|
|
|
|||
|
|
Neither is new; both were in GROUND-RPT-0006 and are unanswered.
|
|||
|
|
|
|||
|
|
**(a) The competitive modes are weakly tested.** No bot of ours models a
|
|||
|
|
*rival* playing their objective. A mode whose point is that players
|
|||
|
|
compete, measured by seats that never anticipate an opponent, is a weak
|
|||
|
|
test of that mode — and we cannot fix it by measuring harder.
|
|||
|
|
|
|||
|
|
**(b) `problem_stress.scoped` cannot reach a decision in round one.**
|
|||
|
|
Only the Surface Problem is face up, so there is never a choice between
|
|||
|
|
two Problems for scope to decide. Any read of that module weighted toward
|
|||
|
|
early rounds is measuring a mechanism that has not started.
|