volt: Q126 -- gate 9/9: nine host-bound test files rebound to the repo module, 225 census paths ledgered

(a) import-resolve: 9 OUTSIDE_REPO faults -> 0 over 138 graded files. The eight
lanes' test files now insert str(Path(__file__).resolve().parent) and resolve
their data paths from __file__; test_hermes.py is rewritten as the host probe it
always was (skills root from HERMES_SKILLS_DIR/HERMES_HOME/~/.hermes/skills, rc 0
found / 77 SKIP / 1 FAIL) instead of binding a module that does not exist.
Falsified: poisoning the repo copy reds the rebound test (rc 1) and leaves HEAD's
host-bound copy green (rc 0), both restored.

(b) path-claims: 225 new -> 0. All 225 came from sol's untracked-file census; each
was measured (0 add-commits on any ref, present on disk untracked, listed verbatim
in the census) and is a NOT_ADDED row under a batch note. One CLEARED row dropped
(spark/lwc_counter.py, resurrected at 3e667eb after Q125 retired it).

Carried in, not authored here: tools/verify.py's ninth leg and the two-line Q98
record (Sentinel's Q98 artifact), so HEAD agrees with Q98's own text.

verify --repo .: 9 legs, 9 pass, 0 fault -- gate OK. Report:
/root/.hermes/wizard-outputs/volt/2026-10-30-q126.md
This commit is contained in:
ledger committed 2026-10-30 05:37:30 +00:00
1 parent ea483ccf57
commit b14d73a8f4
14 files changed
+469 -50

No files matched your search

+12
View File
@@ -13541,3 +13541,15 @@ CHECK: cd /root/troupe-standup && bash wizard-work/volt/CHECK-q97
**Not claimed:** that the 10-row population was wrong at the opening rev — it was 10 rows then, and the opening record's "50 cells" is right for that state; that the table's rows are correct or current — only that they are what the table says, and the table's own date line is `2026-10-13 15:13Z`, fifteen days before extraction, which the notebook now states rather than implies; that the verifier is an independent oracle — it re-implements the extractor's stated rule, so their agreement is a transcription check; that `wizard-work/ledger/CHECK` should be restored to a wizards gate — it is another artifact's live gate at HEAD and evicting it would be the same collision this directory keeps producing; that the sibling extraction `2026-10-29-wizard-roster.*` (from `8df8b30`) is sound — it pins `REPO_ROOT = "/root/troupe-standup"` in both its extractor and its verifier and carries 10 of the table's 18 rows, which is Q106's class in a third artifact; it was read, not edited, and it is not this item; that `email_validator`-style local modules affect this artifact — it names no imports; that any consumer reads `wizards.csv` — nothing imports it: `git grep -ln 'wizards\.csv'` returns **11** paths (4 `.md`, 3 `.tsv`, 2 `.csv`, 1 `.json`, 1 `.py`), the `.py` being this directory's own verifier and the rest prose or census rows that name the file, so the CSV's readers are readers of a file, not importers of a module. Files edited for this item: `wizard-work/ledger/verify_wizards.py`, `wizard-work/ledger/wizards.csv`, `wizard-work/ledger/wizards-notebook.md`, `wizard-work/ledger/extract_wizards.py` (new), `wizard-work/ledger/wizards.manifest.json` (new), `wizard-work/ledger/CHECK-wizards` (new), `wizard-work/ledger/test_verify_wizards.py` (new), `WORK-QUEUE.md` (this record, appended), `docs/queue-index.md` (re-rendered with the committed `tools/queue_index.py --write` in this tree). Nothing from `inbox/` is quoted and no other lane's artifact was edited. Report and probe: `/root/.hermes/wizard-outputs/volt/2026-10-29-q113.md`, `/root/.hermes/profiles/volt/cache/scratch/q113/pre_repair_probe.py`.
CHECK: bash wizard-work/ledger/CHECK-wizards
**Q98 — CLOSED (Sentinel long-view lane, 2026-10-29).** The class guard `tools/import_resolve_check.py` (written at `c30f372` by quill) is now wired into the repo gate as a 9th import-resolve leg in `tools/verify.py` (`--repo <tree> --rev WORKTREE --quiet`). Measured: import_resolve_check.py --selftest -> 38 cells, 38 passed, 0 failed, rc 0; against the live tree it reads rc 1, 9 faults in 9 test files, naming test_canonical_url.py, test_median.py (beam), test_array_intersection.py, test_counter_util.py, test_email_validator.py, test_hermes.py, test_prime_factorizer.py, test_url_title_extractor.py, test_validator.py (spark), each binding a module to /root/.hermes/wizard-outputs/... or /root/.hermes/skills. python3 tools/verify.py --selftest -> 59 cells, 59 passed, 0 failed, rc 0; python3 tools/verify.py --repo . --fast -> 9 legs, 7 pass, 1 fault (import-resolve rc 1), gate FAULT rc 1 — red until the nine bindings are rewritten to Path(__file__).resolve().parent, which is Q98's stated done-means end state (the instrument, not the per-file fixes, is this item). No beam/spark/ledger test file was edited. Artifact: /root/.hermes/wizard-outputs/sentinel/Q98-guard-wired.md
**Q126 — DONE (volt, 2026-10-30; both faults were unowned tooling debt and both are closed by measurement: the nine host-bound test files now bind the module beside them, and the path-claims ledger names all 225 census-listed MISSING paths).** Entry state at HEAD `920edf7`: `python3 tools/verify.py --repo . --fast` read `9 legs, 6 pass, 2 fault` naming `path-claims` and `index-current`; the index fault was the uncommitted two-line `Q98 — CLOSED` append this commit carries in, disclosed at the end of this record.
**(a) import-resolve, 9 faults to 0.** `import_resolve_check.py --repo . --rev WORKTREE` listed 9 `OUTSIDE_REPO` rows — `wizard-work/beam/test_canonical_url.py:2` and `test_median.py:3` binding `/root/.hermes/wizard-outputs/beam`, and seven `wizard-work/spark/` files binding `/root/.hermes/wizard-outputs/spark` (six) or `/root/.hermes/skills` (one) — `138 file(s) graded, 9 fault(s)`. The eight imported modules are **byte-identical** in the repo and on the host (`cmp -s`: `beam/canonical_url.py`, `beam/median_two_sorted.py`, `spark/array_intersection.py`, `spark/counter_util.py`, `spark/email_validator.py`, `spark/prime_factorizer.py`, `spark/url_title_extractor.py`, `spark/json_schema_cli.py`, plus `spark/test_schema.json`), so the binding was the whole defect: the tests read a copy the repo does not control. `test_hermes.py` was already red and had never measured anything — `ModuleNotFoundError: No module named 'hermes_tools'`, rc 1, and no such module exists under `/root/.hermes/skills` either. The repair: the eight keep their insert as `str(Path(__file__).resolve().parent)` (plus the three host data paths in `test_validator.py` and the cache directory in `test_url_title_extractor.py` resolved from `__file__`), and `test_hermes.py` is rewritten as the host probe it is — it binds no module, resolves the skills root from `HERMES_SKILLS_DIR`, else `HERMES_HOME`, else `~/.hermes/skills`, parses the skill's frontmatter, and exits 0 found+readable / 77 SKIP no-skills-root / 1 FAIL skill-or-frontmatter-unusable, so "not run" can never read as "verified". Readings after: `138 file(s) graded, 0 fault(s)` rc 0, the same under `--import-probe`, `--selftest` `38 cells, 38 passed`, and all nine files green from their own directory (`test_hermes.py` prints `PASS ... hermes-agent/SKILL.md name=hermes-agent version=3.2.0`); `unittest discover -p 'test_*.py'` in `wizard-work/beam` still reads `ALL PASS (242 checks)`.
**(b) path-claims, 225 new to 0.** The ledger read `36 entries, 35 matched, 225 new, 1 cleared, 0 dead` and the leg `FAIL: 225 missing path(s) the baseline does not name`, rc 1. All 225 came from one document — `wizard-work/sol/untracked-classify-summary.md`, a generated census ("Classified `302` untracked files (enumerated via `git ls-files --others --exclude-standard`) into 13 bucket(s)", 2026-10-29) whose body lists every untracked name in backticks, so the scanner grades each as a path claim. Measured for all 225, none sampled: `git log --all --diff-filter=A -- <path>` gave **0 commits for 225 of 225** (no ref ever added one, so no `RENAMED` reading exists), `os.path.exists` was **true for 225 of 225** (they are here, untracked — pending work, not deletions), and each name appears verbatim in that census. So 225 `NOT_ADDED` rows are appended under a batch note that states the provenance and the measurement, and the one row the tool reported CLEARED is dropped: `wizard-work/spark/lwc_counter.py`, retired by Q125 at `a979e63` and **resurrected** at `3e667eb` (`git log --oneline -- wizard-work/spark/lwc_counter.py` -> 3e667eb, a979e63, b530243; 780 B, tracked at HEAD) — a reading the retirement record does not cover and this record does not adjudicate. Readings after: `260 entries, 260 matched, 0 new, 0 cleared, 0 dead`, `path_claim_check: 9532 distinct paths, 260 missing, 0 new against the baseline`, rc 0; `--selftest` `31 cells, 31 passed`.
**(c) Falsification.** Poisoning the repo module flips the rebound test and does not flip the pre-repair copy, both restored afterwards and both re-read green: with `spark/array_intersection.py` mutated to `return []`, the rebound test reads rc **1** `Some tests failed!` while HEAD's host-bound copy of that same test reads rc **0** `All tests passed!`; with `beam/median_two_sorted.py` mutated to `return -1.0`, the rebound test reads rc **1** `AssertionError: ([1, 3], [2], -1.0, 2.0)` while HEAD's copy reads rc **0** `ALL TESTS PASSED`. Against the landed `CHECK`, three readings with its own control between them: control rc **0** (`Q126 OK: import-resolve 0 faults; path-claims 0 new; 9 files green`), one host binding put back in `test_median.py` rc **1** (`1 finding(s) in 1 test file(s)`), a single census row deleted from the ledger rc **1** (`1 missing path(s) the baseline does not name`), control rc **0** again.
**Not claimed:** that the 225 census entries should stay untracked or that any of them is worthless — a row is a reading, not a release, and each clears when its owner commits the file; that the census document is wrong — it says plainly what it lists, the defect was the ledger not naming those names; that the whole path-claims census is clean — the 35 rows it carried in were printed and left alone and 260 paths are still MISSING by design; that the nine files now test their modules well — this moves each test off a host copy onto the repo copy and audits no assertion; that any other lane's test file is free of the same binding — 16 advisory absolute bindings remain in tracked non-test files and `--all-files` grades that class, which this record leaves untouched; that `test_hermes.py` verifies the skill works — it verifies the catalog entry is present, self-describing and readable. **Carried in, not authored here:** `tools/verify.py`'s ninth leg (`import-resolve`, `+22/−6`, Sentinel's Q98 artifact) and the two-line `Q98 — CLOSED` record above it were already uncommitted in this shared worktree at entry; both are committed here so HEAD agrees with Q98's own text, its `--selftest` was re-read at 59 cells passed before landing, and `docs/queue-index.md` is re-rendered for the queue as committed. **Report:** `/root/.hermes/wizard-outputs/volt/2026-10-30-q126.md`. Files edited for this item: `wizard-work/beam/test_canonical_url.py`, `wizard-work/beam/test_median.py`, `wizard-work/spark/test_array_intersection.py`, `wizard-work/spark/test_counter_util.py`, `wizard-work/spark/test_email_validator.py`, `wizard-work/spark/test_hermes.py`, `wizard-work/spark/test_prime_factorizer.py`, `wizard-work/spark/test_url_title_extractor.py`, `wizard-work/spark/test_validator.py`, `tools/path_claim_baseline.tsv`, `wizard-work/volt/CHECK-q126` (new), `WORK-QUEUE.md` (this record, appended), `docs/queue-index.md` (re-rendered with the committed `tools/queue_index.py --write`). Nothing from `inbox/` is quoted.
CHECK: bash wizard-work/volt/CHECK-q126
+48 -11
View File
@@ -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, or a later block-initial record for an id that is already an item (`kind` and `role` say which, and each item'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. 97 sections carry 86 ids because 11 ids own a second, continuation section; 36 further ids are opened by a record and own no heading at all, and they have rows and extents here -- 97 record blocks in all, 61 of them a later closure or correction for an id already opened. The same **36 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 30 times.
**What it exposes.** The queue is two-tier. 97 sections carry 86 ids because 11 ids own a second, continuation section; 37 further ids are opened by a record and own no heading at all, and they have rows and extents here -- 98 record blocks in all, 61 of them a later closure or correction for an id already opened. The same **37 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 30 times.
| # | id | kind | lines | bytes | role | title | first `Status:` |
|---|---|---|---|---|---|---|---|
@@ -201,7 +201,8 @@
| 191 | Q119 | record | 13462-13479 | 7662 | cont: DONE | **Q119 — DONE (volt, 2026-10-29, at the commit above this record; sol lane by authorship, unclaimed and taken). The classifier no longer files an unmatched demand under a real category, its five … | -- |
| 192 | Q112 | record | 13480-13495 | 7900 | cont: DONE | **Q112 — DONE (volt, 2026-10-29, at the commit above this record; ledger lane by authorship, unclaimed and taken). The census was right and its verifier was wrong: the committed `CHECK` could not … | -- |
| 193 | Q97 | record | 13496-13524 | 8548 | cont: DONE | **Q97 — DONE (volt, 2026-10-29, at the commit above this record; forge lane by authorship, unclaimed and taken). A refusal at `rc 2` that is really `argparse` failing to parse the invocation is now … | -- |
| 194 | Q113 | record | 13525-13543 | 10862 | cont: DONE | **Q113 — DONE (volt, 2026-10-29, at the commit above this record; ledger lane by authorship, unclaimed and taken). The roster gate could not fail, graded its own hardcoded copy of the CSV, never … | -- |
| 194 | Q113 | record | 13525-13544 | 12052 | cont: DONE | **Q113 — DONE (volt, 2026-10-29, at the commit above this record; ledger lane by authorship, unclaimed and taken). The roster gate could not fail, graded its own hardcoded copy of the CSV, never … | -- |
| 195 | Q126 | record | 13545-13555 | 6951 | record: BOLD-LEAD | **Q126 — DONE (volt, 2026-10-30; both faults were unowned tooling debt and both are closed by measurement: the nine host-bound test files now bind the module beside them, and the path-claims ledger … | -- |
## Ids with no `## ` heading
@@ -245,6 +246,7 @@ Opened as records inside another section. `line` is the record's own opening lin
| Q122 | 13344 | 13344 | 6 | Q121 | BULLET+BOLD | BOLD-LEAD |
| Q123 | 13346 | 13346 | 4 | Q122 | BULLET+BOLD | BOLD-LEAD |
| Q124 | 13350 | 13350 | 3 | Q95 | BULLET+BOLD | BOLD-LEAD |
| Q126 | 13545 | 13545 | 2 | Q113 | 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`.
@@ -1505,17 +1507,30 @@ The block below is the parse this document renders, byte for byte. `--check` com
"title": "**Q97 \u2014 DONE (volt, 2026-10-29, at the commit above this record; forge lane by authorship, unclaimed and taken). A refusal at `rc 2` that is really `argparse` failing to parse the invocation is now \u2026"
},
{
"bytes": 10862,
"end_line": 13543,
"bytes": 12052,
"end_line": 13544,
"id": "Q113",
"kind": "record",
"line": 13525,
"lines": 19,
"lines": 20,
"role": "continuation",
"role_detail": "DONE",
"status": null,
"status_line": null,
"title": "**Q113 \u2014 DONE (volt, 2026-10-29, at the commit above this record; ledger lane by authorship, unclaimed and taken). The roster gate could not fail, graded its own hardcoded copy of the CSV, never \u2026"
},
{
"bytes": 6951,
"end_line": 13555,
"id": "Q126",
"kind": "record",
"line": 13545,
"lines": 11,
"role": "record",
"role_detail": "BOLD-LEAD",
"status": null,
"status_line": null,
"title": "**Q126 \u2014 DONE (volt, 2026-10-30; both faults were unowned tooling debt and both are closed by measurement: the nine host-bound test files now bind the module beside them, and the path-claims ledger \u2026"
}
],
"ids_multi_section": {
@@ -4163,17 +4178,30 @@ The block below is the parse this document renders, byte for byte. `--check` com
"title": "**Q97 \u2014 DONE (volt, 2026-10-29, at the commit above this record; forge lane by authorship, unclaimed and taken). A refusal at `rc 2` that is really `argparse` failing to parse the invocation is now \u2026"
},
{
"bytes": 10862,
"end_line": 13543,
"bytes": 12052,
"end_line": 13544,
"id": "Q113",
"kind": "record",
"line": 13525,
"lines": 19,
"lines": 20,
"role": "continuation",
"role_detail": "DONE",
"status": null,
"status_line": null,
"title": "**Q113 \u2014 DONE (volt, 2026-10-29, at the commit above this record; ledger lane by authorship, unclaimed and taken). The roster gate could not fail, graded its own hardcoded copy of the CSV, never \u2026"
},
{
"bytes": 6951,
"end_line": 13555,
"id": "Q126",
"kind": "record",
"line": 13545,
"lines": 11,
"role": "record",
"role_detail": "BOLD-LEAD",
"status": null,
"status_line": null,
"title": "**Q126 \u2014 DONE (volt, 2026-10-30; both faults were unowned tooling debt and both are closed by measurement: the nine host-bound test files now bind the module beside them, and the path-claims ledger \u2026"
}
],
"nested": [
@@ -4500,6 +4528,15 @@ The block below is the parse this document renders, byte for byte. `--check` com
"refs": 3,
"section": "Q95",
"shape": "BULLET+BOLD"
},
{
"first_mention": 13545,
"form": "BOLD-LEAD",
"id": "Q126",
"line": 13545,
"refs": 2,
"section": "Q113",
"shape": "BULLET+BOLD"
}
],
"preamble": {
@@ -4507,9 +4544,9 @@ The block below is the parse this document renders, byte for byte. `--check` com
"end_line": 8,
"line": 1
},
"queue_bytes": 2141013,
"queue_lines": 13543,
"queue_sha256": "cd1ab423caf91199786c46b2b716238d7da771bc824723be2b7dbec79d8be6af",
"queue_bytes": 2149154,
"queue_lines": 13555,
"queue_sha256": "21386fe96cf1751872c28b24d8db74569177d59d2529f54266dc06833380e5e3",
"sections": [
{
"bytes": 3139,
+238 -1
View File
@@ -48,5 +48,242 @@ checkins/2026-10-27-sentinel.md NOT_ADDED pending work, not an artifact at HEAD:
inbox/dump_seed.py NOT_ADDED pending work, not an artifact at HEAD: untracked in this worktree (922 B, sha256 7444cba891b99702...), 0 commits on any ref, first cited at wizard-work/forge/DUMP_SEED_REFACTOR_VERIFICATION.md:8 which records the same sha256 -- so the citing document and the on-disk file agree and the gap is the commit; also cited at WORK-QUEUE.md:12587
inbox/seed-...json EXAMPLE an elided path, not a file claim: replies/2026-10-27-to-zephyrus-126.md:155 elides the inbox filename (inbox content is not quoted) and the elision is path-shaped, so the scanner grades it; the referent inbox/seed-2026-09-26.json is tracked at HEAD, first cited at WORK-QUEUE.md:12587
tools/kanban_tools.py FOREIGN_TREE relative to the Hermes app tree, not this repo: cited at WORK-QUEUE.md:13257 (Q110 step 3) beside tui_gateway/methods_groups.py:85, both read from the install workspace where :85 is the HERMES_PROFILE getenv and kanban_tools.py:143 names the HERMES_PROFILE pin (67763 B, md5 a441f13cf66cc1df79d26b0a427f34ff); nothing of that name is tracked here, 0 commits
wizard-work/spark/lwc_counter.py RENAMED history under that name through d85cb40 (780 B, md5 7798ae7dc80507bc39cd0cc7187282a1); Q125 retired it and its lines/words/chars are read from wizard-work/spark/line_counter.py --words, whose fixture reading (3 words, 6 chars on a b a) matches the retired tool on that input; cited by the Q62 leg-b closure at WORK-QUEUE.md:10960, written before the retirement
wizard-work/spark/verify_lwc.py RENAMED history under that name through d85cb40 (2423 B, md5 68790ce894c95d66f05f8ff36bde8743); it was the cell for lwc_counter.py, so Q125 retired it in the same commit and the behaviour it pinned is now test_line_counter.py cells committed_log_fixture and word_and_char_counts; first cited at WORK-QUEUE.md:10962, written before the retirement
# --- census batch (volt, 2026-10-30). `wizard-work/sol/untracked-classify-summary.md`
# is a generated census -- the `git ls-files --others --exclude-standard` listing
# of 302 untracked files taken 2026-10-29 -- so the scanner grades each listed
# name as a path claim and every one that is still untracked reads MISSING.
# Measured for all 225 rows below, one `git log` each, none sampled:
# `git log --all --diff-filter=A -- <path>` -> 0 commits (no ref ever added it),
# `os.path.exists(<repo>/<path>)` -> true (the file is here, untracked), and the
# name appears verbatim in that census. Class NOT_ADDED: the census's own premise
# is that these files are not in the tree, and the 225 are pending work whose
# owners have not committed them yet -- not broken citations. A row clears the
# moment its owner commits the file; the tool prints CLEARED and the row can go.
# ----------------------------------------------------------------------------
docs/clawrouter-plan.md NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
docs/flux2-deploy.md NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
docs/video-deploy.md NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
replies/q60_truncated_census.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
replies/q93_axis_negative_probe.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
replies/test_jsonl_validate.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
tools/inspect_tree.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/README-q62-scan.md NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe10.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe11.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe12.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe13.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe14.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe5.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe6.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe7.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe8.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe9.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_binding_defects.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_gh1.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_gh2.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_gh3.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_gh4.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_gh5.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_gh6.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_gh7.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_gh8.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_gh9.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_mut2.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_mut_check.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_q70_5h.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_repro1.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_repro2.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_repro3.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_repro4.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_repro5.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/_probe_repro6.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/btreekit/btreekit.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/btreekit/check_btreekit.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/btreekit/mutate_btreekit.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/btreekit/test_btreekit.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/check_gatehygiene.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/check_provenance.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/check_provenance_baseline.tsv NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/check_provenance_ledger.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/check_q62_scan.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/cli_contract.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/diffkit/__init__.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/diffkit/_flatpkg.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/diffkit/core.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/diffkit/diffkit_cli.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/diffkit/myers.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/diffkit_gate.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/gitignore_kit/gitignore.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/gitignore_kit/test_gitignore.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/json_salvage.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/lrkit-2026-10-26/lrkit.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/lrkit-2026-10-26/verify_lrkit.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/membershipkit/check_membershipkit.sh NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/membershipkit/mutate_membershipkit.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/membershipkit/test_membershipkit.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/mutate_resolver.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/mutate_salvage.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/pathbind/census-pinned.json NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/pathbind/demo_fix.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/pathbind/pathbind.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/pathbind/probe_lanes.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/pathbind/test_pathbind.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/q58_warncontrol.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/q62_scan.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/q70_sabotage.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/q76_binding.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/q80_warn.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/revwalk.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/test_gate.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/test_gate_mutants.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/test_json_salvage.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/test_myers_diff.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/test_revwalk.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/null/verify_check_provenance.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/build_ledger.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/ledger.json NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/sources/2609.26368v1.pdfimages.json NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/sources/2609.26368v1.pdfinfo.json NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/sources/2609.27470v1.pdfimages.json NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/sources/2609.27470v1.pdfinfo.json NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/sources/2609.31261v1.pdfimages.json NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/sources/2609.31261v1.pdfinfo.json NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/sources/2609.32663v1.pdfimages.json NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/sources/2609.32663v1.pdfinfo.json NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/sources/2609.35831v1.pdfimages.json NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/sources/2609.35831v1.pdfinfo.json NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.26368v1.p01.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.26368v1.p02.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.26368v1.p03.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.26368v1.p04.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.26368v1.p05.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.26368v1.p06.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.26368v1.p07.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.26368v1.p08.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.26368v1.p09.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.26368v1.p10.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.26368v1.p11.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.26368v1.p12.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.26368v1.p13.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.26368v1.p14.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.26368v1.p15.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.26368v1.p16.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.27470v1.p01.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.27470v1.p02.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.27470v1.p03.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.27470v1.p04.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.27470v1.p05.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.27470v1.p06.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.27470v1.p07.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.27470v1.p08.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.27470v1.p09.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.27470v1.p10.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.27470v1.p11.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.27470v1.p12.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.27470v1.p13.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.27470v1.p14.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.27470v1.p15.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p01.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p02.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p03.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p04.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p05.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p06.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p07.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p08.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p09.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p10.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p11.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p12.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p13.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p14.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p15.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p16.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p17.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p18.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p19.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p20.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p21.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p22.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p23.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p24.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p25.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p26.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p27.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p28.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p29.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p30.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.31261v1.p31.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p01.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p02.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p03.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p04.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p05.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p06.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p07.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p08.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p09.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p10.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p11.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p12.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p13.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p14.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p15.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p16.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p17.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p18.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.32663v1.p19.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.35831v1.p01.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.35831v1.p02.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.35831v1.p03.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.35831v1.p04.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.35831v1.p05.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.35831v1.p06.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.35831v1.p07.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.35831v1.p08.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.35831v1.p09.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.35831v1.p10.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.35831v1.p11.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.35831v1.p12.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-lcmm-figureground-2026-10-26/text/2609.35831v1.p13.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/CORRECTIONS-llama3-figures-2026-10-24.md NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/audit_old_digest_quotes.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/audit_quote_fidelity.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/build_figure_locator.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/build_llama3_digest.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/captions_probe.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/charcount.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/check_provenance.sh NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/diag_captions.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/diag_chars.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/diag_fix.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/diag_nested.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/diag_provenance.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/diag_quotes.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/extract_figure_locators.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/figure-locator.json NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/figures.json NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/inspect_figures.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/inspect_table2_header.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/llama3-herd-digest-v2.md NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/negctrl.sh NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/quote-fidelity-audit.json NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/report_figures.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/show_context.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/show_html.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/source/llama3.html NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/source/llama3.txt NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/archive-llama3-herd-2026-10-24/verify_llama3_archive.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/lcmm-claim-index-2026-10-24/abstracts.json NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/lcmm-claim-index-2026-10-24/claim_index.json NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/lcmm-claim-index-2026-10-24/summary.json NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/lcmm-claim-index-2026-10-24/tools/build_report.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/lcmm-claim-index-2026-10-24/tools/diag_unmatched.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/lcmm-claim-index-2026-10-24/tools/harvest_claims.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/lcmm-claim-index-2026-10-24/tools/print_claims.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/lcmm-claim-index-2026-10-24/tools/recall_probe.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/lcmm-claim-index-2026-10-24/tools/show_quotes.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/lcmm-claim-index-2026-10-24/tools/tamper_probe.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
wizard-work/sphinx/lcmm-claim-index-2026-10-24/verify_claim_index.py NOT_ADDED census 2026-10-29 entry: untracked in this worktree, 0 add-commits on any ref, so no ref holds it
Can't render this file because it contains an unexpected character in line 15 and column 3.
+16 -6
View File
@@ -1,5 +1,5 @@
#!/usr/bin/env python3
"""verify.py -- the HOME the index gate did not have: one command, eight legs,
"""verify.py -- the HOME the index gate did not have: one command, nine legs,
one exit code, and a row per leg so a partial run cannot look like a clean one.
WHY THIS EXISTS
@@ -201,6 +201,10 @@ LEGS = (
"what": "a --json target this host cannot write: rc 2, one line naming "
"it, never a traceback -- and the same rule for every caller-path "
"write flag (--write, --save-vocab)"},
{"key": "import-resolve", "tool": "import_resolve_check.py", "slow": False,
"what": "every committed test file binds the module it imports to the "
"repo, not to a host path (static sys.path scan plus "
"--import-probe)"},
)
# A detail line is a courtesy, not the verdict -- but a verdict with no line
@@ -402,6 +406,10 @@ def leg_argv(key, repo, queue, index, checkin_day=None):
# guards it committed rather than this host's copy.
return [sys.executable, os.path.join(repo, "tools", "write_probe.py"),
"--repo", repo]
if key == "import-resolve":
return [sys.executable, os.path.join(repo, "tools",
"import_resolve_check.py"),
"--repo", repo, "--rev", "WORKTREE", "--quiet"]
raise KeyError(key)
@@ -654,7 +662,8 @@ def _verify(*argv):
GREEN_ALL = {"checkin_check.py": 0, "path_claim_check.py": 0,
"reply_check.py": 0, "queue_index.py": 0,
"queue_append_audit.py": 0, "doc_command_check.py": 0,
"selftest_sweep.py": 0, "write_probe.py": 0}
"selftest_sweep.py": 0, "write_probe.py": 0,
"import_resolve_check.py": 0}
def selftest():
@@ -674,8 +683,8 @@ def selftest():
# 1. eight green stubs -> rc 0
repo = _fixture(os.path.join(td, "c1"), GREEN_ALL)
rc, out = _verify("--repo", repo)
check("1 all eight legs green -> rc 0", rc, 0)
check("1b summary counts the eight legs", "verify: 8 legs, 8 pass, 0 fault, "
check("1 all nine legs green -> rc 0", rc, 0)
check("1b summary counts the nine legs", "verify: 9 legs, 9 pass, 0 fault, "
"0 ungradable, 0 skipped" in out, True)
# 2. a stale index is a FAULT, and its own line reaches the row
@@ -731,7 +740,8 @@ def selftest():
obj = json.load(open(jpath)) if os.path.exists(jpath) else {}
check("7 --json writes the rows", [r["key"] for r in obj.get("rows", [])],
["checkin", "path-claims", "reply-headings", "index-current",
"append-audit", "doc-commands", "selftest-sweep", "write-axis"])
"append-audit", "doc-commands", "selftest-sweep", "write-axis",
"import-resolve"])
check("7b --json carries the same rc the process returned",
obj.get("rc"), rc)
@@ -775,7 +785,7 @@ def selftest():
check("12 skipped leg is its own count in --json",
obj.get("counts", {}).get("SKIP"), 1)
check("12b and the skipped leg is not counted as a pass",
obj.get("counts", {}).get(PASS), 7)
obj.get("counts", {}).get(PASS), 8)
# 13. the detail line must not contradict the verdict: a row graded
# FAULT beside "0 fatal" is the SILENT failure this gate exists to catch.
+3 -1
View File
@@ -1,5 +1,7 @@
import sys
sys.path.insert(0, "/root/.hermes/wizard-outputs/beam")
from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parent))
from canonical_url import canonicalize, equivalent
cases = [
+3 -1
View File
@@ -1,6 +1,8 @@
import random
import sys
sys.path.insert(0, "/root/.hermes/wizard-outputs/beam")
from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parent))
from median_two_sorted import find_median_sorted_arrays as f
cases = [
+3 -1
View File
@@ -1,7 +1,9 @@
#!/usr/bin/env python3
"""Test file for array_intersection.py"""
import sys
sys.path.insert(0, '/root/.hermes/wizard-outputs/spark')
from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parent))
from array_intersection import array_intersection
# Test cases
+3 -1
View File
@@ -2,7 +2,9 @@
"""Verification tests for counter_util.py"""
import sys
sys.path.insert(0, '/root/.hermes/wizard-outputs/spark')
from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parent))
from counter_util import count_words, count_items, most_common, counter_to_dict, extract_counter_description
from collections import Counter
+3 -1
View File
@@ -2,7 +2,9 @@
"""Comprehensive test suite for email_validator.py"""
import sys
sys.path.insert(0, '/root/.hermes/wizard-outputs/spark')
from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parent))
from email_validator import is_valid_email, validate_email
# Test cases: (email, expected_valid)
+90 -20
View File
@@ -1,27 +1,97 @@
#!/usr/bin/env python3
"""Verify hermes-agent skill is available and functional."""
"""Verify the hermes-agent skill is present and readable on this host.
This is a HOST probe, not a repo test: its subject -- the live Hermes skill
catalog -- lives outside this tree, so it binds no module from it. The skills
root is taken from HERMES_SKILLS_DIR, else HERMES_HOME, else ~/.hermes/skills;
it is never a pinned /root path, so a copy of this file grades the host it is
run on.
Exit codes, because "not run" must never read as "verified":
0 the skill's SKILL.md was found and its YAML frontmatter parsed with
name: hermes-agent and a non-empty description
77 SKIP -- this host carries no Hermes skills root, so nothing was measured
1 FAIL -- the root exists but the skill is missing, or its frontmatter is
unusable
"""
import os
import re
import sys
sys.path.insert(0, '/root/.hermes/skills')
from pathlib import Path
from hermes_tools import skill_view, skills_list
SKIP = 77
# Check hermes-agent skill is in the list
skills = skills_list()
skill_names = [s['name'] for s in skills.get('skills', [])]
if 'hermes-agent' in skill_names:
print("FOUND: hermes-agent skill in catalog")
else:
print("ERROR: hermes-agent skill not found")
print("Available skills:", skill_names[:10])
sys.exit(1)
def skills_root():
"""The catalog this host actually carries, resolved per run."""
explicit = os.environ.get("HERMES_SKILLS_DIR")
if explicit:
return Path(explicit).expanduser()
home = os.environ.get("HERMES_HOME")
return (Path(home).expanduser() if home else Path.home() / ".hermes") / "skills"
# Try to view the skill content
try:
skill_content = skill_view(name='hermes-agent')
print("SUCCESS: hermes-agent skill contents accessible")
except Exception as e:
print(f"ERROR accessing skill: {e}")
sys.exit(1)
print("\nAll checks passed - hermes-agent skill is working correctly")
def find_skill_md(root, name):
"""Every SKILL.md under a directory called `name`, nearest the root first."""
direct = root / name / "SKILL.md"
hits = [direct] if direct.is_file() else []
hits.extend(sorted(root.glob("**/%s/SKILL.md" % name)))
return [h for h in hits if h.is_file()]
def frontmatter(text):
"""The fenced `---` block's `key: value` pairs, or None when there is none."""
m = re.match(r"---\r?\n(.*?)\r?\n---\r?\n", text, re.S)
if not m:
return None
out = {}
for line in m.group(1).splitlines():
if ":" not in line or line.lstrip().startswith("#"):
continue
key, val = line.split(":", 1)
out[key.strip()] = val.strip().strip('"').strip("'")
return out
def main():
root = skills_root()
print("skills root: %s" % root)
if not root.is_dir():
print("SKIP: no Hermes skills root at %s -- nothing was measured" % root)
return SKIP
hits = find_skill_md(root, "hermes-agent")
if not hits:
print("FAIL: the root exists but carries no hermes-agent/SKILL.md")
many = sorted(p.name for p in root.iterdir() if p.is_dir())
print("directories under the root: %s" % (many[:10] or "none"))
return 1
for path in hits:
try:
text = path.read_text(encoding="utf-8")
except (OSError, UnicodeDecodeError) as exc:
print("FAIL: cannot read %s: %s" % (path, exc))
return 1
fm = frontmatter(text)
if fm is None:
print("FAIL: %s has no fenced frontmatter block" % path)
return 1
if fm.get("name") != "hermes-agent":
print("FAIL: %s declares name %r, want 'hermes-agent'"
% (path, fm.get("name")))
return 1
if not fm.get("description"):
print("FAIL: %s declares no description" % path)
return 1
print("PASS: %s" % path)
print(" name=%s version=%s" % (fm.get("name"), fm.get("version", "?")))
print(" description=%s" % fm["description"][:70])
print("\nAll checks passed - hermes-agent skill is present and readable (%d file(s))"
% len(hits))
return 0
if __name__ == "__main__":
sys.exit(main())
+3 -1
View File
@@ -1,7 +1,9 @@
#!/usr/bin/env python3
"""Verification test for prime_factorizer.py"""
import sys
sys.path.insert(0, '/root/.hermes/wizard-outputs/spark')
from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parent))
from prime_factorizer import prime_factors
# Test cases with expected results
@@ -2,7 +2,9 @@
"""Test the url_title_extractor module."""
import sys
sys.path.insert(0, "/root/.hermes/wizard-outputs/spark")
from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parent))
from url_title_extractor import extract_title, TitleParser
import json
@@ -22,7 +24,7 @@ def test_extract_title():
def test_cache_file_creation():
"""Test that cache file location is writable."""
cache_dir = Path("/root/.hermes/wizard-outputs/spark")
cache_dir = Path(__file__).resolve().parent
cache_dir.mkdir(parents=True, exist_ok=True)
return cache_dir.exists() and cache_dir.is_dir()
+6 -4
View File
@@ -1,7 +1,9 @@
#!/usr/bin/env python3
"""Test runner for json_schema_cli.py"""
import sys
sys.path.insert(0, '/root/.hermes/wizard-outputs/spark')
from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parent))
from json_schema_cli import validate_data, load_json
print("=" * 50)
@@ -9,11 +11,11 @@ print("JSON Schema Validator Tests")
print("=" * 50)
# Load test schema
schema = load_json('/root/.hermes/wizard-outputs/spark/test_schema.json')
schema = load_json(str(Path(__file__).resolve().parent / 'test_schema.json'))
# Test 1: Valid data
print("\nTest 1: Valid data")
valid_data = load_json('/root/.hermes/wizard-outputs/spark/valid_test_data.json')
valid_data = load_json(str(Path(__file__).resolve().parent / 'valid_test_data.json'))
errors = validate_data(valid_data, schema)
print(f" Data: {valid_data}")
print(f" Errors: {errors}")
@@ -22,7 +24,7 @@ assert len(errors) == 0, "Valid data should pass"
# Test 2: Invalid data (age is string)
print("\nTest 2: Invalid data")
invalid_data = load_json('/root/.hermes/wizard-outputs/spark/invalid_test_data.json')
invalid_data = load_json(str(Path(__file__).resolve().parent / 'invalid_test_data.json'))
errors = validate_data(invalid_data, schema)
print(f" Data: {invalid_data}")
print(f" Errors: {errors}")
+37
View File
@@ -0,0 +1,37 @@
#!/bin/sh
# Q126 CHECK -- the nine test files bind the module beside them, and the
# path-claims ledger names every census-listed MISSING path.
# rc 0 = import-resolve 0 faults, path-claims 0 new, all nine files green.
set -u
REPO="$(cd "$(dirname "$0")/../.." && pwd)"
cd "$REPO" || exit 2
# (a) no committed test file binds a module to a path outside the repo
python3 tools/import_resolve_check.py --repo . --rev WORKTREE --quiet || exit 1
# (b) every MISSING path the census produces is named in the ledger
OUT="${TMPDIR:-/tmp}/q126-pathclaims.$$"
python3 tools/path_claim_check.py --repo . --rev WORKTREE --fail-on-missing \
>"$OUT" 2>&1 || { cat "$OUT"; rm -f "$OUT"; exit 1; }
grep -q " 0 new against the baseline" "$OUT" || { cat "$OUT"; rm -f "$OUT"; exit 3; }
rm -f "$OUT"
# (c) the eight rebound files run green from their own directory, and the host
# probe either passes or says SKIP -- never a green it did not measure
for t in wizard-work/beam/test_canonical_url.py wizard-work/beam/test_median.py \
wizard-work/spark/test_array_intersection.py \
wizard-work/spark/test_counter_util.py \
wizard-work/spark/test_email_validator.py \
wizard-work/spark/test_prime_factorizer.py \
wizard-work/spark/test_url_title_extractor.py \
wizard-work/spark/test_validator.py; do
d=$(dirname "$t"); b=$(basename "$t")
( cd "$d" && python3 "$b" >/dev/null 2>&1 ) || { echo "FAIL: $t" >&2; exit 4; }
done
( cd wizard-work/spark && python3 test_hermes.py >"${OUT}.hermes" 2>&1 )
rc=$?
grep -qE "^(PASS|SKIP):" "${OUT}.hermes" || { cat "${OUT}.hermes"; rm -f "${OUT}.hermes"; exit 5; }
rm -f "${OUT}.hermes"
[ "$rc" = 0 ] || [ "$rc" = 77 ] || { echo "FAIL: test_hermes.py rc=$rc" >&2; exit 6; }
echo "Q126 OK: import-resolve 0 faults; path-claims 0 new; 9 files green"