2026-07-31 00:13:55 +02:00
|
|
|
# Work Records — clay-borg
|
|
|
|
|
|
|
|
|
|
> Generated by `statehub fix-consistency` (CUST-WP-0061-T04, work-record
|
|
|
|
|
> stage 3). Do not edit by hand — edit the source file/block listed for
|
|
|
|
|
> each record and re-run fix-consistency to refresh this index. Archived
|
|
|
|
|
> workplans are omitted; closed decisions/intakes/engagements stay listed
|
|
|
|
|
> so recently-resolved work is still visible. [auto]
|
|
|
|
|
|
|
|
|
|
| Kind | ID | Status | Lane | Source |
|
|
|
|
|
| --- | --- | --- | --- | --- |
|
Amend CB-EV-0001; add CB-WP-0002 for cost accounting
AM-4: measured what each remediation option actually buys, rather than
leaving one recommendation unquantified. serde_yaml optional removes 6
crates, not 5 — ryu belongs to that group, since serde_json now uses
zmij for floats. Full ladder: -6 to 27, serde_json -4 more to 23,
inlining SHA-256 -8 to 19, inlining ChaCha12 -4 to 15. Only
reimplementing a primitive gets under 20, so the target is unreachable
without undoing K5/K7.
Also records that crate count compares badly across ecosystems, and
offers the alternative the count is a proxy for: 307,317 lines of
third-party source under audit against 3,398 of our own.
AM-12: corrected from "uncomputable" to measured. The refusal to
estimate was right; the claim that no instrument existed was wrong.
Session transcripts carry exact per-message usage including the cache
breakdown. This session cost $248.46 at Fable 5 rates, of which 53% is
cache reads — cost is driven by context size times turn count, not by
output volume. What is still missing is per-task attribution, since
nothing marks task boundaries in a transcript.
CB-WP-0002 makes cost measurable and attributable: survey the
instruments, decide the attribution model by ADR, spec metrics that
include cost composition rather than a bare total, build a collector
whose positive control refuses to emit unreconciled numbers, and prove
it by answering a question that could not be answered before.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 03:26:03 +02:00
|
|
|
| workplan | CB-WP-0001 | done | — | workplans/CB-WP-0001-inner-loop.md |
|
2026-07-31 08:54:33 +02:00
|
|
|
| workplan | CB-WP-0002 | done | — | workplans/CB-WP-0002-cost-accounting.md |
|
2026-07-31 09:31:53 +02:00
|
|
|
| workplan | CB-WP-0003 | done | — | workplans/CB-WP-0003-loop-hardening.md |
|
2026-07-31 10:29:17 +02:00
|
|
|
| workplan | CB-WP-0004 | done | — | workplans/CB-WP-0004-mechanical-work.md |
|
2026-07-31 18:07:30 +02:00
|
|
|
| workplan | CB-WP-0005 | done | — | workplans/CB-WP-0005-assertion-coverage.md |
|
2026-08-01 13:41:39 +02:00
|
|
|
| workplan | CB-WP-0006 | done | — | workplans/CB-WP-0006-instrument-the-table.md |
|
CB-WP-0011-T01: the inspector shows everything, and a gate says so
The renderer moves out of the play loop into inspect.rs and grows from
24 to 42 of the 43 leaf paths a populated GroundView carries. What it
had been dropping was the whole DARVO state machine, the whole GROUND
practice, the scoring mode, Focus tokens, the discard pile, per-seat
protection, and every part of the outcome except the headline.
The load-bearing half is every_view_field_is_classified, which walks
the serialized view for leaf paths and requires each to be listed as
rendered (with a token the output must contain) or omitted (with a
reason). Paths rather than keys: 'problem' occurs under a DARVO target,
a GROUND choice and a Selection, and a key-set walk would let one of
the three vouch for the other two.
Four M-D1-MUT controls, each red for its stated reason. The
unclassified-field control fired for real on the first run --
players.*.hand, a field the gate's own author had missed.
2026-08-02 02:38:38 +02:00
|
|
|
| workplan | CB-WP-0007 | done | — | workplans/CB-WP-0007-session-shape.md |
|
2026-08-01 15:35:10 +02:00
|
|
|
| workplan | CB-WP-0008 | done | — | workplans/CB-WP-0008-ship-stage-0.md |
|
2026-08-02 02:14:23 +02:00
|
|
|
| workplan | CB-WP-0009 | done | — | workplans/CB-WP-0009-adaptive-gates.md |
|
CB-WP-0011-T01: the inspector shows everything, and a gate says so
The renderer moves out of the play loop into inspect.rs and grows from
24 to 42 of the 43 leaf paths a populated GroundView carries. What it
had been dropping was the whole DARVO state machine, the whole GROUND
practice, the scoring mode, Focus tokens, the discard pile, per-seat
protection, and every part of the outcome except the headline.
The load-bearing half is every_view_field_is_classified, which walks
the serialized view for leaf paths and requires each to be listed as
rendered (with a token the output must contain) or omitted (with a
reason). Paths rather than keys: 'problem' occurs under a DARVO target,
a GROUND choice and a Selection, and a key-set walk would let one of
the three vouch for the other two.
Four M-D1-MUT controls, each red for its stated reason. The
unclassified-field control fired for real on the first run --
players.*.hand, a field the gate's own author had missed.
2026-08-02 02:38:38 +02:00
|
|
|
| workplan | CB-WP-0010 | done | — | workplans/CB-WP-0010-consolidation.md |
|
2026-08-02 02:49:19 +02:00
|
|
|
| workplan | CB-WP-0011 | done | — | workplans/CB-WP-0011-inspectable-table.md |
|
2026-08-02 04:30:45 +02:00
|
|
|
| workplan | CB-WP-0012 | done | — | workplans/CB-WP-0012-render-port.md |
|
2026-08-02 07:32:33 +02:00
|
|
|
| workplan | CB-WP-0013 | done | — | workplans/CB-WP-0013-instrument-corrections.md |
|
2026-08-02 07:59:28 +02:00
|
|
|
| workplan | CB-WP-0014 | done | — | workplans/CB-WP-0014-execute-the-javascript.md |
|
2026-08-02 14:08:30 +02:00
|
|
|
| workplan | CB-WP-0015 | done | — | workplans/CB-WP-0015-the-inert-clauses.md |
|
2026-08-02 20:49:21 +02:00
|
|
|
| workplan | CB-WP-0016 | done | — | workplans/CB-WP-0016-the-drop-target.md |
|
2026-08-02 22:43:40 +02:00
|
|
|
| workplan | CB-WP-0017 | done | — | workplans/CB-WP-0017-legible-interaction.md |
|
2026-08-03 02:24:57 +02:00
|
|
|
| workplan | CB-WP-0018 | done | — | workplans/CB-WP-0018-the-browser-is-a-client.md |
|
2026-08-03 19:27:01 +02:00
|
|
|
| workplan | CB-WP-0019 | done | — | workplans/CB-WP-0019-the-am4-family.md |
|
2026-08-03 20:21:18 +02:00
|
|
|
| workplan | CB-WP-0020 | done | — | workplans/CB-WP-0020-the-table-you-can-read.md |
|
2026-08-05 16:15:22 +02:00
|
|
|
| workplan | CB-WP-0021 | done | — | workplans/CB-WP-0021-import-the-edition.md |
|
2026-08-05 15:24:05 +02:00
|
|
|
| workplan | CB-WP-0022 | done | — | workplans/CB-WP-0022-the-design-instrument.md |
|
CB-EV-0020: a gate moved the rule, and the report was wrong
The AM-1 coverage gate failed the build on GR-P05 being uncovered, which
is what showed the rule was in the offer layer rather than in validate.
A rule enforced only by the offer is enforced only for clients that ask
what is legal. The gate did not catch a bug, it caught a design error.
And the reported case was not the one reported. CB-WP-0018, CB-EV-0016
and the message to ground-game all described SOLVE offered on a
face-down Problem; validate already rejected face-down, so it never was.
Problem 1 is the Surface Problem, face-up from the deal, so the three
inert SOLVEs were the HAND case. The ruling covers both so nothing is
invalidated, but a ruling was requested on a wrong description -- the
second time in three passes that a premise reached ground-game
unchecked, after the '12 points available' that voided GR-E01.
Two of two. The pattern is not careless analysis; it is that a claim gets
SENT the moment it is interesting and checked afterwards. Unexecuted
verification, one step further out: not a belief acted on, but a belief
published. CB-WP-0022's reproduction rule would have caught both.
An earlier mutation run reported three survivors and was wrong -- the
replacement strings did not match, so nothing was mutated. It proved
nothing and looked like a result.
Also renames CB-WP-0022-T06B to T07; the hub flagged it as an
unregistered species.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-04 00:21:21 +02:00
|
|
|
| workplan | CB-WP-0023 | done | — | workplans/CB-WP-0023-solve-legality.md |
|
2026-08-05 17:33:25 +02:00
|
|
|
| workplan | CB-WP-0024 | done | — | workplans/CB-WP-0024-the-table-you-can-watch.md |
|
2026-08-05 19:25:45 +02:00
|
|
|
| workplan | CB-WP-0025 | done | — | workplans/CB-WP-0025-could-we-have-won.md |
|
2026-08-05 16:15:22 +02:00
|
|
|
| workplan | CB-WP-0026 | done | — | workplans/CB-WP-0026-collect-the-rulings.md |
|
2026-08-06 10:39:48 +02:00
|
|
|
| workplan | CB-WP-0027 | done | — | workplans/CB-WP-0027-the-commentary-track.md |
|
2026-08-06 17:34:32 +02:00
|
|
|
| workplan | CB-WP-0028 | done | — | workplans/CB-WP-0028-the-table-you-sit-at.md |
|
CB-WP-0029 T01-T03: components you can count, and a supply that does not bind
ADR-0016, Tokens.csv vendored, tracks and discs on the table, and a supply
audit that found nothing and says so.
T03 MEASURED BEFORE T01 DECIDED. 750 games, 2-6 seats, greedy and random:
Protection reaches 1 per seat and 2 on the table against a supply of 6;
Denied 3 of 5; relation links EXACTLY 12 OF 12 and never more; Focus/Blame
0 conflicts. The link row is the interesting one -- GR-L01's two-slot rule
IS the twelve-token supply written twice, which is the shape of a supply
needing no separate enforcement.
AND THE FIRST VERSION OF THE FOCUS/BLAME CHECK WAS WRONG. It compared a
seat's own placed Focus against its OWN blame_from -- but that list holds
OTHER players' discs, so they are different tokens. It reported 2
conflicts; corrected, it reports 0. Fifth instance of this project's
recurring defect, a number computed correctly about the wrong subject, and
the first caught before it left the repo rather than by a reviewer.
D2: a token is a VIEW, not a type. The aggregate gains no `Token` --
adding one would create a second source of truth for Stress, and the first
time they disagreed the bug would be invisible because both would look
internally consistent.
D3: quantity does NOT bind, and the reason is not the measurement. A
component limit the rules do not state is not a rule. Refusing a seventh
Protection token would enforce something nobody ruled -- CB-WP-0023's
error inverted: SOLVE was OFFERED where it could not act; this would
REFUSE where the rules allow. The check ships as a standing control, so a
future violation becomes a question for ground-game (does the box bound
the game, or do the rules?) rather than a bound the engine invented.
Registered as F22, withdrawn: a stated negative, because a survey that
finds nothing and leaves no trace cannot be told from one never run.
D4: Stress on a 0-5 track that turns red at 5 where DARVO arms, DARVO on
OFF/DENY/ATTACK/REVERSE, Freedom as the two-sided disc the edition says it
is, Protection and Blame counted, Lead and Round on the table.
Two tests broke on token discs and both were FIXTURE defects:
seat_centres matched every <circle> and track stops are circles. Seats now
carry class="seat".
The table height limit went 460 -> 500 as a CORRECTION, not a concession.
460 had no derivation; 500 does -- ~800px viewport less ~120 header and
~150 controls leaves ~530, and the version that broke dragging was 620.
CB-WP-0021 T06's rule is to fix the measurement rather than lower the
floor, and an underived number is a measurement defect.
make all: exit 0. 66 render tests, 26 cb-play.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-07 09:54:20 +02:00
|
|
|
| workplan | CB-WP-0029 | ready | — | workplans/CB-WP-0029-the-tokens-on-the-table.md |
|
2026-07-31 00:48:22 +02:00
|
|
|
| task | CB-WP-0001-T01 | done | — | workplans/CB-WP-0001-inner-loop.md |
|
|
|
|
|
| task | CB-WP-0001-T02 | done | — | workplans/CB-WP-0001-inner-loop.md |
|
Amend CB-EV-0001; add CB-WP-0002 for cost accounting
AM-4: measured what each remediation option actually buys, rather than
leaving one recommendation unquantified. serde_yaml optional removes 6
crates, not 5 — ryu belongs to that group, since serde_json now uses
zmij for floats. Full ladder: -6 to 27, serde_json -4 more to 23,
inlining SHA-256 -8 to 19, inlining ChaCha12 -4 to 15. Only
reimplementing a primitive gets under 20, so the target is unreachable
without undoing K5/K7.
Also records that crate count compares badly across ecosystems, and
offers the alternative the count is a proxy for: 307,317 lines of
third-party source under audit against 3,398 of our own.
AM-12: corrected from "uncomputable" to measured. The refusal to
estimate was right; the claim that no instrument existed was wrong.
Session transcripts carry exact per-message usage including the cache
breakdown. This session cost $248.46 at Fable 5 rates, of which 53% is
cache reads — cost is driven by context size times turn count, not by
output volume. What is still missing is per-task attribution, since
nothing marks task boundaries in a transcript.
CB-WP-0002 makes cost measurable and attributable: survey the
instruments, decide the attribution model by ADR, spec metrics that
include cost composition rather than a bare total, build a collector
whose positive control refuses to emit unreconciled numbers, and prove
it by answering a question that could not be answered before.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 03:26:03 +02:00
|
|
|
| task | CB-WP-0001-T03 | done | — | workplans/CB-WP-0001-inner-loop.md |
|
|
|
|
|
| task | CB-WP-0001-T04 | done | — | workplans/CB-WP-0001-inner-loop.md |
|
|
|
|
|
| task | CB-WP-0001-T05 | done | — | workplans/CB-WP-0001-inner-loop.md |
|
|
|
|
|
| task | CB-WP-0001-T06 | done | — | workplans/CB-WP-0001-inner-loop.md |
|
|
|
|
|
| task | CB-WP-0001-T07 | done | — | workplans/CB-WP-0001-inner-loop.md |
|
|
|
|
|
| task | CB-WP-0001-T08 | done | — | workplans/CB-WP-0001-inner-loop.md |
|
|
|
|
|
| task | CB-WP-0001-T09 | done | — | workplans/CB-WP-0001-inner-loop.md |
|
2026-07-31 08:54:33 +02:00
|
|
|
| task | CB-WP-0002-T01 | done | — | workplans/CB-WP-0002-cost-accounting.md |
|
|
|
|
|
| task | CB-WP-0002-T02 | done | — | workplans/CB-WP-0002-cost-accounting.md |
|
|
|
|
|
| task | CB-WP-0002-T03 | done | — | workplans/CB-WP-0002-cost-accounting.md |
|
|
|
|
|
| task | CB-WP-0002-T04 | done | — | workplans/CB-WP-0002-cost-accounting.md |
|
|
|
|
|
| task | CB-WP-0002-T05 | done | — | workplans/CB-WP-0002-cost-accounting.md |
|
|
|
|
|
| task | CB-WP-0002-T06 | done | — | workplans/CB-WP-0002-cost-accounting.md |
|
|
|
|
|
| task | CB-WP-0002-T07 | done | — | workplans/CB-WP-0002-cost-accounting.md |
|
2026-07-31 09:31:53 +02:00
|
|
|
| task | CB-WP-0003-T01 | done | — | workplans/CB-WP-0003-loop-hardening.md |
|
|
|
|
|
| task | CB-WP-0003-T02 | done | — | workplans/CB-WP-0003-loop-hardening.md |
|
|
|
|
|
| task | CB-WP-0003-T03 | done | — | workplans/CB-WP-0003-loop-hardening.md |
|
|
|
|
|
| task | CB-WP-0003-T04 | done | — | workplans/CB-WP-0003-loop-hardening.md |
|
|
|
|
|
| task | CB-WP-0003-T05 | done | — | workplans/CB-WP-0003-loop-hardening.md |
|
|
|
|
|
| task | CB-WP-0003-T06 | done | — | workplans/CB-WP-0003-loop-hardening.md |
|
|
|
|
|
| task | CB-WP-0003-T07 | done | — | workplans/CB-WP-0003-loop-hardening.md |
|
|
|
|
|
| task | CB-WP-0003-T08 | done | — | workplans/CB-WP-0003-loop-hardening.md |
|
|
|
|
|
| task | CB-WP-0003-T09 | done | — | workplans/CB-WP-0003-loop-hardening.md |
|
|
|
|
|
| task | CB-WP-0003-T10 | done | — | workplans/CB-WP-0003-loop-hardening.md |
|
|
|
|
|
| task | CB-WP-0003-T11 | done | — | workplans/CB-WP-0003-loop-hardening.md |
|
2026-07-31 10:29:17 +02:00
|
|
|
| task | CB-WP-0004-T01 | done | — | workplans/CB-WP-0004-mechanical-work.md |
|
|
|
|
|
| task | CB-WP-0004-T02 | done | — | workplans/CB-WP-0004-mechanical-work.md |
|
|
|
|
|
| task | CB-WP-0004-T03 | done | — | workplans/CB-WP-0004-mechanical-work.md |
|
|
|
|
|
| task | CB-WP-0004-T04 | done | — | workplans/CB-WP-0004-mechanical-work.md |
|
|
|
|
|
| task | CB-WP-0004-T05 | done | — | workplans/CB-WP-0004-mechanical-work.md |
|
|
|
|
|
| task | CB-WP-0004-T06 | done | — | workplans/CB-WP-0004-mechanical-work.md |
|
2026-07-31 17:56:55 +02:00
|
|
|
| task | CB-WP-0005-T01 | done | — | workplans/CB-WP-0005-assertion-coverage.md |
|
|
|
|
|
| task | CB-WP-0005-T02 | done | — | workplans/CB-WP-0005-assertion-coverage.md |
|
|
|
|
|
| task | CB-WP-0005-T03 | done | — | workplans/CB-WP-0005-assertion-coverage.md |
|
|
|
|
|
| task | CB-WP-0005-T04 | cancel | — | workplans/CB-WP-0005-assertion-coverage.md |
|
|
|
|
|
| task | CB-WP-0005-T05 | cancel | — | workplans/CB-WP-0005-assertion-coverage.md |
|
|
|
|
|
| task | CB-WP-0005-T06 | cancel | — | workplans/CB-WP-0005-assertion-coverage.md |
|
2026-07-31 18:07:30 +02:00
|
|
|
| task | CB-WP-0005-T07 | done | — | workplans/CB-WP-0005-assertion-coverage.md |
|
|
|
|
|
| task | CB-WP-0005-T08 | done | — | workplans/CB-WP-0005-assertion-coverage.md |
|
2026-08-01 13:41:39 +02:00
|
|
|
| task | CB-WP-0006-T01 | done | — | workplans/CB-WP-0006-instrument-the-table.md |
|
|
|
|
|
| task | CB-WP-0006-T02 | done | — | workplans/CB-WP-0006-instrument-the-table.md |
|
|
|
|
|
| task | CB-WP-0006-T03 | done | — | workplans/CB-WP-0006-instrument-the-table.md |
|
|
|
|
|
| task | CB-WP-0006-T04 | done | — | workplans/CB-WP-0006-instrument-the-table.md |
|
|
|
|
|
| task | CB-WP-0006-T05 | done | — | workplans/CB-WP-0006-instrument-the-table.md |
|
|
|
|
|
| task | CB-WP-0006-T06 | done | — | workplans/CB-WP-0006-instrument-the-table.md |
|
|
|
|
|
| task | CB-WP-0006-T07 | done | — | workplans/CB-WP-0006-instrument-the-table.md |
|
|
|
|
|
| task | CB-WP-0006-T08 | done | — | workplans/CB-WP-0006-instrument-the-table.md |
|
|
|
|
|
| task | CB-WP-0006-T09 | done | — | workplans/CB-WP-0006-instrument-the-table.md |
|
2026-08-01 14:14:22 +02:00
|
|
|
| task | CB-WP-0007-T01 | done | — | workplans/CB-WP-0007-session-shape.md |
|
|
|
|
|
| task | CB-WP-0007-T02 | cancel | — | workplans/CB-WP-0007-session-shape.md |
|
|
|
|
|
| task | CB-WP-0007-T03 | done | — | workplans/CB-WP-0007-session-shape.md |
|
|
|
|
|
| task | CB-WP-0007-T04 | cancel | — | workplans/CB-WP-0007-session-shape.md |
|
CB-WP-0011-T01: the inspector shows everything, and a gate says so
The renderer moves out of the play loop into inspect.rs and grows from
24 to 42 of the 43 leaf paths a populated GroundView carries. What it
had been dropping was the whole DARVO state machine, the whole GROUND
practice, the scoring mode, Focus tokens, the discard pile, per-seat
protection, and every part of the outcome except the headline.
The load-bearing half is every_view_field_is_classified, which walks
the serialized view for leaf paths and requires each to be listed as
rendered (with a token the output must contain) or omitted (with a
reason). Paths rather than keys: 'problem' occurs under a DARVO target,
a GROUND choice and a Selection, and a key-set walk would let one of
the three vouch for the other two.
Four M-D1-MUT controls, each red for its stated reason. The
unclassified-field control fired for real on the first run --
players.*.hand, a field the gate's own author had missed.
2026-08-02 02:38:38 +02:00
|
|
|
| task | CB-WP-0007-T05 | cancel | — | workplans/CB-WP-0007-session-shape.md |
|
|
|
|
|
| task | CB-WP-0007-T06 | cancel | — | workplans/CB-WP-0007-session-shape.md |
|
2026-08-01 15:35:10 +02:00
|
|
|
| task | CB-WP-0008-T01 | done | — | workplans/CB-WP-0008-ship-stage-0.md |
|
|
|
|
|
| task | CB-WP-0008-T02 | done | — | workplans/CB-WP-0008-ship-stage-0.md |
|
|
|
|
|
| task | CB-WP-0008-T03 | done | — | workplans/CB-WP-0008-ship-stage-0.md |
|
|
|
|
|
| task | CB-WP-0008-T04 | done | — | workplans/CB-WP-0008-ship-stage-0.md |
|
2026-08-02 02:14:23 +02:00
|
|
|
| task | CB-WP-0009-T01 | done | — | workplans/CB-WP-0009-adaptive-gates.md |
|
|
|
|
|
| task | CB-WP-0009-T02 | done | — | workplans/CB-WP-0009-adaptive-gates.md |
|
|
|
|
|
| task | CB-WP-0009-T03 | done | — | workplans/CB-WP-0009-adaptive-gates.md |
|
|
|
|
|
| task | CB-WP-0009-T04 | done | — | workplans/CB-WP-0009-adaptive-gates.md |
|
CB-WP-0011-T01: the inspector shows everything, and a gate says so
The renderer moves out of the play loop into inspect.rs and grows from
24 to 42 of the 43 leaf paths a populated GroundView carries. What it
had been dropping was the whole DARVO state machine, the whole GROUND
practice, the scoring mode, Focus tokens, the discard pile, per-seat
protection, and every part of the outcome except the headline.
The load-bearing half is every_view_field_is_classified, which walks
the serialized view for leaf paths and requires each to be listed as
rendered (with a token the output must contain) or omitted (with a
reason). Paths rather than keys: 'problem' occurs under a DARVO target,
a GROUND choice and a Selection, and a key-set walk would let one of
the three vouch for the other two.
Four M-D1-MUT controls, each red for its stated reason. The
unclassified-field control fired for real on the first run --
players.*.hand, a field the gate's own author had missed.
2026-08-02 02:38:38 +02:00
|
|
|
| task | CB-WP-0010-T01 | done | — | workplans/CB-WP-0010-consolidation.md |
|
|
|
|
|
| task | CB-WP-0010-T02 | done | — | workplans/CB-WP-0010-consolidation.md |
|
|
|
|
|
| task | CB-WP-0010-T03 | done | — | workplans/CB-WP-0010-consolidation.md |
|
2026-08-02 02:49:19 +02:00
|
|
|
| task | CB-WP-0011-T01 | done | — | workplans/CB-WP-0011-inspectable-table.md |
|
|
|
|
|
| task | CB-WP-0011-T02 | done | — | workplans/CB-WP-0011-inspectable-table.md |
|
|
|
|
|
| task | CB-WP-0011-T03 | done | — | workplans/CB-WP-0011-inspectable-table.md |
|
CB-WP-0012-T05: evidence — tier L deleted its own deliverable
CB-EV-0010. The pass's own verdict on the tier it ran at.
Full-weight review withdrew the capability port the declaration was made
to build. A tier-S pass has no step 2 and would have shipped it, and
stage 2 would have found it unimplementable — which is what CommitWindow
is already on record in this repo for doing.
Two corrections of the survey's own numbers, compounding:
AM-4a headroom 3,750 claimed -> 92,798 measured (25x)
cheapest windowed 480,501 claimed -> 140,079 measured (3.4x)
headline ratio 128x -> 1.5x (85x)
The prediction from CB-EV-0009 §4 held: meta budget reads 0%, published
in advance and unfalsified.
A correction that is now a pattern: CB-EV-0009 reported CB-WP-0011 at
45 responses / $4.23 / 0.094; final is 71 / $7.02 / 0.099. Still the
cheapest pass, so the conclusion stands. But that is the second
consecutive evidence file to report its own pass's cost low — a pass
cannot measure its own cost, and one quoting its own is quoting a floor.
First priced tier comparison on a single subject: 0.123 $/response at L
against 0.099 at S — 24% more, for a pass that found the two errors
above. On one data point, step 2 is cheap.
Not shipped, and said plainly: the emitted JavaScript has never been
executed. The socket loop is tested end to end with synthetic HTTP and
the page is asserted against as a parsed document, but no browser engine
has run it. INTENT stage 1 therefore stays open even though all four of
its named deliverables now exist.
SH-3 reads 0.0% for a sixth consecutive pass and remains the oldest
unargued number in the project.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-02 04:30:10 +02:00
|
|
|
| task | CB-WP-0012-T01 | done | — | workplans/CB-WP-0012-render-port.md |
|
|
|
|
|
| task | CB-WP-0012-T02 | done | — | workplans/CB-WP-0012-render-port.md |
|
|
|
|
|
| task | CB-WP-0012-T03 | done | — | workplans/CB-WP-0012-render-port.md |
|
|
|
|
|
| task | CB-WP-0012-T04 | done | — | workplans/CB-WP-0012-render-port.md |
|
|
|
|
|
| task | CB-WP-0012-T05 | done | — | workplans/CB-WP-0012-render-port.md |
|
2026-08-02 07:32:07 +02:00
|
|
|
| task | CB-WP-0013-T01 | done | — | workplans/CB-WP-0013-instrument-corrections.md |
|
|
|
|
|
| task | CB-WP-0013-T02 | done | — | workplans/CB-WP-0013-instrument-corrections.md |
|
|
|
|
|
| task | CB-WP-0013-T03 | done | — | workplans/CB-WP-0013-instrument-corrections.md |
|
|
|
|
|
| task | CB-WP-0013-T04 | done | — | workplans/CB-WP-0013-instrument-corrections.md |
|
CB-WP-0014-T03: hot-seat evidenced; stage 1 open on one human check
CB-EV-0012. Stage 1, deliverable by deliverable:
relationship-graph visualization emitted and gated, NEVER SEEN
drag-to-propose evidenced end to end
debug inspector evidenced (CB-WP-0011)
hot-seat play evidenced here
Hot-seat was the one closest to being claimed on the strength of the code
path existing. SeatPolicy hands every human seat a handle on one shared
Server, so turn-taking "obviously" worked — and nothing drove more than
one seat until now. The property that matters is not that two turns
happen but that the same tab, asked twice, shows two different hands.
Mutating the projection to serve P1's view to every seat turns it red.
The stage stays open on ONE named blocker rather than a vague
reservation: no browser is available to this loop, so the visualization
is evidenced only as correctly emitted. Everything testable from here has
been tested. What remains is `cb-play --serve 0`, open the URL, confirm
the table reads and a drag works. INTENT carries that note now.
The self-quoting rule from CB-EV-0011 §4 is ADOPTED: an evidence file
quotes the previous pass's final cost and never its own. CB-WP-0013
reported itself at $5.78/34 mid-flight; final is $8.26/47, under by 43%.
Four for four, always low.
Meta budget 29% [OVER] soft 25%, driven by CB-WP-0013 in a trailing three
with two cheap product passes; it was an instrument repair, which
ADR-0006 D2 exempts.
SH-1 at 347,720 [HARD] against a 300,000 ceiling. Compaction is the
remedy and this session cannot do it for itself. CB-EV-0009's standing
prediction is now live and testable for the first time in three passes.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-02 07:58:59 +02:00
|
|
|
| task | CB-WP-0014-T01 | done | — | workplans/CB-WP-0014-execute-the-javascript.md |
|
|
|
|
|
| task | CB-WP-0014-T02 | done | — | workplans/CB-WP-0014-execute-the-javascript.md |
|
|
|
|
|
| task | CB-WP-0014-T03 | done | — | workplans/CB-WP-0014-execute-the-javascript.md |
|
2026-08-02 14:08:30 +02:00
|
|
|
| task | CB-WP-0015-T01 | done | — | workplans/CB-WP-0015-the-inert-clauses.md |
|
|
|
|
|
| task | CB-WP-0015-T02 | done | — | workplans/CB-WP-0015-the-inert-clauses.md |
|
|
|
|
|
| task | CB-WP-0015-T03 | done | — | workplans/CB-WP-0015-the-inert-clauses.md |
|
2026-08-02 20:49:21 +02:00
|
|
|
| task | CB-WP-0016-T01 | done | — | workplans/CB-WP-0016-the-drop-target.md |
|
|
|
|
|
| task | CB-WP-0016-T02 | done | — | workplans/CB-WP-0016-the-drop-target.md |
|
|
|
|
|
| task | CB-WP-0016-T03 | done | — | workplans/CB-WP-0016-the-drop-target.md |
|
2026-08-02 22:43:40 +02:00
|
|
|
| task | CB-WP-0017-T01 | done | — | workplans/CB-WP-0017-legible-interaction.md |
|
|
|
|
|
| task | CB-WP-0017-T02 | done | — | workplans/CB-WP-0017-legible-interaction.md |
|
|
|
|
|
| task | CB-WP-0017-T03 | done | — | workplans/CB-WP-0017-legible-interaction.md |
|
|
|
|
|
| task | CB-WP-0017-T04 | done | — | workplans/CB-WP-0017-legible-interaction.md |
|
2026-08-03 02:24:57 +02:00
|
|
|
| task | CB-WP-0018-T01 | done | — | workplans/CB-WP-0018-the-browser-is-a-client.md |
|
|
|
|
|
| task | CB-WP-0018-T02 | done | — | workplans/CB-WP-0018-the-browser-is-a-client.md |
|
|
|
|
|
| task | CB-WP-0018-T03 | done | — | workplans/CB-WP-0018-the-browser-is-a-client.md |
|
|
|
|
|
| task | CB-WP-0018-T04 | done | — | workplans/CB-WP-0018-the-browser-is-a-client.md |
|
2026-08-03 19:27:01 +02:00
|
|
|
| task | CB-WP-0019-T01 | done | — | workplans/CB-WP-0019-the-am4-family.md |
|
|
|
|
|
| task | CB-WP-0019-T02 | done | — | workplans/CB-WP-0019-the-am4-family.md |
|
|
|
|
|
| task | CB-WP-0019-T03 | done | — | workplans/CB-WP-0019-the-am4-family.md |
|
|
|
|
|
| task | CB-WP-0019-T04 | done | — | workplans/CB-WP-0019-the-am4-family.md |
|
2026-08-03 18:58:04 +02:00
|
|
|
| task | CB-WP-0019-T05 | done | — | workplans/CB-WP-0019-the-am4-family.md |
|
2026-08-03 20:21:18 +02:00
|
|
|
| task | CB-WP-0020-T01 | done | — | workplans/CB-WP-0020-the-table-you-can-read.md |
|
|
|
|
|
| task | CB-WP-0020-T02 | done | — | workplans/CB-WP-0020-the-table-you-can-read.md |
|
|
|
|
|
| task | CB-WP-0020-T03 | done | — | workplans/CB-WP-0020-the-table-you-can-read.md |
|
|
|
|
|
| task | CB-WP-0020-T04 | done | — | workplans/CB-WP-0020-the-table-you-can-read.md |
|
|
|
|
|
| task | CB-WP-0020-T05 | done | — | workplans/CB-WP-0020-the-table-you-can-read.md |
|
|
|
|
|
| task | CB-WP-0020-T06 | done | — | workplans/CB-WP-0020-the-table-you-can-read.md |
|
2026-08-04 01:11:30 +02:00
|
|
|
| task | CB-WP-0021-T01 | done | — | workplans/CB-WP-0021-import-the-edition.md |
|
|
|
|
|
| task | CB-WP-0021-T02 | done | — | workplans/CB-WP-0021-import-the-edition.md |
|
|
|
|
|
| task | CB-WP-0021-T03 | done | — | workplans/CB-WP-0021-import-the-edition.md |
|
2026-08-05 16:15:22 +02:00
|
|
|
| task | CB-WP-0021-T04 | done | — | workplans/CB-WP-0021-import-the-edition.md |
|
2026-08-04 01:11:30 +02:00
|
|
|
| task | CB-WP-0021-T05 | done | — | workplans/CB-WP-0021-import-the-edition.md |
|
|
|
|
|
| task | CB-WP-0021-T06 | done | — | workplans/CB-WP-0021-import-the-edition.md |
|
CB-EV-0020: a gate moved the rule, and the report was wrong
The AM-1 coverage gate failed the build on GR-P05 being uncovered, which
is what showed the rule was in the offer layer rather than in validate.
A rule enforced only by the offer is enforced only for clients that ask
what is legal. The gate did not catch a bug, it caught a design error.
And the reported case was not the one reported. CB-WP-0018, CB-EV-0016
and the message to ground-game all described SOLVE offered on a
face-down Problem; validate already rejected face-down, so it never was.
Problem 1 is the Surface Problem, face-up from the deal, so the three
inert SOLVEs were the HAND case. The ruling covers both so nothing is
invalidated, but a ruling was requested on a wrong description -- the
second time in three passes that a premise reached ground-game
unchecked, after the '12 points available' that voided GR-E01.
Two of two. The pattern is not careless analysis; it is that a claim gets
SENT the moment it is interesting and checked afterwards. Unexecuted
verification, one step further out: not a belief acted on, but a belief
published. CB-WP-0022's reproduction rule would have caught both.
An earlier mutation run reported three survivors and was wrong -- the
replacement strings did not match, so nothing was mutated. It proved
nothing and looked like a result.
Also renames CB-WP-0022-T06B to T07; the hub flagged it as an
unregistered species.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-04 00:21:21 +02:00
|
|
|
| task | CB-WP-0022-T01 | done | — | workplans/CB-WP-0022-the-design-instrument.md |
|
2026-08-05 15:24:05 +02:00
|
|
|
| task | CB-WP-0022-T02 | done | — | workplans/CB-WP-0022-the-design-instrument.md |
|
|
|
|
|
| task | CB-WP-0022-T03 | done | — | workplans/CB-WP-0022-the-design-instrument.md |
|
|
|
|
|
| task | CB-WP-0022-T04 | done | — | workplans/CB-WP-0022-the-design-instrument.md |
|
|
|
|
|
| task | CB-WP-0022-T05 | done | — | workplans/CB-WP-0022-the-design-instrument.md |
|
|
|
|
|
| task | CB-WP-0022-T06 | done | — | workplans/CB-WP-0022-the-design-instrument.md |
|
|
|
|
|
| task | CB-WP-0022-T07 | done | — | workplans/CB-WP-0022-the-design-instrument.md |
|
CB-EV-0020: a gate moved the rule, and the report was wrong
The AM-1 coverage gate failed the build on GR-P05 being uncovered, which
is what showed the rule was in the offer layer rather than in validate.
A rule enforced only by the offer is enforced only for clients that ask
what is legal. The gate did not catch a bug, it caught a design error.
And the reported case was not the one reported. CB-WP-0018, CB-EV-0016
and the message to ground-game all described SOLVE offered on a
face-down Problem; validate already rejected face-down, so it never was.
Problem 1 is the Surface Problem, face-up from the deal, so the three
inert SOLVEs were the HAND case. The ruling covers both so nothing is
invalidated, but a ruling was requested on a wrong description -- the
second time in three passes that a premise reached ground-game
unchecked, after the '12 points available' that voided GR-E01.
Two of two. The pattern is not careless analysis; it is that a claim gets
SENT the moment it is interesting and checked afterwards. Unexecuted
verification, one step further out: not a belief acted on, but a belief
published. CB-WP-0022's reproduction rule would have caught both.
An earlier mutation run reported three survivors and was wrong -- the
replacement strings did not match, so nothing was mutated. It proved
nothing and looked like a result.
Also renames CB-WP-0022-T06B to T07; the hub flagged it as an
unregistered species.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-04 00:21:21 +02:00
|
|
|
| task | CB-WP-0023-T01 | done | — | workplans/CB-WP-0023-solve-legality.md |
|
|
|
|
|
| task | CB-WP-0023-T02 | done | — | workplans/CB-WP-0023-solve-legality.md |
|
|
|
|
|
| task | CB-WP-0023-T03 | done | — | workplans/CB-WP-0023-solve-legality.md |
|
2026-08-05 17:33:25 +02:00
|
|
|
| task | CB-WP-0024-T01 | done | — | workplans/CB-WP-0024-the-table-you-can-watch.md |
|
|
|
|
|
| task | CB-WP-0024-T02 | done | — | workplans/CB-WP-0024-the-table-you-can-watch.md |
|
|
|
|
|
| task | CB-WP-0024-T03 | done | — | workplans/CB-WP-0024-the-table-you-can-watch.md |
|
|
|
|
|
| task | CB-WP-0024-T04 | done | — | workplans/CB-WP-0024-the-table-you-can-watch.md |
|
|
|
|
|
| task | CB-WP-0024-T05 | done | — | workplans/CB-WP-0024-the-table-you-can-watch.md |
|
2026-08-05 18:06:35 +02:00
|
|
|
| task | CB-WP-0025-T01 | done | — | workplans/CB-WP-0025-could-we-have-won.md |
|
|
|
|
|
| task | CB-WP-0025-T02 | done | — | workplans/CB-WP-0025-could-we-have-won.md |
|
2026-08-05 19:25:45 +02:00
|
|
|
| task | CB-WP-0025-T03 | done | — | workplans/CB-WP-0025-could-we-have-won.md |
|
|
|
|
|
| task | CB-WP-0025-T04 | done | — | workplans/CB-WP-0025-could-we-have-won.md |
|
|
|
|
|
| task | CB-WP-0025-T05 | done | — | workplans/CB-WP-0025-could-we-have-won.md |
|
|
|
|
|
| task | CB-WP-0025-T06 | done | — | workplans/CB-WP-0025-could-we-have-won.md |
|
|
|
|
|
| task | CB-WP-0025-T07 | done | — | workplans/CB-WP-0025-could-we-have-won.md |
|
2026-08-05 16:15:22 +02:00
|
|
|
| task | CB-WP-0026-T01 | done | — | workplans/CB-WP-0026-collect-the-rulings.md |
|
|
|
|
|
| task | CB-WP-0026-T02 | done | — | workplans/CB-WP-0026-collect-the-rulings.md |
|
|
|
|
|
| task | CB-WP-0026-T03 | done | — | workplans/CB-WP-0026-collect-the-rulings.md |
|
|
|
|
|
| task | CB-WP-0026-T04 | done | — | workplans/CB-WP-0026-collect-the-rulings.md |
|
|
|
|
|
| task | CB-WP-0026-T05 | done | — | workplans/CB-WP-0026-collect-the-rulings.md |
|
2026-08-06 10:39:48 +02:00
|
|
|
| task | CB-WP-0027-T01 | done | — | workplans/CB-WP-0027-the-commentary-track.md |
|
|
|
|
|
| task | CB-WP-0027-T02 | done | — | workplans/CB-WP-0027-the-commentary-track.md |
|
|
|
|
|
| task | CB-WP-0027-T03 | done | — | workplans/CB-WP-0027-the-commentary-track.md |
|
|
|
|
|
| task | CB-WP-0027-T04 | done | — | workplans/CB-WP-0027-the-commentary-track.md |
|
|
|
|
|
| task | CB-WP-0027-T05 | done | — | workplans/CB-WP-0027-the-commentary-track.md |
|
2026-08-06 17:34:32 +02:00
|
|
|
| task | CB-WP-0028-T01 | done | — | workplans/CB-WP-0028-the-table-you-sit-at.md |
|
|
|
|
|
| task | CB-WP-0028-T02 | done | — | workplans/CB-WP-0028-the-table-you-sit-at.md |
|
|
|
|
|
| task | CB-WP-0028-T03 | done | — | workplans/CB-WP-0028-the-table-you-sit-at.md |
|
|
|
|
|
| task | CB-WP-0028-T04 | done | — | workplans/CB-WP-0028-the-table-you-sit-at.md |
|
|
|
|
|
| task | CB-WP-0028-T05 | done | — | workplans/CB-WP-0028-the-table-you-sit-at.md |
|
|
|
|
|
| task | CB-WP-0028-T06 | done | — | workplans/CB-WP-0028-the-table-you-sit-at.md |
|
|
|
|
|
| task | CB-WP-0028-T07 | done | — | workplans/CB-WP-0028-the-table-you-sit-at.md |
|
|
|
|
|
| task | CB-WP-0028-T08 | done | — | workplans/CB-WP-0028-the-table-you-sit-at.md |
|
CB-WP-0029 T01-T03: components you can count, and a supply that does not bind
ADR-0016, Tokens.csv vendored, tracks and discs on the table, and a supply
audit that found nothing and says so.
T03 MEASURED BEFORE T01 DECIDED. 750 games, 2-6 seats, greedy and random:
Protection reaches 1 per seat and 2 on the table against a supply of 6;
Denied 3 of 5; relation links EXACTLY 12 OF 12 and never more; Focus/Blame
0 conflicts. The link row is the interesting one -- GR-L01's two-slot rule
IS the twelve-token supply written twice, which is the shape of a supply
needing no separate enforcement.
AND THE FIRST VERSION OF THE FOCUS/BLAME CHECK WAS WRONG. It compared a
seat's own placed Focus against its OWN blame_from -- but that list holds
OTHER players' discs, so they are different tokens. It reported 2
conflicts; corrected, it reports 0. Fifth instance of this project's
recurring defect, a number computed correctly about the wrong subject, and
the first caught before it left the repo rather than by a reviewer.
D2: a token is a VIEW, not a type. The aggregate gains no `Token` --
adding one would create a second source of truth for Stress, and the first
time they disagreed the bug would be invisible because both would look
internally consistent.
D3: quantity does NOT bind, and the reason is not the measurement. A
component limit the rules do not state is not a rule. Refusing a seventh
Protection token would enforce something nobody ruled -- CB-WP-0023's
error inverted: SOLVE was OFFERED where it could not act; this would
REFUSE where the rules allow. The check ships as a standing control, so a
future violation becomes a question for ground-game (does the box bound
the game, or do the rules?) rather than a bound the engine invented.
Registered as F22, withdrawn: a stated negative, because a survey that
finds nothing and leaves no trace cannot be told from one never run.
D4: Stress on a 0-5 track that turns red at 5 where DARVO arms, DARVO on
OFF/DENY/ATTACK/REVERSE, Freedom as the two-sided disc the edition says it
is, Protection and Blame counted, Lead and Round on the table.
Two tests broke on token discs and both were FIXTURE defects:
seat_centres matched every <circle> and track stops are circles. Seats now
carry class="seat".
The table height limit went 460 -> 500 as a CORRECTION, not a concession.
460 had no derivation; 500 does -- ~800px viewport less ~120 header and
~150 controls leaves ~530, and the version that broke dragging was 620.
CB-WP-0021 T06's rule is to fix the measurement rather than lower the
floor, and an underived number is a measurement defect.
make all: exit 0. 66 render tests, 26 cb-play.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-07 09:54:20 +02:00
|
|
|
| task | CB-WP-0029-T01 | todo | — | workplans/CB-WP-0029-the-tokens-on-the-table.md |
|
|
|
|
|
| task | CB-WP-0029-T02 | todo | — | workplans/CB-WP-0029-the-tokens-on-the-table.md |
|
|
|
|
|
| task | CB-WP-0029-T03 | todo | — | workplans/CB-WP-0029-the-tokens-on-the-table.md |
|
|
|
|
|
| task | CB-WP-0029-T04 | todo | — | workplans/CB-WP-0029-the-tokens-on-the-table.md |
|