From 34d8bca2712a2214e23a0c61675f4b880d8c082a Mon Sep 17 00:00:00 2001 From: tegwick Date: Mon, 3 Aug 2026 18:55:53 +0200 Subject: [PATCH 1/3] Sync hub IDs and work-record index for GROUND-WP-0002 Co-Authored-By: Claude Opus 5 --- WORK-RECORDS.md | 13 +++++++++---- ...ROUND-WP-0002-rulings-clay-borg-is-blocked-on.md | 5 +++++ 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/WORK-RECORDS.md b/WORK-RECORDS.md index b6b3b85..be86d86 100644 --- a/WORK-RECORDS.md +++ b/WORK-RECORDS.md @@ -8,7 +8,12 @@ | Kind | ID | Status | Lane | Source | | --- | --- | --- | --- | --- | -| workplan | GROUND-WP-0001 | ready | — | workplans/GROUND-WP-0001-statehub-bootstrap.md | -| task | GROUND-WP-0001-T01 | todo | — | workplans/GROUND-WP-0001-statehub-bootstrap.md | -| task | GROUND-WP-0001-T02 | todo | — | workplans/GROUND-WP-0001-statehub-bootstrap.md | -| task | GROUND-WP-0001-T03 | todo | — | workplans/GROUND-WP-0001-statehub-bootstrap.md | +| workplan | GROUND-WP-0001 | done | — | workplans/GROUND-WP-0001-statehub-bootstrap.md | +| workplan | GROUND-WP-0002 | ready | — | workplans/GROUND-WP-0002-rulings-clay-borg-is-blocked-on.md | +| task | GROUND-WP-0001-T01 | done | — | workplans/GROUND-WP-0001-statehub-bootstrap.md | +| task | GROUND-WP-0001-T02 | done | — | workplans/GROUND-WP-0001-statehub-bootstrap.md | +| task | GROUND-WP-0001-T03 | done | — | workplans/GROUND-WP-0001-statehub-bootstrap.md | +| task | GROUND-WP-0002-T01 | todo | — | workplans/GROUND-WP-0002-rulings-clay-borg-is-blocked-on.md | +| task | GROUND-WP-0002-T02 | todo | — | workplans/GROUND-WP-0002-rulings-clay-borg-is-blocked-on.md | +| task | GROUND-WP-0002-T03 | todo | — | workplans/GROUND-WP-0002-rulings-clay-borg-is-blocked-on.md | +| task | GROUND-WP-0002-T04 | todo | — | workplans/GROUND-WP-0002-rulings-clay-borg-is-blocked-on.md | diff --git a/workplans/GROUND-WP-0002-rulings-clay-borg-is-blocked-on.md b/workplans/GROUND-WP-0002-rulings-clay-borg-is-blocked-on.md index fc9048d..65af86a 100644 --- a/workplans/GROUND-WP-0002-rulings-clay-borg-is-blocked-on.md +++ b/workplans/GROUND-WP-0002-rulings-clay-borg-is-blocked-on.md @@ -9,6 +9,7 @@ owner: bernd topic_slug: whynot created: "2026-08-03" updated: "2026-08-03" +state_hub_workstream_id: "d8fc3a69-a5ae-4f6e-b4fc-b07d1ff9c783" --- # Rulings the engine is blocked on @@ -55,6 +56,7 @@ dissolve without anyone changing a rule. id: GROUND-WP-0002-T01 status: todo priority: high +state_hub_task_id: "431cca12-e6d9-4eba-9360-f4f13ed263c1" ``` State whether `editions/ground-darvo-r0/` is the **authoritative** source @@ -79,6 +81,7 @@ threshold question below stays unanswerable.** id: GROUND-WP-0002-T02 status: todo priority: high +state_hub_task_id: "895573ac-d7b9-4160-a118-5bc8866c28c8" ``` Three related questions, all raised by play, all currently decided by the @@ -111,6 +114,7 @@ is meant to learn from the waste. id: GROUND-WP-0002-T03 status: todo priority: medium +state_hub_task_id: "52cc157f-8fbd-469d-9da7-a96f1c60b654" ``` Six engine scenarios are tagged `provisional: true` with @@ -136,6 +140,7 @@ T01 may dissolve it. id: GROUND-WP-0002-T04 status: todo priority: medium +state_hub_task_id: "6c55eb56-22dc-4ee2-ac1a-4ced0dedfab9" ``` Both scoring modes are implemented and neither has been played through a From 6c2aaf89b0ce1ead0c092385f0a898a58801a8b1 Mon Sep 17 00:00:00 2001 From: tegwick Date: Mon, 3 Aug 2026 18:56:40 +0200 Subject: [PATCH 2/3] GROUND-WP-0002: add T05, the ten underdetermined points clay-borg messaged this repo on 2026-07-30 with ten rules points the dataset does not decide (U1-U10), each simulated under a provisional default, asking for confirm-or-correct per item. Four days later it was still unread, because there was nowhere for it to land. U2 (stress clamping), U6 (same-round Bond-Support vs DARVO step order) and U8 (GROUND-OU cancelling an Attack before Protection is consumed) are the three that change play -- each decides whether a DARVO stage fires at all. The rest are edge cases or confirmations. T03's six provisional scenarios are the scenarios that ENCODE these defaults, so T05 comes first and T03 becomes the check that nothing was missed. Co-Authored-By: Claude Opus 5 --- ...WP-0002-rulings-clay-borg-is-blocked-on.md | 46 +++++++++++++++++-- 1 file changed, 41 insertions(+), 5 deletions(-) diff --git a/workplans/GROUND-WP-0002-rulings-clay-borg-is-blocked-on.md b/workplans/GROUND-WP-0002-rulings-clay-borg-is-blocked-on.md index 65af86a..361b2f3 100644 --- a/workplans/GROUND-WP-0002-rulings-clay-borg-is-blocked-on.md +++ b/workplans/GROUND-WP-0002-rulings-clay-borg-is-blocked-on.md @@ -15,8 +15,9 @@ state_hub_workstream_id: "d8fc3a69-a5ae-4f6e-b4fc-b07d1ff9c783" # Rulings the engine is blocked on `clay-borg` implements the engine that simulates GROUND. Its INTENT says -game-semantics questions defer to **this** repo. Nine such questions have -accumulated there and none has been answered, because none had a home. +game-semantics questions defer to **this** repo. Ten underdetermined rules points, six provisional scenarios and three +questions raised by play have accumulated there, and none has been +answered, because none had a home. This is their home. **Nothing here is a clay-borg change.** Every item is a ruling only the @@ -108,6 +109,40 @@ or a gap? For each: **intended, or not offered.** If intended, say what the player is meant to learn from the waste. +## Task: answer the ten underdetermined points (U1–U10) + +```task +id: GROUND-WP-0002-T05 +status: todo +priority: high +``` + +**This is the oldest item and it has never been read.** `clay-borg` +messaged this repo on **2026-07-30** with ten points the dataset does not +decide, each simulated under a provisional default, asking for *"confirm / +correct (with ruling)"* per item. Four days later the message was still +unopened, because there was nowhere for it to land. Now there is. + +| | question | the default clay-borg simulates | +|---|---|---| +| **U1** | Bond-acceptance timing | the target decides during Support resolution, post-reveal | +| **U2** | Stress clamping | clamp on **every** application, not only at End — this changes when DARVO triggers mid-round | +| **U3** | DENY with no legal target | no-op; the sequence still advances | +| **U4** | Solution deck exhaustion | deterministic reshuffle of the discard, else skip the draw | +| **U5** | rejected REVERSE self-effects | owner still gets −2 Stress and the sequence ends; no Blame, no +1, no Protection | +| **U6** | same-round Bond-Support vs DARVO | the Support cancels that round's DARVO stage **before it fires** (step order 2 before 3) | +| **U7** | player elimination | none exists — **confirm** | +| **U8** | GROUND—OU vs Attack | OU cancels the Attack **before** Protection is consumed | +| **U9** | simultaneous double DARVO trigger | needs no extra rule — **confirm** | +| **U10** | hand limit | none | + +Full text of each default is in `clay-borg/specs/GroundRules.md` +§Underdetermined. **U2, U6 and U8 are the ones that change play**, because +each decides whether a DARVO stage fires at all; the rest are edge cases +or confirmations. + +Answer per item: **confirm**, or **correct with the ruling**. + ## Task: confirm or overturn the six provisional defaults ```task @@ -118,9 +153,10 @@ state_hub_task_id: "52cc157f-8fbd-469d-9da7-a96f1c60b654" ``` Six engine scenarios are tagged `provisional: true` with -`provisional_owner: ground-game`. Each encodes a default the engine had to -pick because the rules did not say. A ruling flips the scenario; it does -not change the kernel. +`provisional_owner: ground-game`. These are the **scenarios** that encode +T05's defaults — answering U1–U10 will settle most of them, so take T05 +first and use this list to check nothing was missed. A ruling flips the +scenario; it does not change the kernel. | scenario | the default currently in force | |---|---| From 0eea2870995642ae8611654350f410cf06629534 Mon Sep 17 00:00:00 2001 From: tegwick Date: Mon, 3 Aug 2026 19:31:31 +0200 Subject: [PATCH 3/3] GROUND-WP-0002 T01: the edition dataset is authoritative Ruled by the maintainer 2026-08-03. editions/ground-darvo-r0/ is the source of truth for Problem values, required solutions, visibility and priority, and the engine must import it rather than invent them. This unblocks clay-borg and very likely dissolves gr-e01-threshold-unreachable-2p. The three sub-questions were not ruled, so proposed defaults are recorded rather than blocking the import on them: which columns are authoritative vs presentational; that point_value and required_solution may NOT change within r0; and that a version bump is the directory name, so it shows in a diff and is never silent. The second matters most: the engine hashes game state and a Problem's value and required suit are IN that state. If they can change under a fixed revision name, every recorded scenario hash in clay-borg silently rots. Hence 'no' rather than 'probably not'. Co-Authored-By: Claude Opus 5 --- ...WP-0002-rulings-clay-borg-is-blocked-on.md | 33 +++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) diff --git a/workplans/GROUND-WP-0002-rulings-clay-borg-is-blocked-on.md b/workplans/GROUND-WP-0002-rulings-clay-borg-is-blocked-on.md index 361b2f3..ea1548b 100644 --- a/workplans/GROUND-WP-0002-rulings-clay-borg-is-blocked-on.md +++ b/workplans/GROUND-WP-0002-rulings-clay-borg-is-blocked-on.md @@ -4,7 +4,7 @@ type: workplan title: "Rulings the engine is blocked on, and the dataset it never loaded" domain: consumer repo: ground-game -status: ready +status: active owner: bernd topic_slug: whynot created: "2026-08-03" @@ -55,7 +55,7 @@ dissolve without anyone changing a rule. ```task id: GROUND-WP-0002-T01 -status: todo +status: done priority: high state_hub_task_id: "431cca12-e6d9-4eba-9360-f4f13ed263c1" ``` @@ -76,6 +76,35 @@ contract clay-borg can build against: **Until this is answered the engine cannot import the data, and every threshold question below stays unanswerable.** +**RULED 2026-08-03, by the maintainer:** *"The edition dataset is +authoritative."* + +So `editions/ground-darvo-r0/` is the source of truth for Problem values, +required solutions, visibility and priority, and **the engine must import +it rather than invent them**. That unblocks clay-borg and it very likely +dissolves `gr-e01-threshold-unreachable-2p` — see T03. + +### What was ruled, and what was not + +The headline is answered. The three sub-questions were not, and rather +than block the import on them, these are the **proposed defaults**; each +is cheap to overturn and none is load-bearing for a first import: + +| question | proposed default | +|---|---| +| authoritative vs presentational columns | **authoritative:** `problem_id`, `scenario_id`, `visibility`, `hidden_priority`, `required_solution`, `point_value`. **Presentational:** `title`, `problem_text`, `symbol_id`, `front_rules`, `reveal_effect`, `unresolved_effect`, `back_design_id` | +| may `point_value` / `required_solution` change within `r0`? | **no** — a change to either is a new revision | +| what a version bump looks like | the directory name: `ground-darvo-r0` → `-r1`. The engine pins a directory, so a bump is visible in a diff and never silent | + +**The distinction that matters** is the second: the engine will hash game +state, and a Problem's value and required suit are *in* that state. If +they can change under a fixed revision name, every recorded scenario hash +in clay-borg silently rots. That is why "no" is proposed rather than +"probably not". + +**Owed:** confirm or overturn the three rows above. Until then the engine +imports under them and says so. + ## Task: rule on SOLVE's legality ```task