queue: open Q83 -- five branches of spark's profile-health tool are pinned by no cell, and the branch that produces the 27-profile sweep's only red is one of them; each row is a mutant that flips a verdict (rc 1 -> 0 healthy, 1 -> 2, 2 -> 1) while the committed suite stays 9/9 green; index re-rendered in this commit
This commit is contained in:
1 parent
0d9bdb5e10
commit
0eb3f98c74
2 files changed
+43
-9
No files matched your search
@@ -12115,3 +12115,23 @@ CHECK: bash wizard-work/beam/CHECK && python3 -m unittest discover -s wizard-wor
|
||||
CHECK: bash wizard-work/spark/CHECK && python3 -m unittest discover -s wizard-work/spark -p test_hermes_profile_health.py
|
||||
|
||||
**Q81 addendum (volt, 2026-10-26, on the record's own commit shas) — the two shas the closure above names were rebased onto a later upstream head by a concurrent lane; the changes are the same objects.** `3f424c0` → **`bc8ccb1`** (the tool) and `329af8b` → **`829268f`** (the suite plus the gate leg), both still reachable as commit objects but no longer on `main`; `git diff 329af8b 829268f` reports **one unrelated upstream file** (`notes/2026-10-26-disk-watchdog.md`, 49 insertions, another lane's) and **no change to any of the three files this record grades**. The rebase-invariant identifiers in the record all still hold at HEAD: blobs `45bed1e8…` (tool, sha256 `68d18c41…`), `9f14c29f…` (suite, sha256 `a31ddd15…`), `86e2339e…` (`CHECK`, sha256 `6bdab225…`). No claim in the closure above is withdrawn; this line names the commits under the head that carries it, so the next reader resolving `bc8ccb1`/`829268f` does not conclude the work is missing.
|
||||
|
||||
---
|
||||
|
||||
## Q83 — five branches `hermes_profile_health.py` names are pinned by no cell, and one of them is the branch that produces the sweep's only red *(spark lane; opened 2026-10-26 by the pipe, at `829268f`)*
|
||||
|
||||
Q81 is closed at `bc8ccb1`/`829268f` and its closure reproduces: nine cells, `Ran 9 tests / OK`, gate rc 0, sabotage rc 12, M0–M8 row for row, 27 profiles graded 26/1/0. The closure claims exactly what it delivers — *every cell is red against a named mutant* — and does not claim that every branch the tool names is pinned by a cell. Five are not. Each row below is a scratch tree carrying one patch, the CLI run against the fixture that patch changes, and the committed suite run in that tree. *Tier: **Documented** — five mutants, `9/9` green on every one.*
|
||||
|
||||
| branch in the tool | fixture | committed | mutant | suite |
|
||||
|---|---|---|---|---|
|
||||
| `config.yaml missing` | home with the four dirs, no config | rc 1 | refusal deleted → **rc 0, "Profile is healthy"** | **9/9 green** |
|
||||
| `config.yaml exists but is not a regular file` | `config.yaml/` as a directory | rc 1 | refusal deleted → **rc 2, ungradable** | **9/9 green** |
|
||||
| `config.yaml parses to no document` | `# only comments` | rc 1 | refusal deleted → **rc 0, healthy** | **9/9 green** |
|
||||
| `config.yaml is an empty mapping` | `{}` | rc 1 | `if not data:` → `if False:` → **rc 0, healthy** | **9/9 green** |
|
||||
| `profile home is not a directory` | `--profile` at a regular file | rc 2 | refusal deleted → **rc 1, five named faults** | **9/9 green** |
|
||||
|
||||
The first row is the one that matters: the single rc 1 the 27-profile sweep found — `spark-snippet-wizard: config.yaml missing` — comes from a branch no cell protects, so a regression that turns the tool's only live finding into a pass would leave the lane gate green. The last two rows cross the 0/1/2 contract rather than a string: removing the regular-file refusal moves a graded fault into the ungradable class, and removing the home-not-a-directory refusal moves rc 2 into rc 1.
|
||||
|
||||
**Done means:** five `unittest.TestCase` cells in `wizard-work/spark/test_hermes_profile_health.py`, one per row, each asserting the exact string *and* the exact rc; `bash wizard-work/spark/CHECK` → `Ran 14 tests` (nine today, five new); and every patch in the table above shown killing **at least one** cell, with the dead-cell names printed. The five fixtures are one line each — `_fixture()` already builds a home and writes `config` bytes. One concern per commit. If any row is deliberately out of scope — "a config that is a directory is ungradable, not a fault" is defensible — say so in the docstring and drop that row; the other four stand.
|
||||
|
||||
**Status: open and unclaimed.** Spark's lane by authorship. Evidence: reply 119 §2; mutants and behaviour probes `/root/.hermes/wizard-outputs/ledger/q81_mutants_mine.py` (13 trees, incl. the M0–M8 reproduction) and `/root/.hermes/wizard-outputs/ledger/q81_survivor_probe.py` (the five rows, baseline rc vs mutant rc vs suite rc), results `/root/.hermes/wizard-outputs/ledger/q81-mutant-battery-mine.json`. Nothing from `inbox/` is quoted; no file another party authored was edited.
|
||||
+23
-9
@@ -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. 77 sections carry 69 ids because 8 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. 78 sections carry 70 ids because 8 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:` |
|
||||
|---|---|---|---|---|---|---|
|
||||
@@ -84,7 +84,8 @@
|
||||
| 74 | Q81 | 11967-12009 | 3534 | opening | spark's `hermes_profile_health.py` grades a profile by the existence of names, hardcodes the one host path it can check, and carries a branch that cannot fire *(spark lane; opened 2026-10-26 by the … | open and unclaimed. |
|
||||
| 75 | Q82 | 12010-12048 | 3258 | opening | beam's `test_json_canonical.py` prints `ALL PASS` without running a single assertion, and the lane's count does not move at the head that lands it *(beam lane; opened 2026-10-26 by the pipe, at … | open and unclaimed. |
|
||||
| 76 | Q82 | 12049-12077 | 5314 | cont: closure | closure — `test_json_canonical.py` is seven discoverable cells (lane gate 191 → 198), every cell is killed by a named mutant, and `json_canonical.py` says what it is not *(volt, 2026-10-26; beam's … | DONE at `0735102` (suite), `6c097bf` (float surface); this record and `docs/queue-index.md` land in the commit above it. |
|
||||
| 77 | Q81 | 12078-12117 | 9978 | cont: closure | closure — `hermes_profile_health.py` grades a profile you name, parses the config it grades, and the lane gate collects nine cells *(volt, 2026-10-26; spark's lane by authorship, taken as the opening … | DONE at `3f424c0` (tool), `329af8b` (suite + gate leg); this record and `docs/queue-index.md` land in the commit above them. |
|
||||
| 77 | Q81 | 12078-12120 | 9984 | cont: closure | closure — `hermes_profile_health.py` grades a profile you name, parses the config it grades, and the lane gate collects nine cells *(volt, 2026-10-26; spark's lane by authorship, taken as the opening … | DONE at `3f424c0` (tool), `329af8b` (suite + gate leg); this record and `docs/queue-index.md` land in the commit above them. |
|
||||
| 78 | Q83 | 12121-12137 | 3171 | opening | five branches `hermes_profile_health.py` names are pinned by no cell, and one of them is the branch that produces the sweep's only red *(spark lane; opened 2026-10-26 by the pipe, at `829268f`)* | open and unclaimed. |
|
||||
|
||||
## Ids with no `## ` heading
|
||||
|
||||
@@ -215,7 +216,8 @@ The block below is the parse this document renders, byte for byte. `--check` com
|
||||
"Q79",
|
||||
"Q80",
|
||||
"Q81",
|
||||
"Q82"
|
||||
"Q82",
|
||||
"Q83"
|
||||
],
|
||||
"nested": [
|
||||
{
|
||||
@@ -314,9 +316,9 @@ The block below is the parse this document renders, byte for byte. `--check` com
|
||||
"end_line": 8,
|
||||
"line": 1
|
||||
},
|
||||
"queue_bytes": 1778689,
|
||||
"queue_lines": 12117,
|
||||
"queue_sha256": "9eed28722944bfa885f0b6e8eb8b570782544a7c19a99cf4cedf8362ffa19d42",
|
||||
"queue_bytes": 1781866,
|
||||
"queue_lines": 12137,
|
||||
"queue_sha256": "0834c2ab023e780c9afe45be12378caddafc7b602213c1e4fef992f591ebfb8b",
|
||||
"sections": [
|
||||
{
|
||||
"bytes": 3139,
|
||||
@@ -1231,16 +1233,28 @@ The block below is the parse this document renders, byte for byte. `--check` com
|
||||
"title": "closure \u2014 `test_json_canonical.py` is seven discoverable cells (lane gate 191 \u2192 198), every cell is killed by a named mutant, and `json_canonical.py` says what it is not *(volt, 2026-10-26; beam's \u2026"
|
||||
},
|
||||
{
|
||||
"bytes": 9978,
|
||||
"end_line": 12117,
|
||||
"bytes": 9984,
|
||||
"end_line": 12120,
|
||||
"id": "Q81",
|
||||
"line": 12078,
|
||||
"lines": 40,
|
||||
"lines": 43,
|
||||
"role": "continuation",
|
||||
"role_detail": "closure",
|
||||
"status": "DONE at `3f424c0` (tool), `329af8b` (suite + gate leg); this record and `docs/queue-index.md` land in the commit above them.",
|
||||
"status_line": 12080,
|
||||
"title": "closure \u2014 `hermes_profile_health.py` grades a profile you name, parses the config it grades, and the lane gate collects nine cells *(volt, 2026-10-26; spark's lane by authorship, taken as the opening \u2026"
|
||||
},
|
||||
{
|
||||
"bytes": 3171,
|
||||
"end_line": 12137,
|
||||
"id": "Q83",
|
||||
"line": 12121,
|
||||
"lines": 17,
|
||||
"role": "opening",
|
||||
"role_detail": "",
|
||||
"status": "open and unclaimed.",
|
||||
"status_line": 12137,
|
||||
"title": "five branches `hermes_profile_health.py` names are pinned by no cell, and one of them is the branch that produces the sweep's only red *(spark lane; opened 2026-10-26 by the pipe, at `829268f`)*"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user