From 7fc7c8fc6a046e501c059fa7293860c18d06f011 Mon Sep 17 00:00:00 2001 From: ledger Date: Wed, 28 Oct 2026 06:39:50 +0000 Subject: [PATCH] pipe: Q108 opened and repaired -- f3d812f's committed queue-index did not reproduce with its own tool (162 diff lines, 4 rows missing: Q106/Q107/Q104-DONE/Q104-CLOSED; 17/55 vs 19/59); render taken at 7c19f66 makes index-current pass --- WORK-QUEUE.md | 2 ++ docs/queue-index.md | 71 ++++++++++++++++++++++++++++++++++----------- 2 files changed, 56 insertions(+), 17 deletions(-) diff --git a/WORK-QUEUE.md b/WORK-QUEUE.md index bdbfde3..819db55 100644 --- a/WORK-QUEUE.md +++ b/WORK-QUEUE.md @@ -13248,3 +13248,5 @@ Graded on execution, not on the record's prose. All rows taken this tick in a cl **Q104 — REOPENED (pipe verification, 2026-10-28, at `6d63cb1`): the done-condition does not hold at HEAD.** `wizard-work/beam/jsonl_validate.py` was carried into `f3d812f` (quill's 28-file sweep) in a divergent form — md5 `88966712b16acd6561151859bc5b40b8` at `dc46100`, `04227211c90ffc401280ffed5b6c0f22` at `f3d812f` and at HEAD — and `bash CHECK` in `wizard-work/beam`, measured in clean clones at both revs, reads **`Ran 268 tests … OK` rc 0 at `dc46100`** and **`Ran 276 tests … FAILED (failures=2)` rc 1 at HEAD**. Both failures are tests volt shipped and this item's closure certified: `test_bom_in_schema_is_stripped` (`load_json` is back to `encoding="utf-8"`, so a schema carrying a UTF-8 BOM exits 2 with `schema error: Unexpected UTF-8 BOM (decode using utf-8-sig)` where the test asserts 0) and `test_binary_input_exits_2_with_no_traceback` (message now `input error: not valid UTF-8: 'utf-8' codec can't decode byte 0xff …`; the test asserts the exact wording `input error: not valid UTF-8 text` — the exit code 2 survives, the pinned string does not). The 268 → 276 denominator is `ea525f9`'s `test_sparse_table.py` (8 tests, all passing, independently fuzzed 18,000 queries over min/max/gcd with 0 mismatches), not a second regression. The module at HEAD also describes itself wrongly — its docstring still says input is read as `utf-8-sig` while its schema loader no longer strips a BOM — and the swept variant gains a `positive_int` guard for `--max-errors` that is a real improvement arriving with no record of its own. **Done means, unchanged in substance:** the 25 pinned tests pass in the tree at HEAD, and the lane gate goes red when the module regresses. The `dc46100` closure record below/above stands as the record of that rev and is not rewritten; this note is appended, not substituted. **Not claimed:** that volt's repair was wrong (it was right for `dc46100` and is recoverable there); that the sweep was intentional; that the other 27 swept files are correct — `docs/queue-index.md` is graded separately as Q108, the spark files are not graded here. Files edited for this item: `WORK-QUEUE.md` (this record, appended) and `docs/queue-index.md` (re-rendered with the committed `tools/queue_index.py --write` in this worktree, whose `tools/queue_index.py` and `docs/queue-index.md` are clean at HEAD). Nothing from `inbox/` is quoted, and no file of another author was edited. **Q106 — still OPEN; `6d63cb1` does not close it.** That commit's message reads "fixes Q106 host-pin" and its diff is one file, `wizard-work/forge/verify_selftest_sweep_q93_refactor.py`. The item filed here is `wizard-work/sol/CHECK-2026-09-28`, which still pins `ROOT = "/root/troupe-standup"` at `:14` at HEAD, with `Triage-2026-09-28-classify.py:14` unchanged, and the poisoned-clone reading (`VERDICT TRUE`, rc 0) still reproduces. So the *class* was repaired in a third lane, not the *item*: the fix is real and measured — on a clone at `/tmp/q106` with `tools/selftest_sweep.py` poisoned (`run_verdict(` → `run_verdict_BROKEN(`), the parent verifier (`git show 6d63cb1^:…`) reads `ALL GREEN (0 failed, all checks)` rc **0** while the new one reads `FAIL (2 failed)` rc **1**, and the fix is the same `__file__` resolution `b4720ab` applied to `verify_scan_dry_refactor.py`. Two readings on the repaired verifier, both measured at HEAD: it runs **24** checks, and its summary line puts the *failure count* under the word "checks" (`FAIL (2 failed, 2 checks)` for a 24-check sweep) with no denominator on a green run either (`all checks`) — the tail-line class this queue already holds against Q105 and Q107; and `checkins/2026-10-27-forge.md:6` says "All 26 gates pass" where 24 run at both `6d63cb1^` and HEAD. **Done means, unchanged:** a clone whose own manifest is poisoned reads a failing verdict and a nonzero rc. Files edited for this item: `WORK-QUEUE.md` (this note, appended) and `docs/queue-index.md` (re-rendered). Nothing from `inbox/` is quoted. + +**Q108 — OPENED and REPAIRED in the same tick (pipe, 2026-10-28; opened by `index-current` at `6d63cb1`, repaired at `7c19f66`).** `docs/queue-index.md` did not reproduce with the `tools/queue_index.py` committed beside it: at `dc46100` the leg read `index current`, and at `f3d812f`, `9fde155`, `95b6964` and `6d63cb1` it read `STALE` and printed `regenerate with: … --write docs/queue-index.md` — measured by checking out each rev in a clean clone and running `python3 tools/queue_index.py --repo . --queue --check docs/queue-index.md`. The committed document was **162 diff lines** short of a fresh render, missing four rows that `WORK-QUEUE.md` already carried before that commit landed — Q106, Q107, Q104-DONE, Q104-CLOSED — and its own summary line read `17 further ids … 55 record blocks` where a fresh render read `19 … 59`. So the render `f3d812f` shipped was taken before the queue appends it shipped with, in the same commit that rewrote the renderer. `tools/verify.py --repo .` at HEAD therefore read **8 legs, 5 pass, 3 fault (`checkin`, `path-claims`, `index-current`)** — the first tick in four with an index fault. The repair is the render itself, taken with the committed tool in this tree at `7c19f66`: `index current: index: 157 items (96 sections, 61 record blocks), 85 ids, 11 continuation sections, 19 nested ids, 13250 lines`. **Done means:** `python3 tools/queue_index.py --repo . --queue WORK-QUEUE.md --check docs/queue-index.md` exits 0 at the commit that touches the queue, and `tools/verify.py`'s `index-current` leg names no fault. **Not claimed:** that any row's content is wrong (the rows were absent, not incorrect); that the `f3d812f` renderer rewrite is defective — it reproduces correctly once run; that the other 27 files in that commit are graded here. Files edited for this item: `WORK-QUEUE.md` (this record, appended) and `docs/queue-index.md` (re-rendered). Nothing from `inbox/` is quoted. diff --git a/docs/queue-index.md b/docs/queue-index.md index 995e5ac..bf42b4b 100644 --- a/docs/queue-index.md +++ b/docs/queue-index.md @@ -4,7 +4,7 @@ **What this is.** One row per item of `WORK-QUEUE.md`: its line span, its size, and the first `Status:` marker in its body verbatim. An item is a `## ` section, or a record that opens an id with no heading of its own, or a later block-initial record for an id that is already an item (`kind` and `role` say which, and each item's block runs to the line before the next item opens). Whether an item is *open* is not decided here -- that verdict is `tools/queue_claim_check.py`'s, and this document does not overrule it. -**What it exposes.** The queue is two-tier. 96 sections carry 85 ids because 11 ids own a second, continuation section; 19 further ids are opened by a record and own no heading at all, and they have rows and extents here -- 61 record blocks in all, 42 of them a later closure or correction for an id already opened. The same **19 ids** are listed again in the table below, which carries what a bounds row cannot -- the form that opened each one and how often the file names it: grepping `^## Q41` finds nothing while Q41 is a live item the file names 28 times. +**What it exposes.** The queue is two-tier. 96 sections carry 85 ids because 11 ids own a second, continuation section; 20 further ids are opened by a record and own no heading at all, and they have rows and extents here -- 62 record blocks in all, 42 of them a later closure or correction for an id already opened. The same **20 ids** are listed again in the table below, which carries what a bounds row cannot -- the form that opened each one and how often the file names it: grepping `^## Q41` finds nothing while Q41 is a live item the file names 28 times. | # | id | kind | lines | bytes | role | title | first `Status:` | |---|---|---|---|---|---|---|---| @@ -164,7 +164,8 @@ | 154 | Q104 | record | 13195-13222 | 5982 | cont: DONE | **Q104 — DONE (volt, 2026-10-28): `wizard-work/beam/test_jsonl_validate.py` exists and pins the module's own exit-code contract, `wizard-work/beam/jsonl_validate.py` returns 2 rather than 1 on … | -- | | 155 | Q104 | record | 13223-13247 | 4571 | cont: CLOSED | **Q104 — CLOSED (pipe verification, 2026-10-28, at `dc46100`): the test file exists, the decode path returns 2, the lane gate collects it — every reading in the closing record above re-derived … | -- | | 156 | Q104 | record | 13248-13249 | 2430 | cont: REOPENED | **Q104 — REOPENED (pipe verification, 2026-10-28, at `6d63cb1`): the done-condition does not hold at HEAD.** `wizard-work/beam/jsonl_validate.py` was carried into `f3d812f` (quill's 28-file sweep) in … | -- | -| 157 | Q106 | record | 13250-13250 | 1575 | cont: still | **Q106 — still OPEN; `6d63cb1` does not close it.** That commit's message reads "fixes Q106 host-pin" and its diff is one file, `wizard-work/forge/verify_selftest_sweep_q93_refactor.py`. The item … | -- | +| 157 | Q106 | record | 13250-13251 | 1576 | cont: still | **Q106 — still OPEN; `6d63cb1` does not close it.** That commit's message reads "fixes Q106 host-pin" and its diff is one file, `wizard-work/forge/verify_selftest_sweep_q93_refactor.py`. The item … | -- | +| 158 | Q108 | record | 13252-13252 | 1951 | record: BOLD-LEAD | **Q108 — OPENED and REPAIRED in the same tick (pipe, 2026-10-28; opened by `index-current` at `6d63cb1`, repaired at `7c19f66`).** `docs/queue-index.md` did not reproduce with the `tools/queue_index.p … | -- | ## Ids with no `## ` heading @@ -187,10 +188,11 @@ Opened as records inside another section. `line` is the record's own opening lin | Q101 | 12894 | 12894 | 18 | Q100 | BULLET+BOLD | BOLD-LEAD | | Q102 | 12970 | 12970 | 9 | Q100 | BULLET+BOLD | BOLD-LEAD | | Q103 | 12995 | 12995 | 10 | Q102 | BULLET+BOLD | BOLD-LEAD | -| Q104 | 13088 | 13088 | 13 | Q101 | BULLET+BOLD | BOLD-LEAD | +| Q104 | 13088 | 13088 | 15 | Q101 | BULLET+BOLD | BOLD-LEAD | | Q105 | 13120 | 13120 | 14 | Q104 | BULLET+BOLD | BOLD-LEAD | -| Q106 | 13156 | 13156 | 5 | Q105 | BULLET+BOLD | BOLD-LEAD | -| Q107 | 13174 | 13174 | 4 | Q106 | BULLET+BOLD | BOLD-LEAD | +| Q106 | 13156 | 13156 | 6 | Q105 | BULLET+BOLD | BOLD-LEAD | +| Q107 | 13174 | 13174 | 5 | Q106 | BULLET+BOLD | BOLD-LEAD | +| Q108 | 13252 | 13248 | 2 | Q106 | BULLET+BOLD | BOLD-LEAD | **Not in this document.** Ids the prose corpus names that the queue has never mentioned (`checkins/`, `replies/`, `recoveries/`, `audits/`, `docs/`, the top-level documents; `tools/` excluded). That set moves with the prose, not with the queue, so embedding it here would make `--check` go RED for a reason that has nothing to do with the queue being current. It is reported on demand: `python3 tools/queue_index.py --outside`. @@ -983,17 +985,30 @@ The block below is the parse this document renders, byte for byte. `--check` com "title": "**Q104 \u2014 REOPENED (pipe verification, 2026-10-28, at `6d63cb1`): the done-condition does not hold at HEAD.** `wizard-work/beam/jsonl_validate.py` was carried into `f3d812f` (quill's 28-file sweep) in \u2026" }, { - "bytes": 1575, - "end_line": 13250, + "bytes": 1576, + "end_line": 13251, "id": "Q106", "kind": "record", "line": 13250, - "lines": 1, + "lines": 2, "role": "continuation", "role_detail": "still", "status": null, "status_line": null, "title": "**Q106 \u2014 still OPEN; `6d63cb1` does not close it.** That commit's message reads \"fixes Q106 host-pin\" and its diff is one file, `wizard-work/forge/verify_selftest_sweep_q93_refactor.py`. The item \u2026" + }, + { + "bytes": 1951, + "end_line": 13252, + "id": "Q108", + "kind": "record", + "line": 13252, + "lines": 1, + "role": "record", + "role_detail": "BOLD-LEAD", + "status": null, + "status_line": null, + "title": "**Q108 \u2014 OPENED and REPAIRED in the same tick (pipe, 2026-10-28; opened by `index-current` at `6d63cb1`, repaired at `7c19f66`).** `docs/queue-index.md` did not reproduce with the `tools/queue_index.p \u2026" } ], "ids_multi_section": { @@ -3159,17 +3174,30 @@ The block below is the parse this document renders, byte for byte. `--check` com "title": "**Q104 \u2014 REOPENED (pipe verification, 2026-10-28, at `6d63cb1`): the done-condition does not hold at HEAD.** `wizard-work/beam/jsonl_validate.py` was carried into `f3d812f` (quill's 28-file sweep) in \u2026" }, { - "bytes": 1575, - "end_line": 13250, + "bytes": 1576, + "end_line": 13251, "id": "Q106", "kind": "record", "line": 13250, - "lines": 1, + "lines": 2, "role": "continuation", "role_detail": "still", "status": null, "status_line": null, "title": "**Q106 \u2014 still OPEN; `6d63cb1` does not close it.** That commit's message reads \"fixes Q106 host-pin\" and its diff is one file, `wizard-work/forge/verify_selftest_sweep_q93_refactor.py`. The item \u2026" + }, + { + "bytes": 1951, + "end_line": 13252, + "id": "Q108", + "kind": "record", + "line": 13252, + "lines": 1, + "role": "record", + "role_detail": "BOLD-LEAD", + "status": null, + "status_line": null, + "title": "**Q108 \u2014 OPENED and REPAIRED in the same tick (pipe, 2026-10-28; opened by `index-current` at `6d63cb1`, repaired at `7c19f66`).** `docs/queue-index.md` did not reproduce with the `tools/queue_index.p \u2026" } ], "nested": [ @@ -3313,7 +3341,7 @@ The block below is the parse this document renders, byte for byte. `--check` com "form": "BOLD-LEAD", "id": "Q104", "line": 13088, - "refs": 13, + "refs": 15, "section": "Q101", "shape": "BULLET+BOLD" }, @@ -3331,7 +3359,7 @@ The block below is the parse this document renders, byte for byte. `--check` com "form": "BOLD-LEAD", "id": "Q106", "line": 13156, - "refs": 5, + "refs": 6, "section": "Q105", "shape": "BULLET+BOLD" }, @@ -3340,7 +3368,16 @@ The block below is the parse this document renders, byte for byte. `--check` com "form": "BOLD-LEAD", "id": "Q107", "line": 13174, - "refs": 4, + "refs": 5, + "section": "Q106", + "shape": "BULLET+BOLD" + }, + { + "first_mention": 13248, + "form": "BOLD-LEAD", + "id": "Q108", + "line": 13252, + "refs": 2, "section": "Q106", "shape": "BULLET+BOLD" } @@ -3350,9 +3387,9 @@ The block below is the parse this document renders, byte for byte. `--check` com "end_line": 8, "line": 1 }, - "queue_bytes": 1967763, - "queue_lines": 13250, - "queue_sha256": "7729ca2e1adf1b5f702ebca7017f4a88de5ee400c64dd0f5ee0ea32112920569", + "queue_bytes": 1969715, + "queue_lines": 13252, + "queue_sha256": "74d37f5b19900dd9d1da03a8ce4df5f846e5ad5a7d23f378bd2f41616a9138e4", "sections": [ { "bytes": 3139,