Some checks failed
ci / check (push) Failing after 3s
The H2 panel measured wins, variance and DARVO but not ATTACK selection — which is F17's actual question. attack-value now runs H2 too. The shape is the finding. Under H1 a seat that sometimes attacks loses everything at 3p and above. Under H2 rank-75 wins 112/173/199 against greedy's 120/175/199, while attacking and arming DARVO. So H2 makes occasional ATTACK affordable — it does not make it pay. rank-75 never beats greedy in any cell, and rank-95 (always attack) still wins 0 everywhere in all three variants, so "not always-attack-optimal" holds. F17 therefore stands: ATTACK earns its place in no mode. What changed is that choosing it is no longer catastrophic. Whether affordable is what the design wants is ground-game's judgement. And a hazard: with_variant() exists because H2 assigns Problem owners at setup and `state.variant = v` leaves them unassigned, so scoped pressure ticks nobody and H2 measures as INERT. Three call sites had the bare write, including cb-play's driver. No published figure is affected, and that was checked rather than assumed: h2-panel used the builder, and the two harnesses with the bare write had only ever run baseline and H1, neither of which has a setup step; the driver has never played H2. All three fixed, and a_bare_variant_write_leaves_h2_inert now states the difference so a regression is caught by a named test rather than by a reader wondering why H2 did nothing. The builder was not enough — the field is public, so the old form still compiles. Worth knowing before the next variant. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
149 lines
2.3 KiB
YAML
149 lines
2.3 KiB
YAML
scenario: ground/cb-play-session
|
|
description: recorded by cb-play (CB-WP-0008 T02)
|
|
covers: []
|
|
provisional: false
|
|
provisional_owner: ''
|
|
provisional_raised: ''
|
|
ruled: ''
|
|
ruled_by: ''
|
|
ruled_note: ''
|
|
encodes_u_item: ''
|
|
seed: 1
|
|
setup:
|
|
players: 3
|
|
preset: standard-3p
|
|
patch: {}
|
|
commands:
|
|
- actor: P1
|
|
cmd: select_action
|
|
args:
|
|
action: INVESTIGATE
|
|
problem: 2
|
|
- actor: P2
|
|
cmd: select_action
|
|
args:
|
|
action: SOLVE
|
|
problem: 1
|
|
- actor: P3
|
|
cmd: select_action
|
|
args:
|
|
action: SOLVE
|
|
problem: 1
|
|
- actor: SYSTEM
|
|
cmd: reveal
|
|
args: {}
|
|
- actor: SYSTEM
|
|
cmd: resolve
|
|
args: {}
|
|
- actor: SYSTEM
|
|
cmd: end_round
|
|
args: {}
|
|
- actor: P1
|
|
cmd: select_action
|
|
args:
|
|
action: SUPPORT
|
|
target: P2
|
|
- actor: P2
|
|
cmd: select_action
|
|
args:
|
|
action: INVESTIGATE
|
|
problem: 3
|
|
- actor: P3
|
|
cmd: select_action
|
|
args:
|
|
action: INVESTIGATE
|
|
problem: 3
|
|
- actor: SYSTEM
|
|
cmd: reveal
|
|
args: {}
|
|
- actor: P2
|
|
cmd: respond_to_support
|
|
args:
|
|
response: accept_bond
|
|
- actor: SYSTEM
|
|
cmd: resolve
|
|
args: {}
|
|
- actor: SYSTEM
|
|
cmd: end_round
|
|
args: {}
|
|
- actor: P1
|
|
cmd: select_action
|
|
args:
|
|
action: INVESTIGATE
|
|
problem: 4
|
|
- actor: P2
|
|
cmd: select_action
|
|
args:
|
|
action: INVESTIGATE
|
|
problem: 4
|
|
- actor: P3
|
|
cmd: select_action
|
|
args:
|
|
action: SOLVE
|
|
problem: 2
|
|
- actor: SYSTEM
|
|
cmd: reveal
|
|
args: {}
|
|
- actor: SYSTEM
|
|
cmd: resolve
|
|
args: {}
|
|
- actor: SYSTEM
|
|
cmd: end_round
|
|
args: {}
|
|
- actor: P1
|
|
cmd: select_action
|
|
args:
|
|
action: SOLVE
|
|
problem: 3
|
|
- actor: P2
|
|
cmd: select_action
|
|
args:
|
|
action: SOLVE
|
|
problem: 3
|
|
- actor: P3
|
|
cmd: select_action
|
|
args:
|
|
action: SOLVE
|
|
problem: 4
|
|
- actor: SYSTEM
|
|
cmd: reveal
|
|
args: {}
|
|
- actor: SYSTEM
|
|
cmd: resolve
|
|
args: {}
|
|
- actor: SYSTEM
|
|
cmd: end_round
|
|
args: {}
|
|
- actor: P1
|
|
cmd: select_action
|
|
args:
|
|
action: SUPPORT
|
|
target: P3
|
|
- actor: P2
|
|
cmd: select_action
|
|
args:
|
|
action: SUPPORT
|
|
target: P1
|
|
- actor: P3
|
|
cmd: select_action
|
|
args:
|
|
action: SUPPORT
|
|
target: P1
|
|
- actor: SYSTEM
|
|
cmd: reveal
|
|
args: {}
|
|
- actor: P3
|
|
cmd: respond_to_support
|
|
args:
|
|
response: accept_bond
|
|
- actor: SYSTEM
|
|
cmd: resolve
|
|
args: {}
|
|
- actor: SYSTEM
|
|
cmd: end_round
|
|
args: {}
|
|
expect:
|
|
events: []
|
|
state: {}
|
|
rejects: []
|
|
state_hash: b15834bdf1b30ef0e3d84bdba10395d0fa4efd16086d24b59a6080d08b1804f2
|