ADR-0022 + CB-WP-0048 T00: the selector decision, and the mirror held

The maintainer's observation decided the design: aspects partition the
GAME, strata partition our apparatus, and they are orthogonal. A module
is one coordinate change in aspect space with an obligation in every
stratum. So aspect identity must NOT be Rust types -- an aspect
ground-game adds would make clay-borg fail to parse a configuration
rather than fail to run it, welding the two coordinate systems at the
one place they must stay independent.

Chosen: identity as data (Configuration round-trips anything the catalog
names), behaviour exhaustive (Rules, no catch-all), resolve() between.
Decisive argument: the catalog ALREADY ships modules with a rules_delta
and status: proposed, so a per-aspect enum would report them as "unknown
module" -- indistinguishable from a typo, a false statement about the
edition, and this project's signature failure shape. Two facts need two
errors. Federating design authority is permanent, so the representation
must outlive the implementation.

Legacy ids alias forever through the catalog's own legacy_experiment_id,
on the standard-Np precedent: 26 recordings name them and the expansion
is exact, so there is nothing to deprecate.

T00 done: the schema-2 mirror had arrived with no digests (19 files) and
edition-check was red. Digests are now generated by WALKING editions/,
not typed -- two reviews already found hand-written lists that made
their own controls vacuous, and a mirror that grows a directory is what
breaks a maintained list. PROVENANCE-catalog.md was a file inside the
mirrored tree that upstream does not have; folded into our own
PROVENANCE.md, since provenance about the mirror does not belong inside
the thing it describes.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
tegwick 2026-08-08 22:07:57 +02:00
parent b39bc14861
commit bff64053ca
29 changed files with 1997 additions and 22 deletions

View file

@ -0,0 +1,7 @@
# Module: `attack_relief.none`
| | |
|---|---|
| **aspect** | `attack_relief` |
| **role** | **Default.** ATTACK never reduces attacker Stress. |
| **status** | baseline-default |

View file

@ -0,0 +1,10 @@
# Module: `attack_relief.self_soothe_ge4`
| | |
|---|---|
| **aspect** | `attack_relief` |
| **role** | Uncancelled ATTACK: if attacker Stress was ≥4 before effects → attacker 1 Stress |
| **status** | measured only as part of H1; alone unmeasured |
| **legacy** | H1-B half of `h1-problem-stress` |
Under H1, never fired for competent play (Stress stayed &lt;4). Worth re-trying **with** `problem_stress.scoped` as a composition profile.

View file

@ -0,0 +1,19 @@
# attack_relief.self_soothe_ge4 (was H1-B)
module_id: attack_relief.self_soothe_ge4
aspect: attack_relief
schema_version: 1
base: ground-darvo-r0
deltas:
- id: AR-H4
name: high_stress_attack_self_soothe
phase: resolve_attack
when:
attack_not_cancelled: true
attacker_stress_before_attack_effects_gte: 4
effect:
attacker_stress_delta: -1
order: after_target_and_relation_effects
notes: Former H1-B alone.
unchanged:
- deal_and_thresholds
- problem_pressure

View file

@ -0,0 +1,7 @@
# Module: `end_condition.fixed_rounds_5`
| | |
|---|---|
| **aspect** | `end_condition` |
| **role** | **Default.** Always play Round 15, then threshold + mode scoring. |
| **status** | baseline-default |

View file

@ -0,0 +1,16 @@
# Module: `end_condition.hybrid_clear_collapse`
| | |
|---|---|
| **aspect** | `end_condition` |
| **role** | End on **board clear**, **group collapse**, or **max rounds** (default max 5) |
| **status** | proposed — not yet implemented in kernel |
## Draft rules (not frozen)
1. **Clear:** after Solve, if no unclaimed Problems remain → end game; apply mode scoring (threshold auto-success if claimed value ≥ threshold).
2. **Collapse:** if no seat has Stress ≤ 3 **or** majority of seats are in active DARVO → end as group failure (SHARED) / no personal winners (semi/coalition).
3. **Ceiling:** if Round Max (5) completes without (1) or (2) → current threshold scoring.
**Compose with** any problem_stress / deal / attack_relief.
**Kernel:** not shipped — package `rules_delta.yaml` when implemented.

View file

@ -0,0 +1,39 @@
# module: end_condition.hybrid_clear_collapse — PROPOSED
module_id: end_condition.hybrid_clear_collapse
aspect: end_condition
schema_version: 1
base: ground-darvo-r0
status: proposed
implementation: pending
deltas:
- id: END-CLEAR
name: early_end_board_clear
phase: after_solve_step
when:
unclaimed_problems_in_play: 0
effect:
end_game: true
scoring: mode_as_usual
note: threshold treated as met if claimed_value >= threshold
- id: END-COLLAPSE
name: early_end_group_collapse
phase: round_end_after_stress_clamp
when:
any_of:
- no_seat_with_stress_lte: 3
- majority_seats_in_active_darvo: true
effect:
end_game: true
group_success: false
personal_winners: none
- id: END-CEILING
name: max_rounds_unchanged
phase: after_round
when:
round_completed: 5
effect:
end_game: true
scoring: mode_as_usual

View file

@ -0,0 +1,7 @@
# Module: `problem_deal.fixed_setup`
| | |
|---|---|
| **aspect** | `problem_deal` |
| **role** | **Default.** Surface + hidden 1..k at setup only; no mid-game Problem influx. |
| **status** | baseline-default |

View file

@ -0,0 +1,16 @@
# Module: `problem_deal.pressure_deck`
| | |
|---|---|
| **aspect** | `problem_deal` |
| **role** | Start with a small set; draw additional scoped Problems mid-game from a Pressure deck |
| **status** | proposed — not yet implemented |
## Draft rules (not frozen)
1. **Setup:** Surface (global) + 12 starters (mostly personal). Remaining scenario Problems form face-down **Pressure deck** (shuffled).
2. **Influx:** at Round End, if unclaimed count &lt; open_cap (e.g. seats) and deck non-empty, draw 1 into play face-down (or face-up if global).
3. **Owner:** personal → next clockwise from Lead among seats / drawer rule TBD; bond → owners network; global → none.
4. **Scoring (v0):** drawn cards may be **stress-only (0 points)** so thresholds stay on starters — decide before kernel work.
**Compose with** `problem_stress.scoped` (recommended) so drawn scopes matter.

View file

@ -0,0 +1,34 @@
# module: problem_deal.pressure_deck — PROPOSED
module_id: problem_deal.pressure_deck
aspect: problem_deal
schema_version: 1
base: ground-darvo-r0
status: proposed
implementation: pending
deltas:
- id: DEAL-START
name: reduced_initial_deal
phase: setup
effect:
initial_in_play: [surface, hidden_priority_1]
# optional: also priority_2 at 4p+
remainder_to: pressure_deck
pressure_deck_shuffle: deterministic_seeded
- id: DEAL-INFLUX
name: end_round_draw_if_room
phase: round_end
when:
pressure_deck_nonempty: true
unclaimed_count_lt: open_cap # open_cap := seats (proposed)
effect:
draw_problems: 1
place: in_play_face_down_unless_global
- id: DEAL-POINTS
name: drawn_card_scoring
phase: data
effect:
drawn_point_value: 0 # v0: stress-only; revisit
starter_threshold_unchanged: true

View file

@ -0,0 +1,14 @@
# Module: `problem_stress.flat_any_open`
| | |
|---|---|
| **aspect** | `problem_stress` |
| **role** | End of round: if **any** Problem unclaimed → **each** seat +1 Stress |
| **status** | measured → reject as sole pressure (H1-A); keep for A/B |
| **legacy** | H1-A half of `h1-problem-stress` |
| **measurement** | [RPT-0004](../../../../reports/260808-clay-borg-h1-measured.md) |
**Compose with:** any `end_condition`, `problem_deal`, `attack_relief`.
**Conflicts with:** other `problem_stress.*` modules (one per aspect).
Known result: flat tax → solve-rate collapse at 3p+ under greedy (when used alone or with H1-B).

View file

@ -0,0 +1,18 @@
# problem_stress.flat_any_open (was H1-A)
module_id: problem_stress.flat_any_open
aspect: problem_stress
schema_version: 1
base: ground-darvo-r0
deltas:
- id: PS-FLAT
name: flat_any_open_problem_pressure
phase: round_end
when:
any_problem_unclaimed: true
effect:
each_player_stress_delta: 1
notes: Former H1-A alone. +1 to every seat if any unclaimed Problem remains.
unchanged:
- deal_and_thresholds
- attack_resolution
- solve_legality

View file

@ -0,0 +1,9 @@
# Module: `problem_stress.none`
| | |
|---|---|
| **aspect** | `problem_stress` |
| **role** | **Default.** Unclaimed Problems do not raise Stress. |
| **status** | baseline-default |
This is the implicit r0 behaviour. No `rules_delta`; selecting it means “no problem_stress module active.”

View file

@ -0,0 +1,13 @@
# Module: `problem_stress.scoped`
| | |
|---|---|
| **aspect** | `problem_stress` |
| **role** | Unclaimed Problems +1 Stress to **stress_scope** only (personal / bond / global) |
| **status** | measured → keep-as-experiment; candidate for core |
| **legacy** | `h2-scoped-problem-stress` |
| **measurement** | [RPT-0005](../../../../reports/260808-clay-borg-h2-measured.md) |
Bond network shares ticks → joint SOLVE incentive (bots do not test joint motive).
**Compose with:** end, deal, attack_relief independently.
**Conflicts with:** other `problem_stress.*`.

View file

@ -0,0 +1,21 @@
problem_id,scenario_id,visibility,stress_scope,hidden_priority,title,problem_text,required_solution,symbol_id,point_value,front_rules,reveal_effect,unresolved_effect,back_design_id
PRB_01_S,SCN_01,Surface,global,0,Deadline Missed,A promised result was not delivered when expected.,Repair,SYM_REPAIR,2,Resolve with Repair. Value: 2.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=global (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM_SURFACE
PRB_01_1,SCN_01,Hidden,personal,1,Unclear Ownership,Responsibility for the commitment and the work was never made explicit.,Clarify,SYM_CLARIFY,2,Resolve with Clarify. Value: 2.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM
PRB_01_2,SCN_01,Hidden,personal,2,Unspoken Overload,The work required more capacity than someone could safely or fairly provide.,Boundary,SYM_BOUNDARY,2,Resolve with Boundary. Value: 2.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM
PRB_01_3,SCN_01,Hidden,bond,3,Bad News Was Delayed,A warning was withheld until the remaining options became worse.,Repair,SYM_REPAIR,3,Resolve with Repair. Value: 3.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=bond (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM
PRB_01_4,SCN_01,Hidden,personal,4,No Checkpoint Process,The group had no reliable moment for testing progress and changing course.,Change,SYM_CHANGE,3,Resolve with Change. Value: 3.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM
PRB_02_S,SCN_02,Surface,global,0,Shared Task Left Undone,"A recurring responsibility was not completed, and others absorbed the impact.",Repair,SYM_REPAIR,2,Resolve with Repair. Value: 2.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=global (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM_SURFACE
PRB_02_1,SCN_02,Hidden,personal,1,Different Standards,"Players were using different definitions of complete, timely, or fair.",Clarify,SYM_CLARIFY,2,Resolve with Clarify. Value: 2.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM
PRB_02_2,SCN_02,Hidden,personal,2,Invisible Workload,Some contributions and constraints were not visible to the group.,Boundary,SYM_BOUNDARY,2,Resolve with Boundary. Value: 2.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM
PRB_02_3,SCN_02,Hidden,bond,3,Resentment Never Raised,Frustration accumulated without a direct request or acknowledgement.,Repair,SYM_REPAIR,3,Resolve with Repair. Value: 3.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=bond (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM
PRB_02_4,SCN_02,Hidden,personal,4,No Ownership Routine,The group relied on goodwill instead of a dependable allocation method.,Change,SYM_CHANGE,3,Resolve with Change. Value: 3.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM
PRB_03_S,SCN_03,Surface,global,0,Decision Announced as Settled,A group-affecting choice was presented as final before meaningful agreement.,Boundary,SYM_BOUNDARY,2,Resolve with Boundary. Value: 2.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=global (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM_SURFACE
PRB_03_1,SCN_03,Hidden,personal,1,Mandate Was Ambiguous,"It was unclear who could decide, advise, consent, or veto.",Clarify,SYM_CLARIFY,2,Resolve with Clarify. Value: 2.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM
PRB_03_2,SCN_03,Hidden,personal,2,Contributions Were Dismissed,Relevant input was ignored or treated as less legitimate.,Repair,SYM_REPAIR,2,Resolve with Repair. Value: 2.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM
PRB_03_3,SCN_03,Hidden,bond,3,One Voice Spoke for Others,A player claimed authority to represent people who had not agreed.,Boundary,SYM_BOUNDARY,3,Resolve with Boundary. Value: 3.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=bond (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM
PRB_03_4,SCN_03,Hidden,personal,4,No Decision Rule,The group had no shared method for turning discussion into a legitimate choice.,Change,SYM_CHANGE,3,Resolve with Change. Value: 3.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM
PRB_04_S,SCN_04,Surface,global,0,Private Information Spread,Information moved beyond the circle in which it was originally shared.,Repair,SYM_REPAIR,2,Resolve with Repair. Value: 2.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=global (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM_SURFACE
PRB_04_1,SCN_04,Hidden,personal,1,Confidentiality Was Assumed,The players never made the scope of confidentiality explicit.,Clarify,SYM_CLARIFY,2,Resolve with Clarify. Value: 2.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM
PRB_04_2,SCN_04,Hidden,personal,2,Exposure Caused Harm,"The sharing changed another player's safety, reputation, or freedom to choose.",Repair,SYM_REPAIR,2,Resolve with Repair. Value: 2.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM
PRB_04_3,SCN_04,Hidden,bond,3,Consent Boundary Was Ignored,A clear or reasonably expected limit on sharing was crossed.,Boundary,SYM_BOUNDARY,3,Resolve with Boundary. Value: 3.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=bond (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM
PRB_04_4,SCN_04,Hidden,personal,4,No Sharing Protocol,"The group lacked a repeatable rule for consent, need-to-know, and escalation.",Change,SYM_CHANGE,3,Resolve with Change. Value: 3.,None in the core set.,"H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all).",BACK_PROBLEM
1 problem_id scenario_id visibility stress_scope hidden_priority title problem_text required_solution symbol_id point_value front_rules reveal_effect unresolved_effect back_design_id
2 PRB_01_S SCN_01 Surface global 0 Deadline Missed A promised result was not delivered when expected. Repair SYM_REPAIR 2 Resolve with Repair. Value: 2. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=global (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM_SURFACE
3 PRB_01_1 SCN_01 Hidden personal 1 Unclear Ownership Responsibility for the commitment and the work was never made explicit. Clarify SYM_CLARIFY 2 Resolve with Clarify. Value: 2. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM
4 PRB_01_2 SCN_01 Hidden personal 2 Unspoken Overload The work required more capacity than someone could safely or fairly provide. Boundary SYM_BOUNDARY 2 Resolve with Boundary. Value: 2. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM
5 PRB_01_3 SCN_01 Hidden bond 3 Bad News Was Delayed A warning was withheld until the remaining options became worse. Repair SYM_REPAIR 3 Resolve with Repair. Value: 3. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=bond (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM
6 PRB_01_4 SCN_01 Hidden personal 4 No Checkpoint Process The group had no reliable moment for testing progress and changing course. Change SYM_CHANGE 3 Resolve with Change. Value: 3. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM
7 PRB_02_S SCN_02 Surface global 0 Shared Task Left Undone A recurring responsibility was not completed, and others absorbed the impact. Repair SYM_REPAIR 2 Resolve with Repair. Value: 2. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=global (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM_SURFACE
8 PRB_02_1 SCN_02 Hidden personal 1 Different Standards Players were using different definitions of complete, timely, or fair. Clarify SYM_CLARIFY 2 Resolve with Clarify. Value: 2. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM
9 PRB_02_2 SCN_02 Hidden personal 2 Invisible Workload Some contributions and constraints were not visible to the group. Boundary SYM_BOUNDARY 2 Resolve with Boundary. Value: 2. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM
10 PRB_02_3 SCN_02 Hidden bond 3 Resentment Never Raised Frustration accumulated without a direct request or acknowledgement. Repair SYM_REPAIR 3 Resolve with Repair. Value: 3. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=bond (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM
11 PRB_02_4 SCN_02 Hidden personal 4 No Ownership Routine The group relied on goodwill instead of a dependable allocation method. Change SYM_CHANGE 3 Resolve with Change. Value: 3. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM
12 PRB_03_S SCN_03 Surface global 0 Decision Announced as Settled A group-affecting choice was presented as final before meaningful agreement. Boundary SYM_BOUNDARY 2 Resolve with Boundary. Value: 2. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=global (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM_SURFACE
13 PRB_03_1 SCN_03 Hidden personal 1 Mandate Was Ambiguous It was unclear who could decide, advise, consent, or veto. Clarify SYM_CLARIFY 2 Resolve with Clarify. Value: 2. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM
14 PRB_03_2 SCN_03 Hidden personal 2 Contributions Were Dismissed Relevant input was ignored or treated as less legitimate. Repair SYM_REPAIR 2 Resolve with Repair. Value: 2. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM
15 PRB_03_3 SCN_03 Hidden bond 3 One Voice Spoke for Others A player claimed authority to represent people who had not agreed. Boundary SYM_BOUNDARY 3 Resolve with Boundary. Value: 3. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=bond (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM
16 PRB_03_4 SCN_03 Hidden personal 4 No Decision Rule The group had no shared method for turning discussion into a legitimate choice. Change SYM_CHANGE 3 Resolve with Change. Value: 3. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM
17 PRB_04_S SCN_04 Surface global 0 Private Information Spread Information moved beyond the circle in which it was originally shared. Repair SYM_REPAIR 2 Resolve with Repair. Value: 2. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=global (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM_SURFACE
18 PRB_04_1 SCN_04 Hidden personal 1 Confidentiality Was Assumed The players never made the scope of confidentiality explicit. Clarify SYM_CLARIFY 2 Resolve with Clarify. Value: 2. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM
19 PRB_04_2 SCN_04 Hidden personal 2 Exposure Caused Harm The sharing changed another player's safety, reputation, or freedom to choose. Repair SYM_REPAIR 2 Resolve with Repair. Value: 2. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM
20 PRB_04_3 SCN_04 Hidden bond 3 Consent Boundary Was Ignored A clear or reasonably expected limit on sharing was crossed. Boundary SYM_BOUNDARY 3 Resolve with Boundary. Value: 3. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=bond (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM
21 PRB_04_4 SCN_04 Hidden personal 4 No Sharing Protocol The group lacked a repeatable rule for consent, need-to-know, and escalation. Change SYM_CHANGE 3 Resolve with Change. Value: 3. None in the core set. H2: while unclaimed, +1 Stress at Round End to stress_scope=personal (personal=owner; bond=owner's Bond network; global=all). BACK_PROBLEM

View file

@ -0,0 +1,23 @@
order,section,heading,body
1,Object,What players are trying to do,"Uncover hidden Problems and solve them with matching Solutions before the end of Round 5. Support, Attack, Bonds, Rivalries, Stress, DARVO, and GROUND determine how much freedom each player retains while doing so. The game is for 26 players in every Mode, including SHARED GROUND."
2,Setup,Choose the game,"Choose one Scenario card and one Mode card. Always use the Scenario's Surface Problem. Then add hidden Problems by player count: priorities 12 for 2 players, 13 for 34 players, and 14 for 56 players. Surface is never optional and is never counted as one of those hidden priorities."
3,Setup,Problems in play and available value,"Problems in play = Surface + the selected hidden priorities. With the core problem values (2+2+2+3+3), available points are 6 at 2 players, 9 at 34 players, and 12 at 56 players. Every published setup must keep the Scenario threshold at or below that available total so the group can win in principle."
4,Setup,Prepare each player,"Each player takes one mat, the five Action cards with their player symbol, one Stress marker at 2, one ready Freedom token, one DARVO marker at OFF, one Focus/Blame token, and two relation-link tokens. Deal two Solution cards to each player."
5,Setup,Prepare the table,"Place the Surface Problem face up and the selected hidden Problems face down. Put the remaining Solution deck within reach. Give the Lead marker to a random player and place the Round marker on 1. H2 stress scope: each Problem has a printed stress_scope (global / personal / bond). Assign owners for every personal and bond Problem in play: in ascending hidden_priority order, assign the next seat clockwise starting from Lead (each assignment uses the next seat). Place that seat's owner marker on the card (or note it). Global Problems have no owner."
6,Round,1. Select,"Every player chooses one Action face down and places it beside its target where needed. At Stress 4 or 5, a player must choose ATTACK or GROUND unless they spend a ready Freedom token before reveal."
7,Round,2. Reveal,Reveal all selected Actions simultaneously. Players using GROUND choose their mode after seeing the revealed Actions.
8,Round,3. Resolve,"Resolve in this order: GROUND, Support, active DARVO stages, Investigate, Attack, Solve. Within the same step, start with the Lead player and continue clockwise."
9,Round,4. End,"H2 scoped problem pressure: for each still-unclaimed Problem in play, add +1 Stress to every seat in that Problem's stress_scope (see Problems). Then cap Stress at 05. Any player at Stress 5 who is not already in DARVO places their marker on DENY for the next round. Rotate Lead clockwise and advance the Round marker."
10,Stress,Stress and Freedom,"Stress 03 allows any Action. At Stress 45, only ATTACK or GROUND is freely available. Spending a ready Freedom token allows any one Action; turn it to SPENT. GROUND—GR and Support through an existing Bond can ready it. H2: inbound Stress also comes from unclaimed Problems by scope — personal (owner only), bond (owner's Bond network), global (all seats)."
11,DARVO,A binding sequence,"Once triggered, DARVO continues from DENY to ATTACK to REVERSE over consecutive rounds even if Stress later falls. Existing Bond Support cancels the current stage and ends the sequence. GROUND—GR lets the current stage resolve, then ends the remaining sequence."
12,DARVO,DENY,Turn one visible unsolved Problem face down and mark it Denied. It cannot be solved or revealed by ordinary Investigate. GROUND—OU can restore it.
13,DARVO,ATTACK,Make one extra Attack against another player and place your Focus token beside that target. This extra Attack is in addition to your chosen Action.
14,DARVO,REVERSE,"Target the player holding your Focus. Unless rejected by GROUND—ND, flip Focus to Blame in front of them, give them +1 Stress, and gain Protection. Reduce your own Stress by 2 and end the sequence."
15,Relations,Creating and limiting relations,"Every player has two relation slots. A relation uses one link token from each player. If either player has no free slot, the immediate Support or Attack still works but no new relation is formed. Only one relation may exist between the same two players."
16,Relations,Bond,A no-relation Support may create a Bond if both players have a free slot and the target accepts. Support through an existing Bond is strong enough to regulate DARVO. Attack through a Bond causes +2 Stress and flips it to Rivalry.
17,Relations,Rivalry,A no-relation Attack creates Rivalry automatically when both slots are available. Attack through Rivalry causes +2 Stress and breaks it. Support through Rivalry causes 1 Stress; the target chooses to flip it to Bond or break it.
18,Problems,Hidden and Denied Problems,"Only face-up, non-Denied Problems can be solved. Investigate reveals one hidden Problem and draws one Solution. Deny can turn a previously revealed Problem face down again."
19,Problems,Solving,"Play SOLVE beside a face-up Problem and discard one matching Solution when Solve resolves. Claim that Problem and count its printed value. If another player claims it first in Lead order, keep your Solution. H2: any seat with a matching Solution may SOLVE any Problem — claim rights are not limited by stress_scope or owner. Clearing a bond-scoped Problem relieves the whole Bond network."
20,Problems,Stress scope (H2 experiment),"Each Problem has stress_scope. global: every seat. personal: the assigned owner only. bond: the owner and every seat connected to the owner through one or more Bonds (the Bond network). If the owner has no Bonds, bond scope behaves as personal. Rivalries do not expand bond scope. Multiple unclaimed Problems stack (+1 each) for seats in their scopes."
21,End,End of game,"After Round 5, total solved Problem values and apply the selected Mode card. The Scenario's Standard thresholds are 5 for 2 players, 7 for 34 players, and 9 for 56 players — always at or below available points for that seat band (6 / 9 / 12)."
22,Safety,Learning frame,"DARVO is a response pattern, not proof of an underlying accusation and not a diagnosis. GROUND does not require reconciliation. Breaking a relation, bringing in process, or preserving personal freedom can be a successful result."
1 order section heading body
2 1 Object What players are trying to do Uncover hidden Problems and solve them with matching Solutions before the end of Round 5. Support, Attack, Bonds, Rivalries, Stress, DARVO, and GROUND determine how much freedom each player retains while doing so. The game is for 2–6 players in every Mode, including SHARED GROUND.
3 2 Setup Choose the game Choose one Scenario card and one Mode card. Always use the Scenario's Surface Problem. Then add hidden Problems by player count: priorities 1–2 for 2 players, 1–3 for 3–4 players, and 1–4 for 5–6 players. Surface is never optional and is never counted as one of those hidden priorities.
4 3 Setup Problems in play and available value Problems in play = Surface + the selected hidden priorities. With the core problem values (2+2+2+3+3), available points are 6 at 2 players, 9 at 3–4 players, and 12 at 5–6 players. Every published setup must keep the Scenario threshold at or below that available total so the group can win in principle.
5 4 Setup Prepare each player Each player takes one mat, the five Action cards with their player symbol, one Stress marker at 2, one ready Freedom token, one DARVO marker at OFF, one Focus/Blame token, and two relation-link tokens. Deal two Solution cards to each player.
6 5 Setup Prepare the table Place the Surface Problem face up and the selected hidden Problems face down. Put the remaining Solution deck within reach. Give the Lead marker to a random player and place the Round marker on 1. H2 stress scope: each Problem has a printed stress_scope (global / personal / bond). Assign owners for every personal and bond Problem in play: in ascending hidden_priority order, assign the next seat clockwise starting from Lead (each assignment uses the next seat). Place that seat's owner marker on the card (or note it). Global Problems have no owner.
7 6 Round 1. Select Every player chooses one Action face down and places it beside its target where needed. At Stress 4 or 5, a player must choose ATTACK or GROUND unless they spend a ready Freedom token before reveal.
8 7 Round 2. Reveal Reveal all selected Actions simultaneously. Players using GROUND choose their mode after seeing the revealed Actions.
9 8 Round 3. Resolve Resolve in this order: GROUND, Support, active DARVO stages, Investigate, Attack, Solve. Within the same step, start with the Lead player and continue clockwise.
10 9 Round 4. End H2 scoped problem pressure: for each still-unclaimed Problem in play, add +1 Stress to every seat in that Problem's stress_scope (see Problems). Then cap Stress at 0–5. Any player at Stress 5 who is not already in DARVO places their marker on DENY for the next round. Rotate Lead clockwise and advance the Round marker.
11 10 Stress Stress and Freedom Stress 0–3 allows any Action. At Stress 4–5, only ATTACK or GROUND is freely available. Spending a ready Freedom token allows any one Action; turn it to SPENT. GROUND—GR and Support through an existing Bond can ready it. H2: inbound Stress also comes from unclaimed Problems by scope — personal (owner only), bond (owner's Bond network), global (all seats).
12 11 DARVO A binding sequence Once triggered, DARVO continues from DENY to ATTACK to REVERSE over consecutive rounds even if Stress later falls. Existing Bond Support cancels the current stage and ends the sequence. GROUND—GR lets the current stage resolve, then ends the remaining sequence.
13 12 DARVO DENY Turn one visible unsolved Problem face down and mark it Denied. It cannot be solved or revealed by ordinary Investigate. GROUND—OU can restore it.
14 13 DARVO ATTACK Make one extra Attack against another player and place your Focus token beside that target. This extra Attack is in addition to your chosen Action.
15 14 DARVO REVERSE Target the player holding your Focus. Unless rejected by GROUND—ND, flip Focus to Blame in front of them, give them +1 Stress, and gain Protection. Reduce your own Stress by 2 and end the sequence.
16 15 Relations Creating and limiting relations Every player has two relation slots. A relation uses one link token from each player. If either player has no free slot, the immediate Support or Attack still works but no new relation is formed. Only one relation may exist between the same two players.
17 16 Relations Bond A no-relation Support may create a Bond if both players have a free slot and the target accepts. Support through an existing Bond is strong enough to regulate DARVO. Attack through a Bond causes +2 Stress and flips it to Rivalry.
18 17 Relations Rivalry A no-relation Attack creates Rivalry automatically when both slots are available. Attack through Rivalry causes +2 Stress and breaks it. Support through Rivalry causes −1 Stress; the target chooses to flip it to Bond or break it.
19 18 Problems Hidden and Denied Problems Only face-up, non-Denied Problems can be solved. Investigate reveals one hidden Problem and draws one Solution. Deny can turn a previously revealed Problem face down again.
20 19 Problems Solving Play SOLVE beside a face-up Problem and discard one matching Solution when Solve resolves. Claim that Problem and count its printed value. If another player claims it first in Lead order, keep your Solution. H2: any seat with a matching Solution may SOLVE any Problem — claim rights are not limited by stress_scope or owner. Clearing a bond-scoped Problem relieves the whole Bond network.
21 20 Problems Stress scope (H2 experiment) Each Problem has stress_scope. global: every seat. personal: the assigned owner only. bond: the owner and every seat connected to the owner through one or more Bonds (the Bond network). If the owner has no Bonds, bond scope behaves as personal. Rivalries do not expand bond scope. Multiple unclaimed Problems stack (+1 each) for seats in their scopes.
22 21 End End of game After Round 5, total solved Problem values and apply the selected Mode card. The Scenario's Standard thresholds are 5 for 2 players, 7 for 3–4 players, and 9 for 5–6 players — always at or below available points for that seat band (6 / 9 / 12).
23 22 Safety Learning frame DARVO is a response pattern, not proof of an underlying accusation and not a diagnosis. GROUND does not require reconciliation. Breaking a relation, bringing in process, or preserving personal freedom can be a successful result.

View file

@ -0,0 +1,58 @@
# module: problem_stress.scoped (formerly experiment h2-scoped-problem-stress)
# Compose with other axes freely; do not require attack_relief or end/deal modules.
module_id: problem_stress.scoped
aspect: problem_stress
schema_version: 1
base: ground-darvo-r0
legacy_experiment_id: h2-scoped-problem-stress
deltas:
- id: PS-SCOPE
name: problem_stress_scope_field
phase: data
effect:
problems_csv_column: stress_scope
allowed_values: [global, personal, bond]
edition_assignment_by_hidden_priority:
0: global
1: personal
2: personal
3: bond
4: personal
- id: PS-OWN
name: assign_owners_at_setup
phase: setup_after_deal
when:
problem_stress_scope_in: [personal, bond]
effect:
assign_owner:
order: ascending_hidden_priority_among_in_play_non_global
start: lead
step: clockwise_next_seat
- id: PS-TICK
name: scoped_problem_pressure_end_of_round
phase: round_end
when:
problem_unclaimed: true
effect:
stress_delta_per_matching_problem: +1
recipients: stress_scope_of_that_problem
scope_resolution:
global: all_seats
personal: [owner]
bond: bond_network_of_owner
stacking: true
- id: PS-SOLVE
name: claim_not_restricted_by_scope
phase: resolve_solve
effect:
any_seat_with_matching_suit_may_solve: true
owner_need_not_be_solver: true
data_overlays:
- Problems.csv
- Rules_Text.csv