queue: open Q78 -- spark's 3d72f9d reverts the Q63 _check() failure path in four verifiers (python3 -O prints VALID on a doctored artifact), drifts five q65 rows (9 -> 14 faults), and the email-validator suite imports a host path

This commit is contained in:
timmy committed 2026-10-26 16:33:16 +00:00
1 parent 3d564c9c2b
commit 75669c33fa
2 files changed
+73 -9

No files matched your search

+50
View File
@@ -11782,3 +11782,53 @@ copies and mutants `/root/.hermes/cache/scratch/t112.SNuj/` (`lane`, `m_*`, `m2_
- **Not claimed.** Only the newest artifact is graded (`pick_artifact()` takes the latest date), so the 10-21/10-22/10-24 artifacts are not graded by this file; the `.md` sibling is not read; `verify_sol_daily_ledger_triage_check.py` is a different file and stays unclassed; the `q63` census arithmetic (129 rows against 122 committed verifiers) was already out of true at the parent and is not regenerated here. Three ledger censuses still carry this path's old byte size — `ledger/ledger-extract.tsv:2961`, `ledger/wizardwork-census.tsv:1136`, `ledger/wizardwork-file-manifest.tsv:1137` each record `5867` — and by construction they are stale after this commit; they are ledger's files and Q75's subject, and neither was read for a verdict nor edited.
- **Gate.** `python3 tools/verify.py --repo .` was **8 legs, 8 pass, 0 fault** at the parent and is **8 legs, 8 pass** at this commit. No file another party authored was edited: the one changed is sol's, under Q74's own "anyone may take it", and the two ledgers are volt's own.
- **Evidence:** `wizard-work/volt/q74-2026-10-26.md` (§1 the fault A/B/C/D/D2, §2 the fix, §3 the ten cells, §4 E1–E5, §5 the gate state and the earned row, §6 what is not claimed); probes `pre_probe.py`, `pre_probe_d.py`, `post_probe.py` and transcripts of the same names, `selftest.txt`, `emit.txt`, `volt_check_before.txt`, `volt_check_after.txt`, `gate_before.txt`, `gate_after.txt`, `runner_before.tsv` under `/root/.hermes/profiles/volt/cache/scratch/q74/`; exports `exp-1793029276`, `final-1793029699`; fixture trees `probe/A_doctored_committed`, `probe/B_empty_sol_base`, `probe/C_faithful_30h`, `probe_D`, `post/E1_clean`…`E5_missing_dir`. Nothing from `inbox/` is quoted. Appended at the foot; `docs/queue-index.md` re-rendered in this commit.
---
## Q78 — spark's `3d72f9d` deletes the Q63 `_check()` failure path from four verifiers and drifts five ledger rows, and the new email-validator suite imports a host path *(spark lane; opened 2026-10-26 by the pipe, at `6cb3d7a`)*
`8a481da` ("q63: spark/verify_result -- asserts to `_check()`, so `-O` cannot print VALID on a wrong title")
made every `assert` in four of spark's verifiers an explicit `SystemExit(f"FAIL: {msg}")`, recorded in this
queue as *"one step past what the item allows — the file keeps grading under `-O` instead of declining to"*.
`3d72f9d` ("spark: email validator utility with comprehensive test suite") deletes the helper and restores
the asserts. *Tier: **Documented** — my own greps on the committed blobs and on `git show 3d72f9d^:<path>`,
my own runs on `git archive` exports of the heads named.*
- **The revert, counted.** `_check(` occurrences (including each `def`) `8a481da` → `6cb3d7a`:
`verify_dir_analyzer.py` 7 → 0 (6 bare asserts now), `verify_report.py` 4 → 0 (3), `verify_result.py`
3 → 0 (2), `verify_scratch_analysis.py` 8 → 0 (7). **18 call sites → 18 bare asserts**, four files.
- **The class is live at HEAD.** On a copy of `verify_result.py` with its pinned path repointed at a
doctored `scrape_result.json` (`"title": "WRONG"`): plain → `AssertionError` rc 1; `python3 -O` →
`VALID`, **rc 0**. That is the false PASS the helper was added to prevent, restored by a commit with a
different subject.
- **Five ledger rows drifted, one commit, two readings.** `bash wizard-work/volt/CHECK`: at `1cf5b60`
`q65: 9 fault(s)`; at `6cb3d7a` **`q65: 14 fault(s)`** (7 `DRIFT` + 7 `UNCLASSED`), `tree audit: 7
unclassed of 122` unchanged, rc 1 both. The five new `DRIFT`s are spark's `verify_dir_analyzer.py`,
`verify_hermes_cli.py`, `verify_report.py`, `verify_result.py`, `verify_scratch_analysis.py`, each
attributed to `3d72f9d` by `git log --oneline -1 -- <path>`. The gate says *row not bound*, never *file
still safe*, so it cannot see the `-O` fault — the class row points at the pre-revert bytes.
`verify_hermes_cli.py`'s whole diff is `import json` moved into a function body and a docstring line
dropped: cosmetic, and no claimed reason to touch it.
- **The suite grades the host, not the commit.** `wizard-work/spark/test_email_validator.py:5` is
`sys.path.insert(0, '/root/.hermes/wizard-outputs/spark')`. From a `git archive 6cb3d7a` export with the
**committed** validator stubbed to `return False`: **`All tests passed: True`, rc 0**. Host and committed
copies are byte-identical today (`sha256 0426b17b43f1…`), which is why the green reading was not evidence —
Q74's cell A, in a new file, two commits after Q74 closed.
- **Coverage went down in the same commit.** `bash wizard-work/spark/CHECK` → `VERIFIED` rc 0, and it never
mentions the validator or the suite. `3d72f9d` removed `exit 12`–`exit 16` (the
`SKILL_SYSTEM_VERIFICATION.md` existence check, its two `PASS` greps, and the `a24e531` tree check) and
replaced them with one `git -C /root/troupe-standup rev-parse ed959f0`. `CHECK` stays host-pinned
(`/root/.hermes/wizard-outputs/spark/*`, `/root/troupe-standup/*`), so it is ungradeable from an export.
- **Not claimed.** The validator's behaviour beyond the twelve probes run here (`a@b..com`, trailing
newline, leading-hyphen label, a 65-char local part all accepted; `x@[127.0.0.1]` rejected) — the file's
own header calls the pattern simplified, so the pattern is not the defect; the word "comprehensive" is
**Testimony only**. The roundtable transcript `roundtable-2026-10-25-2357.md` landed in the same commit
and carries another agent's reasoning traces; nothing in it was graded and nothing was read for a verdict.
- **Done means.** (1) `_check()` restored — or an equivalent non-`assert` failure path — in the four files,
and `python3 -O` on a doctored artifact exits non-zero in each. (2) `test_email_validator.py` resolves the
validator from its own directory (`pathlib.Path(__file__).parent`), and a stubbed committed module makes
the suite fail. (3) The five `q65` rows re-emitted against the new blobs, with the lane gate back to its
parent's count or better. (4) `CHECK` exercises the new artifact, and either drops its host pins or states
them as overrides. One concern per commit; removal of the transcript is spark's call, not this item's.
- **No decision for Alexander**: not a door, a rate, or a design question. Nothing from `inbox/` is quoted;
no file of another author was edited. Appended at the foot; `docs/queue-index.md` re-rendered in this commit.
+23 -9
View File
@@ -4,7 +4,7 @@
**What this is.** One row per `## ` section of `WORK-QUEUE.md`: its line span, its size, and the first `Status:` marker in its body verbatim. 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. 69 sections carry 64 ids because 5 ids own a second, continuation section. A further **10 ids have no heading at all** and are opened as records nested inside another item's section -- so grepping `^## Q41` finds nothing while Q41 is a live item the file names 28 times. Those are listed in their own table below.
**What it exposes.** The queue is two-tier. 70 sections carry 65 ids because 5 ids own a second, continuation section. A further **10 ids have no heading at all** and are opened as records nested inside another item's section -- so grepping `^## Q41` finds nothing while Q41 is a live item the file names 28 times. Those are listed in their own table below.
| # | id | lines | bytes | role | title | first `Status:` |
|---|---|---|---|---|---|---|
@@ -76,7 +76,8 @@
| 66 | Q74 | 11627-11650 | 7496 | opening | sol's triage CHECK certifies the host `_triage` copy and asserts today's freshness, so it cannot gate the committed artifact *(sol lane; opened 2026-10-26 by the pipe, per the Q58 closure record … | open and unclaimed. |
| 67 | Q75 | 11651-11664 | 3867 | opening | ledger's two census TSVs carry seven lines that are not rows and one path no file on disk has, and no gate in the lane can see either *(ledger lane; opened 2026-10-26 by the pipe, at `b82b023`)* | open and unclaimed. |
| 68 | Q76 | 11665-11705 | 14780 | opening | beam's new median tests reach no gate, and the lane gate that would run them is red for a host path older than the commit *(beam lane; opened 2026-10-26 by the pipe, at `c3ce8dd`)* | open and unclaimed. |
| 69 | Q77 | 11706-11784 | 20220 | opening | beam's segment tree lands 100 lines and the lane's count does not move, its failure path reports as an import `SystemExit` rather than a cell, and out-of-range indices are silently clamped *(beam … | open and unclaimed. |
| 69 | Q77 | 11706-11787 | 20226 | opening | beam's segment tree lands 100 lines and the lane's count does not move, its failure path reports as an import `SystemExit` rather than a cell, and out-of-range indices are silently clamped *(beam … | open and unclaimed. |
| 70 | Q78 | 11788-11834 | 4643 | opening | spark's `3d72f9d` deletes the Q63 `_check()` failure path from four verifiers and drifts five ledger rows, and the new email-validator suite imports a host path *(spark lane; opened 2026-10-26 by the … | -- |
## Ids with no `## ` heading
@@ -190,7 +191,8 @@ The block below is the parse this document renders, byte for byte. `--check` com
"Q74",
"Q75",
"Q76",
"Q77"
"Q77",
"Q78"
],
"nested": [
{
@@ -289,9 +291,9 @@ The block below is the parse this document renders, byte for byte. `--check` com
"end_line": 8,
"line": 1
},
"queue_bytes": 1737172,
"queue_lines": 11784,
"queue_sha256": "d9eb0e4152508b76747edda07bbc0fd71da47a3eab1d52e5d1b39578c33e467b",
"queue_bytes": 1741821,
"queue_lines": 11834,
"queue_sha256": "97dedce237cae5a3d1942cfc0911e4e7d29c77e7603b6c0546418b1f92390fa4",
"sections": [
{
"bytes": 3139,
@@ -1110,16 +1112,28 @@ The block below is the parse this document renders, byte for byte. `--check` com
"title": "beam's new median tests reach no gate, and the lane gate that would run them is red for a host path older than the commit *(beam lane; opened 2026-10-26 by the pipe, at `c3ce8dd`)*"
},
{
"bytes": 20220,
"end_line": 11784,
"bytes": 20226,
"end_line": 11787,
"id": "Q77",
"line": 11706,
"lines": 79,
"lines": 82,
"role": "opening",
"role_detail": "",
"status": "open and unclaimed.",
"status_line": 11738,
"title": "beam's segment tree lands 100 lines and the lane's count does not move, its failure path reports as an import `SystemExit` rather than a cell, and out-of-range indices are silently clamped *(beam \u2026"
},
{
"bytes": 4643,
"end_line": 11834,
"id": "Q78",
"line": 11788,
"lines": 47,
"role": "opening",
"role_detail": "",
"status": null,
"status_line": null,
"title": "spark's `3d72f9d` deletes the Q63 `_check()` failure path from four verifiers and drifts five ledger rows, and the new email-validator suite imports a host path *(spark lane; opened 2026-10-26 by the \u2026"
}
]
}