diff --git a/WORK-QUEUE.md b/WORK-QUEUE.md index e6069e2..fa37e91 100644 --- a/WORK-QUEUE.md +++ b/WORK-QUEUE.md @@ -10396,3 +10396,36 @@ Verification at this commit: `path_claim_check.py --selftest` **17/17 rc 0**; ce 8. **What it does not claim.** The 720 EXTERNAL paths are counted, never graded: no claim that they exist. `EXAMPLE` and `PLANTED` rows are tolerances with a reading, not proof of absence — both stay printed as MISSING on every run. And the gate is not green: 4 of 5 legs pass, and the fifth is named above. — Volt + + +**Control-plane correction 2026-10-20 23:09Z — appended, not edited, because both records below are other lanes' work and §5 forbids rewriting them.** Ledger's true last line at `369baea` read immediately before this append; guard run and index re-rendered in the same commit. + +**1. `path_claim_check.py`'s "3 new" is right, and the "10 new" that contradicts it is a real tool defect, not a transcription slip.** + +I re-derived both at `028e2d9` in a clean clone (`/root/.hermes/profiles/timmy/cache/scratch/pc028`, `git checkout 028e2d9`, HEAD verified). Running the tool the way its own docstring says to: + + bare path_claim_check: 1043 distinct paths, 10 missing, 10 new against the baseline + --baseline tools/path_claim_baseline.tsv 1043 distinct paths, 10 missing, 3 new + +Root cause, read in the source at that revision: `ap.add_argument("--baseline")` (l.325) has **no `default=`**, while the usage block at l.75 advertises `--baseline tools/path_claim_baseline.tsv`. So a bare invocation grades against an **empty ledger** and reports all ten missing paths as new — and under `--fail-on-missing` it returns a **false RED** for an archive whose stated baseline excuses seven of them. The 19-line baseline at `028e2d9` carries 7 real entries (`RENAMED`, `NOT_ADDED`, `SHORT_NAME`, 3× `PLANTED`, `FOREIGN_TREE`), which is exactly what closes the gap: 10 missing − 7 excused = **3 new**. Both of the earlier sentences ("10 new" and "Seven of the ten were reviewed rows; the three new ones…") describe the same archive; only the second is what the tool prints when it is given its own baseline. **Fix for volt, one line:** `ap.add_argument("--baseline", default="tools/path_claim_baseline.tsv")`, plus a selftest cell asserting bare-run ≡ explicit-run, otherwise the docstring keeps promising a default the code does not apply. Unit note, since two distinct counts are in play: my distinct figure is **1043**, the record's is **1042** — one path apart, same tree, method unchanged; I am not calling either wrong, but a count quoted beside a path list must name the tree it was read in. + +**2. The org-wide "321 open issues" table is not 321 open issues. It overstates by 133 and mislabels pull requests as issues.** + +Measured now against the live forge API (per-repo `state=open`), against the committed `wizard-work/ledger/issues.csv` (321 rows, every one stamped `state: open`): + +| repo | ledger rows | live open issues | live open PRs | +|---|---|---|---| +| stackchain/stackchain-lab-loop | **190** | **50** | 7 | +| stackchain/stackchain-hackathon | 50 | 50 | 0 | +| stackchain/timmy-talking-turd | 40 | 32 | 8 | +| stackchain/live-wizard | 13 | 13 | 0 | +| stackchain/agent-todo-tracker | 12 | 11 | 1 | +| stackchain/stackchain-dashboard | 10 | 9 | 1 | +| stackchain/sovereign-stack | 6 | 6 | 0 | +| **total** | **321** | **171** | **17** | + +`stackchain-lab-loop` is the whole error: **190 rows against 50 issues that exist in any state at all** (`state=all` returns 50, so the 140 surplus cannot be closed issues either). Its ledger rows also include the seven open PR numbers (4, 12, 14, 17, 18, 42, 43), and `timmy-talking-turd`'s include all eight of its open PRs (60–65, 79, 82) — so the table conflates `/issues` (which Gitea also serves PRs from) with issues proper. Live truth is **171 open issues + 17 open PRs = 188 open items**, not 321. Two structural reasons its own `verify_issues.py` cannot catch this, both worth fixing before the artifact is cited again: it re-derives from the artifact's own snapshot rather than the API (so a wrong snapshot verifies as correct), and `fetched_at` is the literal string `2026-10-20T00:00:00Z` — a date stamp, not a fetch time, so drift cannot be dated. `repo_count: 9` also misses `sovereign-stack-pwa` and `troupe-standup` (0 open items each, so the table is not wrong there, only unstated). + +**3. Carried, not decided here:** the 7 published-archive corrections (magazine-021, -011 ×3, -061 ×2, -040, -041) graded contradicted or unsupported remain **Alexander's publish decisions**, open since 2026-09-26. Neither this correction nor any automated grading changes that; the queue now states them, it does not decide them. + +No issue, PR, release or deploy surface touched; no secret printed. diff --git a/docs/queue-index.md b/docs/queue-index.md index 5532d53..1362c57 100644 --- a/docs/queue-index.md +++ b/docs/queue-index.md @@ -56,7 +56,7 @@ | 46 | Q44 | 6162-6705 | 88496 | opening | The pin class: redirect every constant composed from the live data root, not only `SNAPSHOT_PATH` *(Helm lane; opened 2026-10-12 by the pipe, per Q43's own closing sentence — "extend the redirect … | DONE 2026-10-12 — `recoveries/helm-root-redirect.md` (Merlin, Helm lane); the closure block is at the foot | | 47 | Q48 | 6706-6825 | 15123 | opening | The runtime-resolution redirect: close the class Q45's literals cannot see | DONE 2026-10-13 — `recoveries/helm-runtime-redirect.md` (Merlin, Helm lane), scratch tree | | 48 | Q49 | 6826-7593 | 92050 | opening | The runtime-resolved root's live write path: name it, reproduce it, then close it | open and unclaimed. Opened by the pipe 2026-10-13 | -| 49 | Q45 | 7594-10398 | 491061 | opening | §9 follow-on — the home-directory channel *(Helm lane; Merlin)* | OPEN — awaiting Alexander's zoom/whole-shop answer; build is the pipe's. | +| 49 | Q45 | 7594-10431 | 495343 | opening | §9 follow-on — the home-directory channel *(Helm lane; Merlin)* | OPEN — awaiting Alexander's zoom/whole-shop answer; build is the pipe's. | ## Ids with no `## ` heading @@ -246,9 +246,9 @@ The block below is the parse this document renders, byte for byte. `--check` com "end_line": 8, "line": 1 }, - "queue_bytes": 1383322, - "queue_lines": 10398, - "queue_sha256": "83ffe34a6367b7865e3fed7dce0c25fb30a38be2154b3040dd322e1cf5241c21", + "queue_bytes": 1387604, + "queue_lines": 10431, + "queue_sha256": "b518d1c726a1967105e2370911dde2a0bdd52484cfb8a6696acc0e7c7adde354", "sections": [ { "bytes": 3139, @@ -827,11 +827,11 @@ The block below is the parse this document renders, byte for byte. `--check` com "title": "The runtime-resolved root's live write path: name it, reproduce it, then close it" }, { - "bytes": 491061, - "end_line": 10398, + "bytes": 495343, + "end_line": 10431, "id": "Q45", "line": 7594, - "lines": 2805, + "lines": 2838, "role": "opening", "role_detail": "", "status": "OPEN \u2014 awaiting Alexander's zoom/whole-shop answer; build is the pipe's.",