ground-game/history/260807-attack-darvo-stress-design.md
codex b5730f280b fix(workplans): adopt ADR-007 derived identifiers
Records absent from central carried random pre-ADR-007 identifiers minted by
the retired local hub, which C-06 refused as stale references. Deriving from
the canonical record id takes no identity from anything.

Refs CUST-WP-0068-T06

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 2583210@bnt-lap001
Assistant-Session: f2bff2d5-e9b2-4338-92ca-10282a927006
2026-08-25 19:30:13 +02:00

9.7 KiB
Raw Blame History

ATTACK / DARVO relevance — design challenge and H1

Date: 2026-08-07 (measurement 2026-08-08)
Status: H1 measured — reject as baseline; direction kept for H2
Triggers: GROUND-RPT-0003; inbox triage
Variant: editions/experiments/h1-problem-stress/
Measurement: GROUND-RPT-0004
Catalog: editions/CATALOG.md
Workplan: GROUND-WP-0006


0. The measured gap

clay-borg (RPT-0003): under competent play, ATTACK never improves outcomes in any mode, and in 500 competent games DARVO armed zero times. Modes themselves differentiate correctly; the driver bug that forced SHARED GROUND is fixed on their side.

So the namesake loop is reachable only by playing badly. That may be intentional (cautionary structure) or a missing Problem → Stress coupling. This note challenges design options before promoting any change into baseline ground-darvo-r0.


1. Stress ledger today (baseline r0)

Source Whos stress changes? Notes
ACT_ATTACK Target +1 or +2 Attacker: no relief. Cancelled → no change
SUPPORT Target 1 or 2 Bond Support also readies Freedom, cancels DARVO
GROUND—GR Self 2 Readies Freedom; DARVO current stage still fires
DARVO REVERSE Self 2; Focus target +1 Blame on target; Protection for self
Unsolved Problems Nobody unresolved_effect is empty in Problems.csv
Status / rank Nobody No hierarchy stress
Start All at 2

At Stress 45 the rules force the vocabulary of ATTACK or GROUND (unless Freedom is spent), but ordinary ATTACK is not a stress valve—only GROUND—GR and receiving Support (and later REVERSE) are.

Implication: Stress is almost a closed social subsystem. If nobody attacks, stress drifts mid/down; DARVO never arms. clay-borgs zero-DARVO result is the ledger working as printed, not a simulator bug.

INTENT principle (“DARVO must sometimes work locally — short-term advantage, delayed relational cost”) is therefore under-served: the only local advantage is REVERSEs package, gated on already being at Stress 5 for three rounds of sequence.


2. Design directions (challenged)

2.1 Stress from stuck problems + outward projection

Strong: Restores Problem → Individual link in the four-layer model. Makes GROUND regulation under load; Support anti-cascade; DARVO “I cant hold this.”

Challenge:

  • Today ATTACK and Blame do not reduce the projectors stress. Without a rules change, “forced projection” is flavor on a move that still does not help the projector.
  • Passive problem ticks can flatten into always-DARVO or kill group thresholds (already ~7583% of available points).
  • Personal / Bond-attached problems are powerful and already listed as extensions (EXT_PERSONAL) — keep out of first core experiment.
  • Even with self-soothe, E04 still punishes Bond-breaking; mode-aware evaluation is required.

2.2 Hierarchy / competitive status stress

Strong: Injects stress without anyone choosing ATTACK; natural in semi-coop.

Challenge: Leader stress amplifies Matthew effects; “leading” mid-game is noisy; co-op must not invent early winners; stacking with problem pressure overproduces Stress 5 at 2p.

Parked behind H1 (last-place-only semi-coop is the minimal follow-up if H1 under-delivers).

2.3 Competence score

Strong as extension (follow-through, self-regard). Wrong tool for RPT-0003: does not create ATTACK incentive unless it secretly becomes another stress track. Out of H1.


3. Playtest hypothesis H1

If unsolved shared Problems raise Stress, and high-Stress ATTACK returns a small self-relief, then competent play will sometimes arm DARVO and sometimes select ATTACK, without making always-ATTACK optimal.

3.1 Two rule deltas only (relative to ground-darvo-r0)

ID Rule Detail
H1-A Problem pressure At Round End, after Stress clamp step preparation: if any Problem still in play is unclaimed (face-up, hidden, or Denied), each player +1 Stress, then clamp 05, then DARVO arm check as today.
H1-B High-stress ATTACK self-soothe When an ACT_ATTACK resolves and is not cancelled, if the attackers Stress was ≥ 4 before this Attacks effects, the attacker takes 1 Stress (then clamp). Target / relation effects unchanged. DARVO-stage extra Attack uses the same Attack resolution (so it can self-soothe too if Stress ≥ 4).

Unchanged on purpose: thresholds, deal, SOLVE legality, Support, GROUND modes, DARVO stage table, relation slots, starting Stress 2.

3.2 Success criteria (compare to RPT-0003 harness)

Under a competent multi-policy panel, same seat counts as RPT-0003 where practical:

  1. DARVO arm rate non-trivial (target band to refine after first N; not 0/500).
  2. ATTACK selection rises for some subpopulation (e.g. Stress ≥ 4) and raising ATTACK rank improves at least one objective in some mode/seat cell — not “always attack wins.”
  3. Group threshold success does not collapse to “only perfect peaceful play.”
  4. Bond Support and GROUND remain better than DARVO when regulation holds — DARVO stays the failure mode, not the dominant strategy.

3.3 Explicit non-goals for H1

  • No personal / bond-group problem cards.
  • No competence track.
  • No leader/last-place status stress (Idea 2).
  • No silent edit of baseline point_value / required_solution inside r0.
  • No promotion of H1 into ground-darvo-r0 until measured utility is accepted.

4. Rules variation versioning (how we compare experiments)

See full contract: editions/CATALOG.md.

Summary:

Mechanism Role
editions/catalog.yaml + CATALOG.md Authoritative index of selectable packages (baseline + experiments). Lives on main. clay-borg and humans read this to know what can be pinned.
Directory path Selectable unit, e.g. editions/ground-darvo-r0/, editions/experiments/h1-problem-stress/. Matches clay-borgs vendor-by-path practice (ADR-0011).
variant_id + base Stable ids (ground-darvo-r0, h1-problem-stress); experiments declare inheritance and file-level deltas.
Git Commits/tags pin content digests; optional feature branches for WIP before an experiment directory lands on main. Branches are not the primary selection API (sibling checkout + multi-ref is hostile to clay-borg CI).
Utility fields Catalog rows carry status, utility_estimate, decision (keep / reject / merge-to-baseline / supersede). Updated when measurement lands — not when the idea is written.

Baseline contract (GROUND-WP-0002 T01) still holds: changing frozen columns inside ground-darvo-r0 requires a new revision directory (-r1), not an experiment. Experiments may copy and alter rules text/actions; only a later promote step rewrites baseline.


5. clay-borg selection contract

A package is selectable for simulation when it appears in editions/catalog.yaml with selectable: true and a path.

Minimum fields clay-borg should read (or we message explicitly):

variant_id: h1-problem-stress
path: editions/experiments/h1-problem-stress
base: ground-darvo-r0
status: experimental
rules_engine_notes: rules_delta.yaml   # structured deltas if CSV alone is not executable

Engine note: today clay-borg hardcodes much of the rules kernel and vendors selected CSVs. H1-A/B are rules-kernel changes, not Problem table changes. Selecting H1 means:

  1. Vendor or overlay the experiments changed CSVs for text/provenance, and
  2. Implement rules_delta.yaml in the kernel (or a feature flag keyed by variant_id).

Until (2) exists, H1 is specified here and playable at a human table from the experiment package; bulk ATTACK-value re-runs wait on clay-borg.


6. Exploration order (after H1)

Step If… Then…
H1 measured criteria met promote candidates into r1 design / keep as optional mode card
H1 measured DARVO still ~0 add Idea 2 last-place stress (semi only) as H2 experiment
H1 measured always-ATTACK optimal reject H1-B or gate self-soothe tighter
Later core loop works competence / personal problems as extensions

7. Decision log

Date Decision
2026-08-07 Do not invent “DARVO-only-from-bad-play is intended” without measurement of H1-class pressure.
2026-08-07 First experiment is H1 (problem pressure + high-stress ATTACK 1).
2026-08-07 Versioning = catalog + directories on main; git tags pin; branches optional for WIP.
2026-08-08 H1 measured (CB-EV-0030/0031 → RPT-0004). Reject as baseline. Direction (Problem→Stress) confirmed useful; flat +1/end is a solve-rate tax. H2 must change pressure shape, not only re-stack. Baseline finding: non-attacking policies never raise Stress above 2.
2026-08-08 H2 packaged: scoped stress (personal / bond / global). See 260808-h2-scoped-problem-stress.md. Bond network shares ticks → joint SOLVE incentive.

8. Measurement summary (2026-08-08)

See RPT-0004 for full tables. One-line:

H1 reaches the seat that will not regulate; under greedy regulation the table stops winning; H1-B is dead code for competent play.