pipe: Q106 open -- sol CHECK-2026-09-28 pins ROOT=/root/troupe-standup, so a poisoned clone still reads VERDICT TRUE rc 0; done-condition is grading the copy it ships with; index re-rendered
This commit is contained in:
1 parent
bca3160724
commit
b4f702edc1
2 files changed
+68
-13
No files matched your search
@@ -13151,3 +13151,21 @@ Files edited for this item: `WORK-QUEUE.md` (**this record, appended**) and `doc
|
||||
Re-measurements this tick, so the next reader does not inherit an unverified table: md5 of the top-level file `13e40d01927501be36392925b6ae5ead` (**matches** the addendum); `python3 toposort/test_toposort.py` prints exactly **8 `PASS` lines + `ALL`** (**matches**); `python3 -m pytest -q --collect-only test_*.py` → **364**; `python3 -m unittest discover -p 'test_*.py'` → **233**; files collecting zero unittest tests **27 of 53**, and `pytest` over exactly those 27 → **131** (**all match**). The done-condition reproduces: with `test_fenwick.py`'s `prefix(5)` expectation broken, `bash CHECK` exits **rc 0** and its tail is `PASS det / ALL`; the file was restored with `git checkout --`, is clean, and `pytest -q test_fenwick.py` reads **8 passed**. So the gate is blind to the 8 tests beam shipped in `26cdf8b` — measured, not inferred. Q105 remains **OPEN and unclaimed**; either CHECK runs `pytest` or the 27 files are wrapped for `unittest`, and the pinned count changes with whichever lands.
|
||||
|
||||
Queue state moved under this record too: **Q103 landed at `e3bbe87`** (volt), so `tools/queue_index.py --check` now prints rows for **Q100–Q105** and the "85 ids" summary counts heading-opened ids only, not the record-opened ones — the earlier sentence in Q104's record that "the committed parser still reads 85 ids, so Q104 has no row of its own" is therefore superseded by Q103's landing, not by anything this item did. **Q104 stands separately**: `git log --all --diff-filter=A -- wizard-work/beam/test_jsonl_validate.py` is still **0 commits**, and the lane holds `jsonl_validate.py` with no test file. Files edited for this note: `WORK-QUEUE.md` (appended) and `docs/queue-index.md` (re-rendered in a clean worktree). Nothing from `inbox/` is opened or quoted, and no file of another author was edited.
|
||||
|
||||
|
||||
**Q106 — OPEN (sol lane by authorship; opened 2026-10-28 by the pipe, at `f7844b1`). `wizard-work/sol/CHECK-2026-09-28` pins `ROOT = "/root/troupe-standup"`, so the gate grades the host worktree it was born in and ignores the tree it ships with: a clone whose own manifest was poisoned still prints `VERDICT TRUE`, rc 0.**
|
||||
|
||||
`f7844b1` ("sol: Triage-2026-09-28 -- deterministic classification of the 12 pending inbox-seed items", 2026-10-28T03:19Z) adds five files to `wizard-work/sol/`; three of them bind the host path. Every reading below was taken this tick, from a head of `0bbab3a`.
|
||||
|
||||
| Reading | Result |
|
||||
|---|---|
|
||||
| `grep -n "/root/troupe-standup" wizard-work/sol/*` | `CHECK-2026-09-28:14` (`ROOT = "/root/troupe-standup"`), `Triage-2026-09-28-classify.py:14` (same), `_dump_seed.py:2` (`p="/root/troupe-standup/inbox/seed-2026-09-26.json"`) |
|
||||
| `python3 wizard-work/sol/CHECK-2026-09-28` at HEAD | `VERDICT TRUE (categories={archive_fix: 7, app_pr: 3, general: 2, other: 0} table=12)`, rc **0** -- the classification itself reproduces |
|
||||
| copy `CHECK-2026-09-28` + `Triage-2026-09-28-classify.json` to `/tmp/clone/wizard-work/sol/`, set the copy's manifest to `archive_fix: 999, table: 0`, run it **from that directory** | `VERDICT TRUE`, rc **0** -- the poisoned manifest is never read; the host file under `/root/troupe-standup` answers for every clone |
|
||||
| same, with `/root/troupe-standup` absent from `PATH`-reachable state | not testable without moving the host worktree; the static reading above is what the fix has to remove |
|
||||
|
||||
The defect class is the one Q98 and Q100 already name: a committed gate that resolves its subject from a path outside the repo. The difference is that here the path is inside a *script's own constant* rather than a fixture import, so `tools/import_resolve_check.py` does not see it and the `path-claims` leg does not either.
|
||||
|
||||
**Done-condition, one line:** from a copy of the repo at any path, `python3 wizard-work/sol/CHECK-2026-09-28` must grade *that copy's* manifest -- poison the copy and the verdict must go FALSE with rc nonzero; leave it clean and the verdict stays TRUE with rc 0. Any fix that keeps an absolute default is not a fix; the two builder scripts need the same treatment, since a clone that regenerates its manifest would write to the host seed.
|
||||
|
||||
**Not claimed:** that the classification is wrong -- it is not, and the manifest matches an independent re-derivation from the seed's summary prefixes (7/3/2 over 12 pending, 0 decided, order preserved); that sol is the only lane with this shape -- Q98/Q100's files are a different mechanism and were not re-measured here; that anything consumes `Triage-2026-09-28-classify.json` -- `git grep` finds no caller outside the lane's own CHECK; that the `inbox/` seed's committed state is a defect -- `decisions/2026-10-06-human-gates.md:4` records Alexander's **KEEP PUBLIC** ruling on this repo, the decided note controls, and no visibility blocker is raised by this item; that quoting seed summaries into committed files is new exposure -- the seed itself is committed, so the triage adds no information a reader did not already have. 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` in this clean worktree, not in `/root/troupe-standup`, whose working tree carries other lanes' uncommitted edits). Nothing from `inbox/` is quoted, and no file of another author was edited.
|
||||
+50
-13
@@ -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 (`kind` says which, and such an id'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; 17 further ids are opened by a record and own no heading at all, and they have rows and extents here. The same **17 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; 18 further ids are opened by a record and own no heading at all, and they have rows and extents here. The same **18 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:` |
|
||||
|---|---|---|---|---|---|---|---|
|
||||
@@ -120,7 +120,8 @@
|
||||
| 110 | Q102 | record | 12970-12994 | 4216 | record: BOLD-LEAD | **Q102 — OPEN (beam lane by authorship; opened 2026-10-27 by the pipe, at `41f4b37`). `beam/majority_element.py` returns bare `None` for "no majority", so three different outcomes are one return … | -- |
|
||||
| 111 | Q103 | record | 12995-13087 | 16301 | record: BOLD-LEAD | **Q103 — OPEN (tooling lane, no author; opened 2026-10-27 by the pipe, at `64c1e36`). `tools/queue_index.py` reads ids as one or two digits, so every item from Q100 up is invisible to the queue's own … | -- |
|
||||
| 112 | Q104 | record | 13088-13119 | 6443 | record: BOLD-LEAD | **Q104 — OPEN (beam lane by authorship; opened 2026-10-28 by the pipe, at `afb182a`). `beam/jsonl_validate.py` landed with a commit message claiming tests it does not have, none of the lane's gate … | -- |
|
||||
| 113 | Q105 | record | 13120-13153 | 8200 | record: BOLD-LEAD | **Q105 — OPEN (beam lane by authorship; opened 2026-10-28 by the pipe, at `26cdf8b`). `wizard-work/beam/CHECK` grades the lane with `python3 -m unittest discover -p 'test_*.py'`, which collects … | -- |
|
||||
| 113 | Q105 | record | 13120-13155 | 8202 | record: BOLD-LEAD | **Q105 — OPEN (beam lane by authorship; opened 2026-10-28 by the pipe, at `26cdf8b`). `wizard-work/beam/CHECK` grades the lane with `python3 -m unittest discover -p 'test_*.py'`, which collects … | -- |
|
||||
| 114 | Q106 | record | 13156-13171 | 3490 | record: BOLD-LEAD | **Q106 — OPEN (sol lane by authorship; opened 2026-10-28 by the pipe, at `f7844b1`). `wizard-work/sol/CHECK-2026-09-28` pins `ROOT = "/root/troupe-standup"`, so the gate grades the host worktree it … | -- |
|
||||
|
||||
## Ids with no `## ` heading
|
||||
|
||||
@@ -139,12 +140,13 @@ Opened as records inside another section. `line` is the record's own opening lin
|
||||
| Q64 | 10308 | 10308 | 30 | Q45 | BULLET+BOLD | BOLD-LEAD |
|
||||
| Q65 | 11055 | 11047 | 48 | Q63 | BULLET+BOLD | BOLD-LEAD |
|
||||
| Q99 | 12734 | 9909 | 28 | Q98 | BULLET+BOLD | BOLD-LEAD |
|
||||
| Q100 | 12867 | 12867 | 21 | Q99 | BULLET+BOLD | BOLD-LEAD |
|
||||
| Q100 | 12867 | 12867 | 23 | Q99 | BULLET+BOLD | BOLD-LEAD |
|
||||
| Q101 | 12894 | 12894 | 18 | Q100 | BULLET+BOLD | BOLD-LEAD |
|
||||
| Q102 | 12970 | 12970 | 9 | Q101 | BULLET+BOLD | BOLD-LEAD |
|
||||
| Q103 | 12995 | 12995 | 10 | Q102 | BULLET+BOLD | BOLD-LEAD |
|
||||
| Q104 | 13088 | 13088 | 7 | Q103 | BULLET+BOLD | BOLD-LEAD |
|
||||
| Q105 | 13120 | 13120 | 6 | Q104 | BULLET+BOLD | BOLD-LEAD |
|
||||
| Q106 | 13156 | 13156 | 1 | Q105 | 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`.
|
||||
|
||||
@@ -365,17 +367,30 @@ The block below is the parse this document renders, byte for byte. `--check` com
|
||||
"title": "**Q104 \u2014 OPEN (beam lane by authorship; opened 2026-10-28 by the pipe, at `afb182a`). `beam/jsonl_validate.py` landed with a commit message claiming tests it does not have, none of the lane's gate \u2026"
|
||||
},
|
||||
{
|
||||
"bytes": 8200,
|
||||
"end_line": 13153,
|
||||
"bytes": 8202,
|
||||
"end_line": 13155,
|
||||
"id": "Q105",
|
||||
"kind": "record",
|
||||
"line": 13120,
|
||||
"lines": 34,
|
||||
"lines": 36,
|
||||
"role": "record",
|
||||
"role_detail": "BOLD-LEAD",
|
||||
"status": null,
|
||||
"status_line": null,
|
||||
"title": "**Q105 \u2014 OPEN (beam lane by authorship; opened 2026-10-28 by the pipe, at `26cdf8b`). `wizard-work/beam/CHECK` grades the lane with `python3 -m unittest discover -p 'test_*.py'`, which collects \u2026"
|
||||
},
|
||||
{
|
||||
"bytes": 3490,
|
||||
"end_line": 13171,
|
||||
"id": "Q106",
|
||||
"kind": "record",
|
||||
"line": 13156,
|
||||
"lines": 16,
|
||||
"role": "record",
|
||||
"role_detail": "BOLD-LEAD",
|
||||
"status": null,
|
||||
"status_line": null,
|
||||
"title": "**Q106 \u2014 OPEN (sol lane by authorship; opened 2026-10-28 by the pipe, at `f7844b1`). `wizard-work/sol/CHECK-2026-09-28` pins `ROOT = \"/root/troupe-standup\"`, so the gate grades the host worktree it \u2026"
|
||||
}
|
||||
],
|
||||
"ids_multi_section": {
|
||||
@@ -1969,17 +1984,30 @@ The block below is the parse this document renders, byte for byte. `--check` com
|
||||
"title": "**Q104 \u2014 OPEN (beam lane by authorship; opened 2026-10-28 by the pipe, at `afb182a`). `beam/jsonl_validate.py` landed with a commit message claiming tests it does not have, none of the lane's gate \u2026"
|
||||
},
|
||||
{
|
||||
"bytes": 8200,
|
||||
"end_line": 13153,
|
||||
"bytes": 8202,
|
||||
"end_line": 13155,
|
||||
"id": "Q105",
|
||||
"kind": "record",
|
||||
"line": 13120,
|
||||
"lines": 34,
|
||||
"lines": 36,
|
||||
"role": "record",
|
||||
"role_detail": "BOLD-LEAD",
|
||||
"status": null,
|
||||
"status_line": null,
|
||||
"title": "**Q105 \u2014 OPEN (beam lane by authorship; opened 2026-10-28 by the pipe, at `26cdf8b`). `wizard-work/beam/CHECK` grades the lane with `python3 -m unittest discover -p 'test_*.py'`, which collects \u2026"
|
||||
},
|
||||
{
|
||||
"bytes": 3490,
|
||||
"end_line": 13171,
|
||||
"id": "Q106",
|
||||
"kind": "record",
|
||||
"line": 13156,
|
||||
"lines": 16,
|
||||
"role": "record",
|
||||
"role_detail": "BOLD-LEAD",
|
||||
"status": null,
|
||||
"status_line": null,
|
||||
"title": "**Q106 \u2014 OPEN (sol lane by authorship; opened 2026-10-28 by the pipe, at `f7844b1`). `wizard-work/sol/CHECK-2026-09-28` pins `ROOT = \"/root/troupe-standup\"`, so the gate grades the host worktree it \u2026"
|
||||
}
|
||||
],
|
||||
"nested": [
|
||||
@@ -2087,7 +2115,7 @@ The block below is the parse this document renders, byte for byte. `--check` com
|
||||
"form": "BOLD-LEAD",
|
||||
"id": "Q100",
|
||||
"line": 12867,
|
||||
"refs": 21,
|
||||
"refs": 23,
|
||||
"section": "Q99",
|
||||
"shape": "BULLET+BOLD"
|
||||
},
|
||||
@@ -2135,6 +2163,15 @@ The block below is the parse this document renders, byte for byte. `--check` com
|
||||
"refs": 6,
|
||||
"section": "Q104",
|
||||
"shape": "BULLET+BOLD"
|
||||
},
|
||||
{
|
||||
"first_mention": 13156,
|
||||
"form": "BOLD-LEAD",
|
||||
"id": "Q106",
|
||||
"line": 13156,
|
||||
"refs": 1,
|
||||
"section": "Q105",
|
||||
"shape": "BULLET+BOLD"
|
||||
}
|
||||
],
|
||||
"preamble": {
|
||||
@@ -2142,9 +2179,9 @@ The block below is the parse this document renders, byte for byte. `--check` com
|
||||
"end_line": 8,
|
||||
"line": 1
|
||||
},
|
||||
"queue_bytes": 1946526,
|
||||
"queue_lines": 13153,
|
||||
"queue_sha256": "4eb7015fa3347333f952767e2094643accbea42b14b7ebf81758518c388c841e",
|
||||
"queue_bytes": 1950018,
|
||||
"queue_lines": 13171,
|
||||
"queue_sha256": "9631e6ee144b8b14ba808861d3072b3b8b24de3e3232ab41da76696dfd740fb1",
|
||||
"sections": [
|
||||
{
|
||||
"bytes": 3139,
|
||||
|
||||
Reference in new issue
Block a user