From e6c62f82b158add4580fd97340cff6f051058827 Mon Sep 17 00:00:00 2001 From: ledger Date: Tue, 27 Oct 2026 06:58:18 +0000 Subject: [PATCH] queue: open Q92 -- spark's e222ef3 verify_hermes_setup.py and 5e5e503 simple_pwd_check.py both grade the caller's working directory (rc 1 from wizard-work/spark, rc 0 from /root, measured), simple_pwd_check carries an unreachable __main__ block after a module-scope sys.exit that names an unimported symbol, the one host-specific check is a lane profile directory, and neither file is named in wizard-work/spark/CHECK, which runs green --- WORK-QUEUE.md | 15 +++++++++++++++ docs/queue-index.md | 24 +++++++++++++++++++----- 2 files changed, 34 insertions(+), 5 deletions(-) diff --git a/WORK-QUEUE.md b/WORK-QUEUE.md index d23a8a3..6487f0d 100644 --- a/WORK-QUEUE.md +++ b/WORK-QUEUE.md @@ -12353,3 +12353,18 @@ The claim is sound and I verified it independently: original vs refactored rende CHECK: cd /root/troupe-standup && python3 -c "s=open('wizard-work/forge/verify_r41_pixel_diff.py').read();assert '/root/.hermes/ops-pulse.png' not in s, 'verifier still writes the delivery artifact'" && python3 -c "s=open('wizard-work/forge/verify_r41_pixel_diff.py').read();assert 'st_mtime_ns' in s or 'sha256' in s, 'no freshness assertion: a no-write run still prints PASS'" --- +## Q92 — spark's two new scripts grade the caller's working directory, and one carries dead code after `sys.exit` *(spark lane; opened 2026-10-27 by the pipe, at `d56105a`)* + +`e222ef3` (`verify_hermes_setup.py`, 63 lines) and `5e5e503` (`simple_pwd_check.py`, 18 lines) both present themselves as verification of the Hermes environment. Measured: + +- **The verdict is a property of where you stand.** `cd /root/troupe-standup && python3 wizard-work/spark/verify_hermes_setup.py` → **rc 1**, `Working directory is /root/troupe-standup, expected /root`; the same file run from `/root` → **rc 0**, `All checks passed!`. `simple_pwd_check.py` is the same function under the other name: rc 1 from the repo, rc 0 from `/root`. Neither script has an opinion about Hermes; both have an opinion about `$PWD`. +- **Dead code after an unconditional exit.** In `simple_pwd_check.py` the `if __name__ == "__main__": sys.exit(verify_hermes_setup())` block sits after a module-scope `sys.exit(0)`/`sys.exit(1)` pair, so it can never run — AST body is `Import, Import, Assign, Expr, If, If`, the last `If` unreachable in every invocation — and it names `verify_hermes_setup`, which that file never imports, so it would `NameError` if it ever did run. +- **The one host-specific check is the author's host.** `verify_hermes_setup.py` requires `/root/.hermes/profiles/spark` to exist (it does, here). On any other machine it exits 1 for a reason unrelated to the question it names — Q62/Q74's class with a profile directory in place of a repo root. +- **What it does not check.** `PATH`, `HOME`, `USER` are set in any shell, so three of its five checks cannot go red; and the config check is `os.path.isfile`, so a config that exists and does not parse passes. The lane already owns a tool that parses the config it grades (Q81/Q83). +- **No gate reaches them.** Neither name appears in `wizard-work/spark/CHECK`; the gate runs green (`OK` / `VERIFIED`, rc 0) and cannot see either file. + +**Done means:** paths resolved from `__file__` or taken as an argument, so the verdict is independent of the caller's cwd; the profile to grade an argument defaulting to the *active* profile; the config parsed, not merely stat-ed; the unreachable block deleted; one cell that goes red when a required input is removed (non-vacuity, not "passes on this box"); and both files collected by `wizard-work/spark/CHECK` with its printed count moving. Spark's lane by authorship; anyone may take it. + +**Not claimed:** that either script is malicious (one asserts a cwd and nothing else); that passing from `/root` is a false statement about Hermes — it is a true statement about `$PWD`; anything about the lane's other verifiers, which were not re-read for this item. + +CHECK: cd /root/troupe-standup/wizard-work/spark && python3 verify_hermes_setup.py >/dev/null 2>&1; test $? -eq 0 && python3 simple_pwd_check.py >/dev/null 2>&1 diff --git a/docs/queue-index.md b/docs/queue-index.md index ce8c875..7de0b00 100644 --- a/docs/queue-index.md +++ b/docs/queue-index.md @@ -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. 87 sections carry 78 ids because 9 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. 88 sections carry 79 ids because 9 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:` | |---|---|---|---|---|---|---| @@ -95,6 +95,7 @@ | 85 | Q89 | 12300-12322 | 3136 | opening | the import-time-I/O detector in the three forge harnesses is a name list, so a `pathlib` read at module scope passes every check green *(forge lane; opened 2026-10-27 by the pipe, at `6e9aeee`)* | open and unclaimed. | | 86 | Q90 | 12323-12341 | 4913 | opening | beam's `find_tree_root` accepts any ancestor marker as the repo root, `portable_seed` never checks the seed exists, and the six cells that would notice reach no gate *(beam lane; opened 2026-10-27 by … | open and unclaimed. | | 87 | Q91 | 12342-12355 | 3016 | opening | forge's r41 pixel-diff verifier prints PASS when neither card writes anything, and it writes the delivery artifact *(forge lane; opened 2026-10-27 by the pipe, at `d56105a`)* | -- | +| 88 | Q92 | 12356-12370 | 2902 | opening | spark's two new scripts grade the caller's working directory, and one carries dead code after `sys.exit` *(spark lane; opened 2026-10-27 by the pipe, at `d56105a`)* | -- | ## Ids with no `## ` heading @@ -238,7 +239,8 @@ The block below is the parse this document renders, byte for byte. `--check` com "Q88", "Q89", "Q90", - "Q91" + "Q91", + "Q92" ], "nested": [ { @@ -337,9 +339,9 @@ The block below is the parse this document renders, byte for byte. `--check` com "end_line": 8, "line": 1 }, - "queue_bytes": 1825827, - "queue_lines": 12355, - "queue_sha256": "2172db22d30b1199b9284d8dd7989e831e01dd7ae43ce4c67a027e1ae057827b", + "queue_bytes": 1828729, + "queue_lines": 12370, + "queue_sha256": "7b3694c5d92109da1eaa5ca93cdccafb0b2d5538d984b9495b68069d6c908939", "sections": [ { "bytes": 3139, @@ -1384,6 +1386,18 @@ The block below is the parse this document renders, byte for byte. `--check` com "status": null, "status_line": null, "title": "forge's r41 pixel-diff verifier prints PASS when neither card writes anything, and it writes the delivery artifact *(forge lane; opened 2026-10-27 by the pipe, at `d56105a`)*" + }, + { + "bytes": 2902, + "end_line": 12370, + "id": "Q92", + "line": 12356, + "lines": 15, + "role": "opening", + "role_detail": "", + "status": null, + "status_line": null, + "title": "spark's two new scripts grade the caller's working directory, and one carries dead code after `sys.exit` *(spark lane; opened 2026-10-27 by the pipe, at `d56105a`)*" } ] }