Skip to content

mind: record samplers-surface-autolens-tiers shipped; file the ranker bug - #175

Merged
Jammy2211 merged 1 commit into
mainfrom
claude/automind-task-planning-8wk4ag
Aug 10, 2026
Merged

mind: record samplers-surface-autolens-tiers shipped; file the ranker bug#175
Jammy2211 merged 1 commit into
mainfrom
claude/automind-task-planning-8wk4ag

Conversation

@Jammy2211

Copy link
Copy Markdown
Collaborator

Two pieces of bookkeeping that merging #174 / PyAutoBrain#216 did not do by itself.

1. Lifecycle — the shipped task had no record

The samplers lane-tiers task shipped (PyAutoBrain#216 as 31b810e, PyAutoMind#174 as 485d1161) while its prompt was still sitting in draft/, so the ledger read not started for finished work.

Records it to complete/2026/08/samplers-surface-autolens-tiers.md and removes the draft. Written with lifecycle.py record --apply, which also refreshed complete/index.md (962 records).

One wrinkle worth noting for the next person: the prompt was folded into the record by hand, not via --prompt. That flag resolves only against active/ (lifecycle.py:726), and this task went draft/ → shipped without ever being issued, so there was no active/ file to find. The record is byte-equivalent to what --prompt would have produced.

lifecycle.py check → OK. lifecycle.py index --check → OK.

The record deliberately keeps the findings that cost real time, so they don't get rediscovered:

  • a mature-tier cell's identity comes from its run_search() declaration and not its path — six cluster/ leaves declare dataset_class="group";
  • PyAutoBrain/tests/ sits inside the tenant firewall, so a new test file must avoid naming repos (this one takes tier labels from module constants);
  • the two scope exclusions (_MULTI_START_*_BY_CELL, the autolens benchmark table) and why.

2. The ranker bug, now filed

draft/bug/pyautobrain/feature_ranker_ignores_header_keys.md — found while planning the samplers task, when the Feature Agent's top pick had to be rejected by hand against the registry.

The Intake Agent classified it feature/ at medium confidence. I re-homed it to bug/, because REFERENCE.md already states the contract it breaks:

The Intake (Conception) Agent writes these automatically … sourcing Difficulty: from the shared sizing faculty the Feature Agent also uses — so the value shown up front is the one the Feature Agent later acts on.

It doesn't. agents/conductors/feature/_feature.py mentions Difficulty once, at line 258, where it prints its own re-derived score. It reads no header key at all — which is how draft/feature/autonomy/10_scheduled_runs.md, declaring Status: blocked, Priority: low and an explicit Blocked-by: gate whose body says do not start, came back as the recommended next pick.

Sizing (small / supervised / normal) kept from the intake pass.

🤖 Generated with Claude Code

https://claude.ai/code/session_01WSCA1h6cSKMNwFmWEsxuCL


Generated by Claude Code

… bug

Two pieces of bookkeeping the merge itself did not do.

1. Lifecycle. The samplers lane-tiers task shipped (PyAutoBrain#216 as
   31b810e, PyAutoMind#174 as 485d116) but its prompt was still sitting in
   draft/, so the ledger read "not started" for finished work. Records it to
   complete/2026/08/samplers-surface-autolens-tiers.md and removes the draft.

   Written with `lifecycle.py record --apply`, which also refreshed
   complete/index.md. The prompt was folded in by hand rather than by
   `--prompt`: that flag resolves only against active/, and this task went
   draft -> shipped without ever being issued, so there was no active/ file to
   find. `lifecycle.py check` and `index --check` both OK.

   The record keeps the findings that cost real time: that a mature-tier cell's
   identity comes from its run_search() declaration and NOT its path (six
   cluster/ leaves declare dataset_class="group"), that PyAutoBrain/tests/ sits
   inside the tenant firewall so a new test must avoid naming repos, and the
   two scope exclusions, so neither gets re-litigated.

2. The ranker bug found while planning that task, now filed as
   draft/bug/pyautobrain/feature_ranker_ignores_header_keys.md.

   The Intake Agent classified it feature/ at medium confidence; re-homed to
   bug/ because REFERENCE.md already states the contract it breaks — Intake
   persists Difficulty: "so the value shown up front is the one the Feature
   Agent later acts on", and _feature.py only ever prints its own re-derived
   score. It reads no header key at all, which is how a prompt declaring
   Status: blocked, Priority: low AND an explicit Blocked-by: came back as the
   recommended next pick. Sizing kept from the intake pass.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WSCA1h6cSKMNwFmWEsxuCL
@Jammy2211
Jammy2211 merged commit 939d446 into main Aug 10, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants