Human request (2026-09-26, verbatim)
do all of those but not the Eyes one which is tomrorow
Overview
Bundle cockpit-followups, member nerves-unused-keys (siblings: gut-void-sibling-reach, start-dev-heart-gate). Epic organ-cockpit.
Member 1 — nerves-unused-keys (PyAutoNerves, feature/nerves-unused-keys)
Context: the Nerves board (scripts/board.py, 1137 lines) flags drift (workspace keys no library defines). The
human asked for the other direction: library YAML keys no library code reads.
SOURCES gains the package source dir per library (autofit/, autoarray/, …); the workflow's sparse
pattern fetches <pkg>/**/*.py too (still blob-filtered; measure the clone size).
collect() → scan_lookups(pkg_dir): regex over .py for conf.instance["a"]["b"]… chains (string
subscripts only; a non-literal subscript ends the chain as a wildcard), conf.instance.dict[...], and the
helper calls that read whole sections (visualize_config, prior_config, conf.instance.get(...) if it
exists — the agent greps autonerves/conf.py + the libraries for every accessor and lists them). Result: a
set of read key-paths and wildcard prefixes per library.
- Classification per library YAML key path (settings files only; priors exempt — looked up by class name):
used (exact path read anywhere in the stack — a key in PyAutoFit's general.yaml read by PyAutoLens counts),
section-read (a prefix of it is read wholesale / wildcarded), unused (no reference). Cross-library
reads count because autonerves merges layers.
- Render: an
unused chip on the key in the repo page, per-file counts, an index section "possibly unused
config keys" grouped by library with GitHub links; state.json gets ONE info item per library ("N possibly
unused keys") — never yellow (untrusted scan). board.json/key index carry the class.
- Tests: fixture library with the three lookup styles, a wildcard chain, a cross-library read and one
unreferenced key; existing 16 tests keep passing. README/AGENTS: the classification and its limits.
Witness: the real index lists ≥1 unused key with library + file link; a referenced fixture key is not listed; the
PR body carries the false-positive review of PyAutoFit general.yaml for the human.
Claims / branches
PyAutoNerves, PyAutoGut, PyAutoBrain all on clean main; all claimed by eyes-organ-order (disjoint files; Nerves
and Gut AGENTS.md get new sections — merge-safe), Brain also by cosmos-web-ring-greeting. Shared worktree
cockpit-followups with per-repo member branches (rename after worktree_create), parallel-claim: recorded.
Execution (Fable session)
Three issues (one per repo) → three active.md entries → worktree → three Opus subagents in parallel (different
repos), progress files + one Monitor → ship each: Heart YELLOW → ask ack once for the bundle → merge on green →
member 2: dispatch gut_board.yml; member 1: dispatch nerves_board.yml; member 3: nothing to deploy → verify →
close-out per member → then file + run workspace-config-cleanup using the unused-keys output.
Verification
- Nerves:
pytest test_autonerves -q; real collect → count of unused keys per library (report), state: ok.
- Gut:
pytest tests -q; void-plan on the real ledger shows the 8 sibling names with their repos; YAML parses.
- Brain:
pytest tests/test_heart_feed.py tests/test_policy_seams.py -q; bin/heart_feed.py against the live
feed prints the current status and exits accordingly.
- Firewall
--root <wt> OK for all three.
Original Prompt
Click to expand starting prompt
Organ cockpit: Nerves board flags config keys not in use anymore
Type: feature
Target: PyAutoNerves
Repos:
- PyAutoNerves
Difficulty: medium
Autonomy: safe
Priority: normal
Status: formalised
Consequence: glance
Witness: the board's index lists at least one unused key with its library and file link, and a deliberately referenced key in the fixture is not listed; the scan's false-positive rate on PyAutoFit general.yaml is reviewed by the human on the PR.
Review-minutes: 3
Unattended: ready
Filed: 2026-09-26
Epic: organ-cockpit
The human, on shipping the Nerves board (PyAutoNerves#172, 2026-09-26): 'build into the board a flag that a config is drifted or not in use anymore?'. The drift flag exists (workspace keys no library defines → orphan rows + yellow feed items). This prompt adds the other direction: library YAML keys that no library code reads.
- In PyAutoNerves scripts/board.py collect: scan each library's Python source (the sparse clone must therefore also fetch the package's .py files, or a second sparse pattern) for config lookups — conf.instance["a"]["b"]..., conf.instance.dict[...], prior_config / visualize_config helpers and the autoconf-era get_config patterns — and build the set of key paths the code reads, including partial reads where the code indexes a whole section. Mark each library YAML key path as used / possibly-used (section read wholesale) / unused (never referenced). Prior files are exempt (looked up dynamically by class name).
- Render: an 'unused' chip on the key, a per-file count, an index section 'possibly unused config keys' grouped by library with the GitHub link, and a state.json info item per library summarising the count (never yellow — a false positive must not colour the feed until the scan is trusted).
- Tests: hermetic fake library with three lookup styles and one unreferenced key.
Out of scope: deleting anything; workspace files (covered by the drift flag).
Witness: the board's index lists at least one unused key with its library and file link, and a deliberately referenced key in the fixture is not listed; the scan's false-positive rate on PyAutoFit general.yaml is reviewed by the human on the PR.
🤖 Generated with Claude Code
https://claude.ai/code/session_01SbKQQHRRgm2b69aT9t7771
Human request (2026-09-26, verbatim)
Overview
Bundle
cockpit-followups, member nerves-unused-keys (siblings: gut-void-sibling-reach, start-dev-heart-gate). Epic organ-cockpit.Member 1 — nerves-unused-keys (PyAutoNerves,
feature/nerves-unused-keys)Context: the Nerves board (scripts/board.py, 1137 lines) flags drift (workspace keys no library defines). The
human asked for the other direction: library YAML keys no library code reads.
SOURCESgains the package source dir per library (autofit/,autoarray/, …); the workflow's sparsepattern fetches
<pkg>/**/*.pytoo (still blob-filtered; measure the clone size).collect()→scan_lookups(pkg_dir): regex over.pyforconf.instance["a"]["b"]…chains (stringsubscripts only; a non-literal subscript ends the chain as a wildcard),
conf.instance.dict[...], and thehelper calls that read whole sections (
visualize_config,prior_config,conf.instance.get(...)if itexists — the agent greps autonerves/conf.py + the libraries for every accessor and lists them). Result: a
set of read key-paths and wildcard prefixes per library.
used(exact path read anywhere in the stack — a key in PyAutoFit's general.yaml read by PyAutoLens counts),section-read(a prefix of it is read wholesale / wildcarded),unused(no reference). Cross-libraryreads count because autonerves merges layers.
unusedchip on the key in the repo page, per-file counts, an index section "possibly unusedconfig keys" grouped by library with GitHub links;
state.jsongets ONE info item per library ("N possiblyunused keys") — never yellow (untrusted scan).
board.json/key index carry the class.unreferenced key; existing 16 tests keep passing. README/AGENTS: the classification and its limits.
Witness: the real index lists ≥1 unused key with library + file link; a referenced fixture key is not listed; the
PR body carries the false-positive review of PyAutoFit general.yaml for the human.
Claims / branches
PyAutoNerves, PyAutoGut, PyAutoBrain all on clean main; all claimed by eyes-organ-order (disjoint files; Nerves
and Gut AGENTS.md get new sections — merge-safe), Brain also by cosmos-web-ring-greeting. Shared worktree
cockpit-followupswith per-repo member branches (rename afterworktree_create),parallel-claim:recorded.Execution (Fable session)
Three issues (one per repo) → three active.md entries → worktree → three Opus subagents in parallel (different
repos), progress files + one Monitor → ship each: Heart YELLOW → ask ack once for the bundle → merge on green →
member 2: dispatch
gut_board.yml; member 1: dispatchnerves_board.yml; member 3: nothing to deploy → verify →close-out per member → then file + run
workspace-config-cleanupusing the unused-keys output.Verification
pytest test_autonerves -q; real collect → count of unused keys per library (report),state: ok.pytest tests -q; void-plan on the real ledger shows the 8 sibling names with their repos; YAML parses.pytest tests/test_heart_feed.py tests/test_policy_seams.py -q;bin/heart_feed.pyagainst the livefeed prints the current status and exits accordingly.
--root <wt>OK for all three.Original Prompt
Click to expand starting prompt
Organ cockpit: Nerves board flags config keys not in use anymore
Type: feature
Target: PyAutoNerves
Repos:
Difficulty: medium
Autonomy: safe
Priority: normal
Status: formalised
Consequence: glance
Witness: the board's index lists at least one unused key with its library and file link, and a deliberately referenced key in the fixture is not listed; the scan's false-positive rate on PyAutoFit general.yaml is reviewed by the human on the PR.
Review-minutes: 3
Unattended: ready
Filed: 2026-09-26
Epic: organ-cockpit
The human, on shipping the Nerves board (PyAutoNerves#172, 2026-09-26): 'build into the board a flag that a config is drifted or not in use anymore?'. The drift flag exists (workspace keys no library defines → orphan rows + yellow feed items). This prompt adds the other direction: library YAML keys that no library code reads.
Out of scope: deleting anything; workspace files (covered by the drift flag).
Witness: the board's index lists at least one unused key with its library and file link, and a deliberately referenced key in the fixture is not listed; the scan's false-positive rate on PyAutoFit general.yaml is reviewed by the human on the PR.
🤖 Generated with Claude Code
https://claude.ai/code/session_01SbKQQHRRgm2b69aT9t7771