clay-borg/scenarios/ground
tegwick e3d0df6690 T08: give provisional defaults an owner, a date, and a visible age
Five scenarios encoded U-item defaults with no owner and no review date,
so they could shape the kernel indefinitely while looking handled.

Each now carries provisional_owner and provisional_raised, and the
runtime's ScenarioFile learned both fields (deny_unknown_fields meant
adding them to YAML alone would have failed every scenario -- the parser
had to agree).

make coverage reports every provisional item with its owner and age in
days, warns on any with no owner, and warns past 30 days. It WARNS
rather than breaking the build, on purpose: the ruling is ground-game's
to make and the kernel cannot make it for them. What the loop can
enforce is that evidence files list them, which is now stated in
GroundRules.

rule-coverage --self-test gained an assertion that every provisional
item has both fields, so the next one added without them fails a
command rather than passing quietly.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 09:29:40 +02:00
..
gr-a01-investigate.yaml T08 iter 3: GROUND modes, INVESTIGATE, SOLVE 2026-07-31 02:23:09 +02:00
gr-a02-solve.yaml T08 iter 6: game end and the three scoring modes; AM-1 at 100% 2026-07-31 02:33:27 +02:00
gr-a04-bond-support.yaml T08: give provisional defaults an owner, a date, and a visible age 2026-07-31 09:29:40 +02:00
gr-a05-support-response.yaml T08 iter 4: GROUND-OU/ND choices and Support consent 2026-07-31 02:27:25 +02:00
gr-a07-bond-flip.yaml T08 iter 3: GROUND modes, INVESTIGATE, SOLVE 2026-07-31 02:23:09 +02:00
gr-a08-rivalry-break.yaml T08 iter 3: GROUND modes, INVESTIGATE, SOLVE 2026-07-31 02:23:09 +02:00
gr-a10-ground-gr.yaml T08 iter 3: GROUND modes, INVESTIGATE, SOLVE 2026-07-31 02:23:09 +02:00
gr-a11-ground-ou.yaml T08 iter 4: GROUND-OU/ND choices and Support consent 2026-07-31 02:27:25 +02:00
gr-a12-ground-nd.yaml T08 iter 4: GROUND-OU/ND choices and Support consent 2026-07-31 02:27:25 +02:00
gr-d01-darvo-trigger.yaml T08: give provisional defaults an owner, a date, and a visible age 2026-07-31 09:29:40 +02:00
gr-d03-darvo-deny.yaml T08 iter 5: the DARVO sequence machine 2026-07-31 02:30:58 +02:00
gr-d04-darvo-attack.yaml T08 iter 5: the DARVO sequence machine 2026-07-31 02:30:58 +02:00
gr-d05-darvo-reverse.yaml T08: give provisional defaults an owner, a date, and a visible age 2026-07-31 09:29:40 +02:00
gr-d06-darvo-early-end.yaml T08 iter 5: the DARVO sequence machine 2026-07-31 02:30:58 +02:00
gr-e02-shared-ground.yaml T08: give provisional defaults an owner, a date, and a visible age 2026-07-31 09:29:40 +02:00
gr-e04-coalitions.yaml T08: give provisional defaults an owner, a date, and a visible age 2026-07-31 09:29:40 +02:00
gr-f02-no-gate.yaml T08 iter 6: game end and the three scoring modes; AM-1 at 100% 2026-07-31 02:33:27 +02:00
gr-r02-select.yaml T08 iter 3: GROUND modes, INVESTIGATE, SOLVE 2026-07-31 02:23:09 +02:00
gr-r03-stress-gate.yaml T08 iter 1: scenario runner executes; GROUND setup and Select step 2026-07-31 02:14:34 +02:00
gr-r06-round-resolve.yaml T08 iter 3: GROUND modes, INVESTIGATE, SOLVE 2026-07-31 02:23:09 +02:00
smoke-setup.yaml T08 iter 6: game end and the three scoring modes; AM-1 at 100% 2026-07-31 02:33:27 +02:00