clay-borg/workplans
tegwick c6607e8233
Some checks failed
ci / check (push) Has been cancelled
ADR-0023 + CB-WP-0049 T01: a policy is bound by what its seat can see
Policy::choose takes the whole GroundState -- every face-down Problem's
suit and value, every seat's hand -- which is exactly what project()
exists to withhold. No shipped policy reads it, but the first thing a
competitive policy must do is VALUE a Problem, and value is the hidden
field. The trap goes live on the first line of the F27 work.

Established behaviourally rather than by narrowing the trait: vary only
what the seat cannot see, and the choice must not move. That binds every
policy including ones written later and outside this crate, without
their cooperation. The mirror of ADR-0013 D1 -- same kernel, two
searches, opposite permissions, discriminated by WHEN the question is
asked; a policy plays from inside an information set, so retrospective
permission would be strategy fusion.

Running the control found two defects IN THE CONTROL:

1. The rearrangements rotated hidden values 2<->3 together, leaving max
   invariant -- so the deliberate peeker, which ranks by the largest
   hidden value, was not caught. A control whose variation is invariant
   under the statistic a violator reads is not a control.
2. It accused `random` of peeking, because it reused one policy instance
   and compared a first call against a fourth. It takes a constructor
   now, so every variant is judged from identical policy state.

Both are a difference in output read as evidence about hidden state --
the wrong-subject family, found twice inside a control written to detect
wrong subjects.

Three mutations, three red. The control is proven against a deliberate
violator before being trusted about compliant policies.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-08 22:45:55 +02:00
..
CB-WP-0001-inner-loop.md CB-WP-0007 T01+T03: window the metric, budget it, cap meta at 25% 2026-08-01 14:12:07 +02:00
CB-WP-0002-cost-accounting.md CB-WP-0007 T01+T03: window the metric, budget it, cap meta at 25% 2026-08-01 14:12:07 +02:00
CB-WP-0003-loop-hardening.md CB-WP-0007 T01+T03: window the metric, budget it, cap meta at 25% 2026-08-01 14:12:07 +02:00
CB-WP-0004-mechanical-work.md CB-WP-0007 T01+T03: window the metric, budget it, cap meta at 25% 2026-08-01 14:12:07 +02:00
CB-WP-0005-assertion-coverage.md CB-WP-0007 T01+T03: window the metric, budget it, cap meta at 25% 2026-08-01 14:12:07 +02:00
CB-WP-0006-instrument-the-table.md CB-WP-0007 T01+T03: window the metric, budget it, cap meta at 25% 2026-08-01 14:12:07 +02:00
CB-WP-0007-session-shape.md CB-WP-0010-T01: close CB-WP-0007 2026-08-02 02:15:08 +02:00
CB-WP-0008-ship-stage-0.md CB-WP-0008-T04: CB-EV-0007 — stage 0 is shipped, and the spend curve is a V 2026-08-01 15:25:19 +02:00
CB-WP-0009-adaptive-gates.md CB-WP-0009-T04: CB-EV-0008 — the gate changes, measured 2026-08-01 15:45:08 +02:00
CB-WP-0010-consolidation.md CB-WP-0010-T03: record CommitWindow's second failed second-use 2026-08-02 02:19:23 +02:00
CB-WP-0011-inspectable-table.md CB-WP-0011-T03: evidence — the chaos roll fired, and it was right 2026-08-02 02:48:51 +02:00
CB-WP-0012-render-port.md Sync hub IDs and work-record index for CB-WP-0012 2026-08-02 04:30:45 +02:00
CB-WP-0013-instrument-corrections.md Sync hub IDs and work-record index for CB-WP-0013 2026-08-02 07:32:33 +02:00
CB-WP-0014-execute-the-javascript.md Sync hub IDs and work-record index for CB-WP-0014 2026-08-02 07:59:28 +02:00
CB-WP-0015-the-inert-clauses.md Sync hub IDs and work-record index for CB-WP-0015 2026-08-02 14:08:30 +02:00
CB-WP-0016-the-drop-target.md Sync hub IDs and work-record index for CB-WP-0016 2026-08-02 20:49:21 +02:00
CB-WP-0017-legible-interaction.md Sync hub IDs and work-record index for CB-WP-0017 2026-08-02 22:43:40 +02:00
CB-WP-0018-the-browser-is-a-client.md Sync hub IDs and work-record index for CB-WP-0018 2026-08-03 02:24:57 +02:00
CB-WP-0019-the-am4-family.md CB-WP-0019 T03/T04: the cost rule written down, and the lifecycle 2026-08-03 19:25:18 +02:00
CB-WP-0020-the-table-you-can-read.md Sync hub state for CB-WP-0020 2026-08-03 20:21:18 +02:00
CB-WP-0021-import-the-edition.md CB-WP-0021 T04: evidence -- the endings are tight, and the cost chain snapped 2026-08-05 15:56:31 +02:00
CB-WP-0022-the-design-instrument.md CB-WP-0022 T05/T06/T07: the register, and what its first run found 2026-08-05 15:22:33 +02:00
CB-WP-0023-solve-legality.md CB-EV-0020: a gate moved the rule, and the report was wrong 2026-08-04 00:21:21 +02:00
CB-WP-0024-the-table-you-can-watch.md CB-WP-0024: the table you can watch 2026-08-05 17:32:48 +02:00
CB-WP-0025-could-we-have-won.md CB-WP-0025 T06/T07: a difficulty baseline that reports its own confound 2026-08-05 19:24:49 +02:00
CB-WP-0026-collect-the-rulings.md Sync hub state for CB-WP-0026 2026-08-05 16:15:22 +02:00
CB-WP-0027-the-commentary-track.md CB-WP-0027 T05: evidence — and the one question this file cannot answer 2026-08-06 10:39:12 +02:00
CB-WP-0028-the-table-you-sit-at.md CB-WP-0028 T03/T08: one overhead table, and what the nine observations 2026-08-06 17:33:57 +02:00
CB-WP-0029-the-tokens-on-the-table.md CB-WP-0029 T04: evidence — and chaos window 2 closes with nothing to 2026-08-07 09:55:47 +02:00
CB-WP-0030-a-number-that-does-not-move.md CB-WP-0030: a control for the wrong-subject family 2026-08-07 11:35:41 +02:00
CB-WP-0031-the-comment-box-outlives-the-game.md CB-WP-0032: the comments in the account 2026-08-07 16:09:36 +02:00
CB-WP-0032-the-comments-in-the-account.md CB-WP-0033: a game is the unit 2026-08-07 17:41:11 +02:00
CB-WP-0033-a-game-is-the-unit.md CB-WP-0034: who you are bonding with 2026-08-07 17:49:06 +02:00
CB-WP-0034-who-you-are-bonding-with.md CB-WP-0035: a session that answers nothing 2026-08-07 20:31:32 +02:00
CB-WP-0035-a-session-that-answers-nothing.md specs/Ornamentation.md: what a game is besides its rules 2026-08-07 21:16:34 +02:00
CB-WP-0036-interactive-mode.md CB-WP-0036 done: the pace flag and the first ornament declarations 2026-08-07 22:15:38 +02:00
CB-WP-0037-the-fourteen-unread-files.md CB-WP-0037 done: T03 classification and T04 evidence 2026-08-08 00:33:24 +02:00
CB-WP-0038-h1-variant.md Sync hub ids for CB-WP-0038 2026-08-08 00:50:51 +02:00
CB-WP-0039-a-seat-that-does-not-regulate.md CB-REV-0001: the adversarial review, and it was not approvable 2026-08-08 02:02:35 +02:00
CB-WP-0040-what-a-statement-is-about.md simulators/: persist the survey, and let it shrink two of the three tracks 2026-08-08 11:56:27 +02:00
CB-WP-0041-the-extensive-form-foundation.md CB-WP-0041 done: ADR-0020 refuses the port, and T02 is why 2026-08-08 15:35:03 +02:00
CB-WP-0042-h2-scoped-problem-stress.md CB-WP-0042 T05: H2 measured — it largely succeeds where H1 failed 2026-08-08 16:09:16 +02:00
CB-WP-0043-a-problem-sits-where-its-stress-lands.md Sync hub id for CB-WP-0043 2026-08-08 17:30:59 +02:00
CB-WP-0044-the-page-says-which-rules-it-plays.md Sync hub id for CB-WP-0044 2026-08-08 17:48:19 +02:00
CB-WP-0045-the-table-names-what-it-shows.md Sync hub state for CB-WP-0045 2026-08-08 18:39:08 +02:00
CB-WP-0046-the-rule-the-placement-encodes.md Sync hub state for CB-WP-0046 2026-08-08 19:16:39 +02:00
CB-WP-0047-all-four-boards-and-all-three-modes.md Sync hub state for CB-WP-0047 2026-08-08 20:52:57 +02:00
CB-WP-0048-a-configuration-not-a-variant.md CB-WP-0048 T01: record the pass in the workplan 2026-08-08 22:30:28 +02:00
CB-WP-0049-a-seat-that-plays-its-own-objective.md ADR-0023 + CB-WP-0049 T01: a policy is bound by what its seat can see 2026-08-08 22:45:55 +02:00