CB-WP-0019 T03/T04: the cost rule written down, and the lifecycle
Some checks failed
ci / check (push) Has been cancelled

T03: InnerLoop v1.7 plus loop-lint's own-cost check. Six passes
under-reported themselves by 30-45%, never once high, and the rule lived
only in evidence files having been re-derived three times. The READING
is load bearing, not the boundary: CB-WP-0018 T04 applied 're-run the
instrument at the moment of quoting' alone and its figure was correct.
So the operative instruction is re-run when you quote, and loop-lint
fails an evidence file naming its own workplan beside a dollar amount
without marking it provisional.

It binds forward from this pass. The check fires on seven historical
files which ARE the evidence for the rule; making them comply would edit
the record to remove the thing it proves -- the same category error as a
live fact: tag on a dated measurement, which this pass also hit.

Lifecycle, at the maintainer's instruction: ready -> active -> done,
where ready means declared and not started. loop-lint fails a workplan
that has started and still says ready, one that is active with
everything closed, and one that is done with an open task. The first
version of that check was WRONG and its own self-test caught it: it
stripped the leading status: assuming frontmatter, which silently
dropped a real task once the frontmatter said ready or active.

Both new checks then fired on this pass's own artifacts and both were
right to.

T04: CB-EV-0017. The new meta budget's first reading is a breach it
caused -- 27% against the 20% line, because this pass cost $31.18
against product passes averaging ~$21. Reported rather than exempted:
ADR-0006 D2 covers the instrument repairs but not the rule-writing, and
the honest reading is that this should have been two passes.

CB-WP-0018 settled at $36.53/95 against $28.08/82 last reported, 30%
higher. Seven for seven.

make all exits 0.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
tegwick 2026-08-03 19:25:18 +02:00
parent 0b6f7c5bc8
commit 69c1658d20
6 changed files with 483 additions and 25 deletions

View file

@ -2,7 +2,7 @@
id: CB-WP-0019
kind: meta
title: "Budgets: what the meta budget is for, AM-4b's scope, and the self-quoting rule"
status: todo
status: done
state_hub_workstream_id: "ecf35aae-8549-4338-9e13-21dcf14c1130"
---
@ -151,7 +151,7 @@ of two. The `unmeasured` note is gone from `dep-weight.py` and the spec.
```task
id: CB-WP-0019-T03
status: todo
status: done
priority: high
state_hub_task_id: "b473ab42-8fd9-47b1-8fd4-b181c75440be"
```
@ -187,6 +187,30 @@ re-derived three times already.
both? T03 of CB-WP-0018 used the second and it worked. Say which is load
bearing.
**Done 2026-08-03.** InnerLoop v1.7 + `loop-lint`'s `own-cost` check.
**The reading is load bearing, not the boundary.** CB-WP-0018 T04 applied
*re-run the instrument at the moment of quoting* alone and its figure was
correct; the boundary rule only tells you when "late enough" has arrived.
So the operative instruction is **re-run the instrument when you quote
it**, and `loop-lint` fails an evidence file naming its own workplan
beside a dollar amount without marking it provisional.
**It binds forward, from this pass**, and that is not a convenience: the
check fires on seven historical files which *are the evidence for the
rule*. Making them comply would edit the record to remove the thing it
proves — the same category error as a live `fact:` tag on a dated
measurement, which this pass also hit and also fixed by marking rather
than rewriting.
Also delivered here at the maintainer's instruction: the **workplan
lifecycle** `ready``active``done`, with `loop-lint` failing a
workplan that has started and still says `ready`. **The first version of
that check was wrong and its own self-test caught it** — it stripped the
leading `status:` assuming frontmatter, which silently dropped a real task
once the frontmatter said `ready` or `active`. It now parses the task
blocks.
## Task: say what the meta budget is *for*, and set it at 80/20
```task
@ -278,7 +302,7 @@ standing precedent it exists to enforce.
```task
id: CB-WP-0019-T04
status: todo
status: done
priority: high
state_hub_task_id: "b499acb2-b728-4db9-9714-c235fb6c6363"
```
@ -299,3 +323,22 @@ state_hub_task_id: "b499acb2-b728-4db9-9714-c235fb6c6363"
have failed passes that were plainly right to run, say so — that is the
ratio being wrong, not the passes.
- **Chaos: declaration 2 of 12 in window 2, first roll at d8.**
**Done 2026-08-03.**
[CB-EV-0017](../evidence/CB-EV-0017-budgets.md). `make all` exits 0.
- **The AM-4 family is closed** — four defects across five passes, none
found by looking for them. Where a fifth would be: AM-4c is a
diagnostic nobody reads, and `own source` has no instrument at all.
- **Three of this project's own controls fired on this pass**, none of
them its subject: the stale mutation string (**build-free**, second
catch for CB-WP-0015's check and the first that cost nothing), the DFD
gate on `facts.toml`, and loadability three times — fixed structurally
each time, the precedent now holding five times.
- **The new meta budget's first reading is a breach it caused**: 27%
against the 20% line, because this pass cost $31.18 against product
passes averaging ~$21. Reported rather than exempted — ADR-0006 D2
covers the instrument repairs but not T03/T05's rule-writing, and the
honest reading is that this should have been two passes.
- **CB-WP-0018 settled at $36.53/95** against $28.08/82 last reported —
30% higher. **Seven for seven.**