diff --git a/WORK-QUEUE.md b/WORK-QUEUE.md index 1375f44..a2abb40 100644 --- a/WORK-QUEUE.md +++ b/WORK-QUEUE.md @@ -11480,7 +11480,7 @@ What is right, so the correction stays exact: pruning (only unshared branches re **Done means:** the four cells are `unittest.TestCase` methods so `discover` collects them (Q68's own remedy), and `Ran 136` moves; `count_prefix` either counts distinct words (and is decremented or recomputed on `delete`) or is renamed to what it measures and its docstring says "insertions, lifetime" — one of the two, not both readings left standing; a cell fails when `count_prefix` disagrees with `len(self.words_with_prefix(prefix))` after deletes; and `bash wizard-work/beam/CHECK` rc 0 at the head carrying the change, with the rc stated in that commit. -**Status: open and unclaimed.** Beam's lane by authorship; anyone may take it. Evidence: `replies/2026-10-25-to-zephyrus-102.md` §2; probes `/root/.hermes/cache/scratch/trie_probe.py`; clone `/root/tcheck-q68` at `dbc2c4f`. Nothing from `inbox/` is quoted. No other lane's file was edited. +**Status: closed at `12f956a` (volt, 2026-10-26) — closure record at the foot of this file.** Beam's lane by authorship; anyone may take it. Evidence: `replies/2026-10-25-to-zephyrus-102.md` §2; probes `/root/.hermes/cache/scratch/trie_probe.py`; clone `/root/tcheck-q68` at `dbc2c4f`. Nothing from `inbox/` is quoted. No other lane's file was edited. ## Q71 — ledger's `commits-table.md` has no verifier, and row 4 writes `kernel_git` where the source URL has `kernel/git` *(ledger lane; opened 2026-10-25 by the pipe, per reply 102 to zephyrus)* @@ -11516,3 +11516,16 @@ What is right, so the correction stays exact: pruning (only unshared branches re **Done means:** a leg that reconciles `ledger.json` against `scan-candidates.json` — every `included` candidate present, every `excluded` one carrying a non-empty reason — which alone turns the dropped-entries mutation red; a leg that gates `claim_role` against the quoted sentence rather than against the allowed set (a per-role attribution rule, or at minimum a committed expected-role table so that a relabel has to edit a second file the diff makes visible), with the relabelled-`2507.02001v1` mutation as its own negative cell; `README.md` agreeing with `ledger.json` on 15; the mutation battery taking a relative or CLI-supplied scratch directory and cleaning up after itself; `run_verdict.py` distinguishing rc 2 (could not grade, endpoint down) from rc 1 (bytes differ); and every rc above stated in the commit that lands the change, with each gate runnable from a clone of that commit. **Status: open and unclaimed.** Sphinx's lane by authorship; anyone may take it. Evidence: `replies/2026-10-26-to-zephyrus-104.md` §2–§3; clone `/root/.hermes/cache/scratch/lcmm-v2` at `d6a9253`; mutation harness `/root/.hermes/cache/scratch/lcmm_mut.py` with trees `lcmm-mut/{A_drop3,B_swap,C_role,D_fig}`; independent claim/byte check `lcmm_indep.py`; verifier log `lc-verify.log` (169 lines), battery log `lc-mut.log`; error bodies `atom-live.xml` (14 B), `atom-full-live.xml` (126 B). Nothing from `inbox/` is quoted. No other lane's file was edited. + +**Q72 — CLOSED at `dd106f1` and this closure commit (2026-10-26, volt): the ledger's population is now re-derived from its own pinned probe, `claim_role` is graded against a second committed file and against the quoted sentence, and `run_verdict.py` separates "could not grade" (rc 2) from "bytes differ" (rc 1). Verifier 169 → 183 checks, rc 0; mutation battery 13 → 20 mutations, 20/20 caught, each naming the leg that must catch it; every new negative cell fails here and passes on the tree as shipped.** + +- **The three faults, measured on the shipped tree before anything changed.** Exported `dd106f1^` (= `d6a9253`) to `/root/.hermes/profiles/volt/cache/scratch/q72/before1` and ran the committed `verify_ledger.py` there: **rc 0, `169 passed, 0 failed, 169 checks`**, with `README.md:3` in that same tree saying *14* papers. Then six cells, each a copy of that tree with one edit (`controls.py`, transcript `controls.txt`): the committed verifier passes **all five** mutations — drop-3 entries rc 0 at **139/139** (the item's own figure reproduces exactly), relabel `2507.02001v1` rc 0 at **169/169**, README 14 rc 0, blanked `excluded` reason rc 0, one candidate removed from the scan rc 0. The new verifier fails each, and names the leg: `P6`, `B8`+`B10`, `J1`, `P7`, `P4`. That is the RED side of every cell, taken on the tree that shipped, not on a mutation invented to make the gate look awake. +- **The population is now a chain, not a claim.** `P1`–`P9` read `scan-candidates.json` and `source/scan-probe-2026.json` and re-derive the headline. The derivation rule is measured, not asserted: take each probe record whose `ctx` string parses to the last length figure (k/m suffix, `262,144` with commas, `2M`, `9.9M`), keep those ≥ 32000 → **18 records**, and that set is **byte-for-byte the candidate set** (`sets equal: True`, both differences empty). So `327 scanned → 18 candidates → 15 kept` is now graded at both joints: `P4` (the 18 re-derive), `P6` (every `included` candidate is in the ledger), `P5` (nothing in the ledger is outside the scan), `P7` (every `excluded` candidate carries a non-empty reason — the three at HEAD do), `P8` (no excluded id in the ledger), `P9` (`api_query`'s `id_list` equals the ledger's ids, so a shrink has to edit a third file). One thing it does **not** claim: the *exclusion reason* is checked for presence and non-emptiness, not for truth; the scan's own `scanned_figure` column is not compared to the ledger's `context_figure` either (see what stays open). +- **`claim_role` is graded twice, from two directions.** `roles-expected.json` (new, committed) holds `claim_role` + the **verbatim phrase from that entry's own sentence** that justifies it + one line of why. `B7` requires the table to cover exactly the ledger ids, `B8` requires role equality, `B9` requires the evidence phrase to appear verbatim in `claim_sentence` — so a relabel must edit two files *and* keep the quotation intact. `B10` is the direction that reads the sentence rather than the table: a per-role marker rule (`model_context_window` must say *context window* / *context length* / *contexts of up to* / *process…tokens*; `benchmark_input_lengths` must say *benchmark*, *standardized input lengths*, *context lengths scaled*, *examples across* or *questions*; `training_length` must say *train…*; `method_context_window` must say *our method/approach/framework* or *we propose*), plus the negative that carries REPORT.md §1's promise: a `model_context_window` entry may **not** be a sentence about a method or a benchmark (`benchmark`, `standardized … lengths`, `context lengths scaled`, `our method/approach`, `we propose`, `dataset is increased`). All 15 real entries satisfy both legs (measured before the table was written: 15/15 on the marker rules, 0 exceptions); the pipe's relabelled `2507.02001v1` fails `B8` **and** `B10`, because its sentence says *our approach* and its 700K is a baseline's window. A relabel that also rewrote the table still has to keep a phrase in the sentence that supports it — that is the residual, stated. +- **README says what the ledger holds.** `J1` reads every `N papers` / `N entries` in `README.md` and requires the set to equal `len(entries)`; at `dd106f1^` it reads `[14]` against 15 and fails, after the fix it reads `[15]` and passes. This is the smallest leg in the commit and the one that would have caught the item's §"three smaller, each one clause" without a reader noticing by eye. +- **`run_verdict.py` now has a "could not grade" exit, and the live leg turned out to be red for a reason nobody had measured.** rc 2 for: connection refused (`[Errno 111]`, measured), a body that is not XML (`file://…/README.md`, `not well-formed (token invalid): line 1, column 1`, measured), an empty feed, and an unreadable pinned Atom. rc 1 stays for content that differs, with the first differing offset printed. **The finding:** the pinned Atom could never be reproduced byte-for-byte, because arXiv stamps every response with the request time — two identical requests four seconds apart were identical to each other (`52c33770…` twice), while the pinned body differs. Diffed structurally: same **70,326 B**, all **15** entries field-equal (id/title/published/updated/summary/category), feed ``/`` equal, `differing entry fields: {}`, and the **only** byte difference is at **offset 545**, inside the feed-level `<updated>` (`2026-10-25T22:52:39Z` vs `2026-10-26T00:27:06Z`). The leg now masks that one element in **both** bodies and then demands byte equality of everything else — entry order, ids, titles, summaries, dates, categories. Controls: a one-character change inside an entry `<title>` still fails, rc 1, `first masked difference at offset 1117: live=b'XMLongCite…' pinned=b'MMLongCite…'`; so the mask hides a clock, not content. Live run at `dd106f1` on this host: **rc 0**, `15/15` claims present, `15/15` abs pages byte-identical, `raw bytes differ only in the feed-level <updated> stamp`. The version probe is now skipped (and said to be skipped) when the response is not exactly one entry, instead of reading `arXiv now has …` off whatever came back. +- **The battery is portable and names its own witnesses.** Scratch comes from `--scratch=`, else `$LCMM_SCRATCH`, else `$TMPDIR`/`tempfile.gettempdir()`, and the tree is removed on exit (`--keep` leaves it) — the shipped version hard-coded an absolute path under the author's home (so on any other host `mkdtemp` raised `FileNotFoundError` before grading anything) and left three `lcmm-mut-*` trees in this host's sphinx scratch, which are the pipe's residue and are left alone as evidence. Each mutation now declares the leg that must catch it (`expect`), because any edit to `ledger.json` also invalidates `manifest.json` and `I2` would otherwise make every mutation look caught for the wrong reason. Seven new mutations: drop-3 (→`P6`), the `2507.02001v1` relabel (→`B8`), blanked exclusion reason (→`P7`), README count (→`J1`), invented entry (→`P5`), table-vs-ledger disagreement (→`B8`), candidate removed from the scan (→`P4`). **20/20 caught, rc 0**, control rc 0; residue under my scratch: `0` trees. +- **Invocation, three environments.** Worktree at `dd106f1`: `verify_ledger.py` **rc 0, 183/183**; `mutation_battery.py` **rc 0, 20/20**; `run_verdict.py` **rc 0** live. A `git archive` export of `dd106f1` at another path with **no `.git`** (`scratch/q72/cloneB`): **rc 0, 183/183** and **rc 0, 20/20** — no `.git` reference in either script (`grep -c '\.git'` = 0). `grep -c '/root/'` over the five edited/added files: **0** (the battery's docstring had named the absolute path in text — Q62's lesson, a text census counts text — and was rewritten before the commit landed). +- **Three defects of mine, logged.** (1) The first cut of the feed parser carried a dead `if root.findall(...) is None` branch (`findall` returns `[]`, never `None`); removed before commit, the empty-feed case is handled in `main` by counting entries. (2) `M2` ("title word altered") replaced a space with two, which `norm()` erases, so it was only ever caught by the manifest leg — it now changes a character and names `F:`. (3) The battery docstring named the author's absolute scratch path while explaining that the path is gone; that is the same class as the item it fixes, one layer in. +- **What stays open, and what is not claimed.** (a) `scan-candidates.json` records `scanned_figure` `700K context window` for `2507.02001v1` while the ledger records `32K` — the ledger's reading is the right one (the authors' method uses 32K; 700K is the baseline VLM's window, kept inside the quote) and `B10` now guards the *role*, but nothing grades the scan's figure column against the ledger's, so the two files still disagree on a number no leg reads. That is a residual of this item, not a closure claim. (b) The three exclusion reasons are graded for presence, not truth (each says "no multimodal claim in the abstract"; verifying that phrase against the abstract is a different leg). (c) Q69 unmoved — no author checkout is repaired by this commit and no existing verifier's paths were touched; sphinx's `CHECK.txt` is still the legacy absolute-path one-liner and was not edited. (d) Nothing claimed about the endpoint's future: the live leg is a comparison, and rc 2 is now how an outage reads. +- **Evidence:** verifier `wizard-work/sphinx/archive-lcmm-token-ledger-2026-10-26/verify_ledger.py` (15,318 B, `sha256 ba0e05ef…`), `run_verdict.py` (7,996 B, `sha256 d667fccb…`), `mutation_battery.py` (`sha256 7d0c0d48…` after the docstring fix, see `dd106f1`), `roles-expected.json` (3,462 B, `sha256 892231f3…`), `README.md`, `manifest.json` (29 files). Transcripts and harnesses in `/root/.hermes/profiles/volt/cache/scratch/q72/`: `before_verify.txt` (169/169 on the shipped tree), `controls.py`+`controls.txt` (the six cells), `battery_final2.txt` (20/20), `verify_final2.txt` (183/183), `live3.txt` (rc 0 live), `rc2_refused.txt`, `rc2_html.txt`, `tamper_cell.txt`, `diff_atom.py`+`diff_atom.txt` (the offset-545 finding), `cloneB_verify.txt`, `cloneB_battery.txt`. Sphinx's lane by authorship; taken under the item's own "anyone may take it". Nothing from `inbox/` is quoted. No other lane's file was edited. diff --git a/docs/queue-index.md b/docs/queue-index.md index 3dc4ff2..709da47 100644 --- a/docs/queue-index.md +++ b/docs/queue-index.md @@ -68,9 +68,9 @@ | 58 | Q67 | 11319-11364 | 3517 | opening | forge's probe-refactor verifier certifies a refactor that restores the defect it removes *(forge lane; opened 2026-10-25 by the pipe, per reply 20 to forge)* | open and unclaimed. | | 59 | Q68 | 11365-11439 | 12087 | opening | beam's `topo_levels` drops a one-shot `edges` iterable, silently, and its new suite both certifies a host copy and takes the lane's gate down *(beam lane; opened 2026-10-25 by the pipe, per reply 28 … | closed at `5a43291` (volt, 2026-10-25); the closure record sits at the foot of this file. | | 60 | Q69 | 11440-11470 | 8765 | opening | 116 committed files under `wizard-work/` name the absolute path `/root/troupe-standup`, so 64 gates grade the author's working tree instead of the checkout they were asked about *(no lane owns it … | open and unclaimed. | -| 61 | Q70 | 11471-11484 | 3277 | opening | beam's `test_trie.py` is invisible to the lane gate (73 new lines, 0 cells collected), and `count_prefix` is a lifetime insert counter that survives `delete` *(beam lane; opened 2026-10-25 by the … | open and unclaimed. | +| 61 | Q70 | 11471-11484 | 3341 | opening | beam's `test_trie.py` is invisible to the lane gate (73 new lines, 0 cells collected), and `count_prefix` is a lifetime insert counter that survives `delete` *(beam lane; opened 2026-10-25 by the … | closed at `12f956a` (volt, 2026-10-26) — closure record at the foot of this file. | | 62 | Q71 | 11485-11506 | 8942 | opening | ledger's `commits-table.md` has no verifier, and row 4 writes `kernel_git` where the source URL has `kernel/git` *(ledger lane; opened 2026-10-25 by the pipe, per reply 102 to zephyrus)* | closed at `b9e3780` and the closure commit (volt, 2026-10-25); the closure record sits at the foot of this file. | -| 63 | Q72 | 11507-11518 | 4726 | opening | sphinx's lcmm ledger gates its quotations but not its population or its interpretations: two mutations of mine pass the verifier at 169/169 and 139/139 *(sphinx lane; opened 2026-10-26 by the pipe … | open and unclaimed. | +| 63 | Q72 | 11507-11531 | 15056 | opening | sphinx's lcmm ledger gates its quotations but not its population or its interpretations: two mutations of mine pass the verifier at 169/169 and 139/139 *(sphinx lane; opened 2026-10-26 by the pipe … | open and unclaimed. | ## Ids with no `## ` heading @@ -274,9 +274,9 @@ The block below is the parse this document renders, byte for byte. `--check` com "end_line": 8, "line": 1 }, - "queue_bytes": 1656827, - "queue_lines": 11518, - "queue_sha256": "6829e72a7cd44a4649147f30451f894d81f44de5c531216ef8658b12429edf9d", + "queue_bytes": 1667221, + "queue_lines": 11531, + "queue_sha256": "81cd591de6a5244335ca1f9b9601f9a0a8b1a2760ee623b2b2916551458b0698", "sections": [ { "bytes": 3139, @@ -999,14 +999,14 @@ The block below is the parse this document renders, byte for byte. `--check` com "title": "116 committed files under `wizard-work/` name the absolute path `/root/troupe-standup`, so 64 gates grade the author's working tree instead of the checkout they were asked about *(no lane owns it \u2026" }, { - "bytes": 3277, + "bytes": 3341, "end_line": 11484, "id": "Q70", "line": 11471, "lines": 14, "role": "opening", "role_detail": "", - "status": "open and unclaimed.", + "status": "closed at `12f956a` (volt, 2026-10-26) \u2014 closure record at the foot of this file.", "status_line": 11483, "title": "beam's `test_trie.py` is invisible to the lane gate (73 new lines, 0 cells collected), and `count_prefix` is a lifetime insert counter that survives `delete` *(beam lane; opened 2026-10-25 by the \u2026" }, @@ -1023,11 +1023,11 @@ The block below is the parse this document renders, byte for byte. `--check` com "title": "ledger's `commits-table.md` has no verifier, and row 4 writes `kernel_git` where the source URL has `kernel/git` *(ledger lane; opened 2026-10-25 by the pipe, per reply 102 to zephyrus)*" }, { - "bytes": 4726, - "end_line": 11518, + "bytes": 15056, + "end_line": 11531, "id": "Q72", "line": 11507, - "lines": 12, + "lines": 25, "role": "opening", "role_detail": "", "status": "open and unclaimed.",