From 39583357f41048f0be8eaa171d0ea9ff7f3a9510 Mon Sep 17 00:00:00 2001 From: tegwick Date: Fri, 31 Jul 2026 09:16:34 +0200 Subject: [PATCH] T02 closed: remaining scope delivered with T01 Both items were completed as part of the T01 audit: the two older reporting tools gained --self-test entry points, and loop-lint's self-test check makes the contract mechanical for any new tool. Co-Authored-By: Claude Opus 5 --- workplans/CB-WP-0003-loop-hardening.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/workplans/CB-WP-0003-loop-hardening.md b/workplans/CB-WP-0003-loop-hardening.md index a431ef4..56660d5 100644 --- a/workplans/CB-WP-0003-loop-hardening.md +++ b/workplans/CB-WP-0003-loop-hardening.md @@ -89,7 +89,7 @@ rules and the three v1.1 rules are currently prose. ```task id: CB-WP-0003-T02 -status: todo +status: done priority: high state_hub_task_id: "f861e67f-ed09-489d-963d-06697da9c08e" ``` @@ -100,7 +100,12 @@ one with five assertions (AC-5..AC-9); `make cost` depends on `make cost-test`; `cost-test` runs in CI and in `make all`. `cargo bench -- --test` and cb-sim's empty-run check were already in place. -**Remaining scope:** +**Closed 2026-07-31 alongside T01** — both items below are done: +tools/rule-coverage.py and tools/dep-weight.py gained `--self-test` +(the former exposing a latent silent-pass on zero parsed rules), and +`make loop-lint` fails CI when any `tools/*.py` lacks the flag. + +**Scope as written:** - `tools/rule-coverage.py` and `tools/dep-weight.py` have positive-control logic but no `--self-test` entry point, so nothing verifies the control