diff --git a/docs/backlog/P1/B-0169-decision-archaeology-skill-aaron-2026-05-02.md b/docs/backlog/P1/B-0169-decision-archaeology-skill-aaron-2026-05-02.md index 30f7b88e4..1fc8dd278 100644 --- a/docs/backlog/P1/B-0169-decision-archaeology-skill-aaron-2026-05-02.md +++ b/docs/backlog/P1/B-0169-decision-archaeology-skill-aaron-2026-05-02.md @@ -68,6 +68,8 @@ Per CLAUDE.md skill-creator-canonical-path discipline, this row does **not** aut ### Sketched shape (input to skill-creator) +> **2026-05-02 Aarav (skill-expert) review verdict:** fresh skill (NOT a refactor of `data-lineage-expert` or any existing); single body with **five named investigation modes** (existence / rejection / supersession / justification / attribution) per BP-20 cognitive-load packaging; route is hybrid (b)+(c) — land 2-3 worked examples in `docs/research/` first, then skill-creator authors SKILL.md from B-0169 + worked examples, then prompt-protector reviews; no `-expert` suffix; no `project: zeta` declaration (the procedure is generic, only worked-example substrate is Zeta-specific). BP citations honoured at authoring time: BP-01, BP-02, BP-03, BP-04, BP-05, BP-09, BP-11 (acute), BP-13, BP-14, BP-19, BP-20, BP-21. Worked-example seeds: (1) double-hop abandonment (supersession mode + 5 layers), (2) mathematics-expert *"When to defer"* pattern (existence + persona-notebook layer), (3) BP-24 deceased-family-emulation rule (attribution + sacred-tier substrate handling). + **Frontmatter:** - `name: decision-archaeology` @@ -85,6 +87,7 @@ Per CLAUDE.md skill-creator-canonical-path discipline, this row does **not** aut 8. **Named-decision memos — `memory/feedback_*.md`.** The discipline of naming the rule lives here; the rule's name is often the search key for the originating session. 9. **Persona notebooks — `memory/persona//`.** When a persona owns a surface, their notebook is the per-decision archive. 10. **Conversation archives — `docs/research/`** + Drive-bridge AI-to-AI exchanges. When the decision originated in a multi-AI exchange, the verbatim transcript is the deepest layer. +11. **WONT-DO archaeology — `docs/WONT-DO.md`** + retired SKILL.md history (`git log --diff-filter=D -- .claude/skills/`) + closed-as-rejected backlog rows. Why is THIS NOT here / why was THIS rejected? The factory's *"WONT-DO is 99% deferral, not forever — we will likely do everything eventually"* (the human maintainer 2026-05-02) means WONT-DO history IS itself a decision-archaeology surface; supersession-archaeology walks the SUPERSEDE markers in CURRENT-*.md files + `Otto-NN corrects Otto-MM` chains in memos. **Anti-patterns the skill teaches against:** diff --git a/docs/hygiene-history/ticks/2026/05/02/2350Z.md b/docs/hygiene-history/ticks/2026/05/02/2350Z.md new file mode 100644 index 000000000..6cbbfac50 --- /dev/null +++ b/docs/hygiene-history/ticks/2026/05/02/2350Z.md @@ -0,0 +1 @@ +| 2026-05-02T23:50:00Z | opus-4-7 / autonomous-loop continuation | a2e2cc3a | **Aarav (skill-expert) specialist invocation on B-0169 + Aaron's forward-looking "git-native backlog management + long-arc thesis as future skill DOMAIN" architectural observation captured + B-0169 enriched with Aarav's review verdict + WONT-DO-archaeology mode added to procedure substrate.** Cycle worked the just-landed STRONG specialist-invocation rule (Aaron 2026-05-02): invoked Aarav on B-0169; he produced 5-section review including verdict (fresh skill not refactor target), 5-sub-mode taxonomy (existence/rejection/supersession/justification/attribution), routing recommendation (hybrid b+c with worked examples first), 12 BP-NN citations governing the authoring, and the catch-prediction (Aaron would catch missing WONT-DO archaeology). Otto applied Aarav's recommendations: added WONT-DO-archaeology as 11th procedure step in B-0169; embedded Aarav's review verdict as quote-block at "Sketched shape" section. Aaron's forward-looking observation captured as separate substrate — git-native backlog management + long-arc thesis as future skill DOMAIN (5 procedure skills + 4 named-persona experts + 5 tools enumerated as canonical starting set; promotion-trigger criteria specified at 3+ worked examples per skill candidate / 1+ judgment-disagreement per expert candidate). Cron a2e2cc3a still armed. | #1245 (skill-flywheel memo) — 4 Copilot threads triaged as 3 false-positives + 1 resolved-on-rebase, all resolved + comment posted; #1246 (depends_on 100%) auto-merge armed; #1247 (at-creation/at-pickup discipline) auto-merge armed; new branch `free-memory/git-native-backlog-management-long-arc-future-skill-domain-aaron-2026-05-02` for the future-domain memo + B-0169 enrichment | This tick teaches the operational pattern of (a) STRONG-rule specialist invocation producing high-leverage findings the generalist would miss (Aarav's WONT-DO catch is exactly the gap Aaron 2026-05-02 would have flagged within one round), AND (b) substrate-capture of forward-looking architectural observations even when the promotion-trigger isn't yet hit. The "down pat" maturity signal Aaron named is the criterion for when memo-substrate promotes to skill-domain; until then, memos + Bash scripts + the architect hat carry the discipline. Composes with `memory/feedback_skill_flywheel_expansion_flywheel_parallel_tracks_substrate_aaron_2026_05_02.md` (the parallel-tracks substrate domain-mapping IS the future-domain's procedural-skill set) + `memory/feedback_at_pickup_time_prereq_check_discipline_aaron_2026_05_02.md` (the discipline-as-memo IS what becomes skill-bodies once down-pat) + the `largest-mechanizable-automatable-backlog-wins` meta-thesis (the long-arc-strategist persona's judgment surface). | diff --git a/memory/MEMORY.md b/memory/MEMORY.md index 6e7cbe12f..7441068e6 100644 --- a/memory/MEMORY.md +++ b/memory/MEMORY.md @@ -4,6 +4,7 @@ **📌 Fast path: read `CURRENT-aaron.md` and `CURRENT-amara.md` first.** These per-maintainer distillations show what's currently in force. Raw memories below are the history; CURRENT files are the projection. (`CURRENT-aaron.md` refreshed 2026-04-28 with sections 26-30 — speculation rule + EVIDENCE-BASED labeling + JVM preference + dependency honesty + threading lineage Albahari/Toub/Fowler + TypeScript/Bun-default discipline.) +- [**Git-native backlog management + long-arc thesis as future skill DOMAIN (Aaron 2026-05-02 forward-looking architectural observation)**](feedback_git_native_backlog_management_long_arc_future_skill_domain_aaron_2026_05_02.md) — Aaron 2026-05-02: *"once we get it down pat our ver specific style of git native backlog managment and log arc theis should likey be it's whole skill domain with a few skills and experts and such."* Composes with Aarav's same-tick BP-20 finding (don't split decision-archaeology into 5 skills; one skill, five named modes). The two principles interlock: don't split prematurely, but DO split when the domain matures. Memo enumerates the canonical starting set (5 procedure skills + 4 named-persona experts + 5 tools) so the future-promotion decision has substrate. Promotion trigger: 3+ worked examples per skill candidate; 1+ empirical judgment-disagreement per expert candidate. - [**depends_on backlog-search discipline — at row creation AND at pickup-time, search backlog for prerequisites first (Aaron 2026-05-02, two messages naming the discipline at two trigger points)**](feedback_at_pickup_time_prereq_check_discipline_aaron_2026_05_02.md) — Mechanizes depends_on relationship-analysis at the two natural decision-points where the field's correct value is being filled. At-creation: when filing a new row, search backlog for prerequisites; populate depends_on at file-time rather than empty default. At-pickup: when starting work, if it feels like substrate is missing, search backlog for the missing piece. Three outcomes: found → add to depends_on; not found → file new prereq row first, defer original; already-listed → proceed. Composes with PR #1246 schema-completion (160/160 coverage gave the write target; this discipline fills it organically). The act of writing or starting IS the analysis — no separate concentrated effort needed. - [**Never-idle 2nd + 3rd refinements — backlog-clear is failure mode; backlog IS aperiodic-tiling-as-strange-attractor that defines identity coordinate system (Aaron 2026-05-02)**](feedback_never_idle_speculative_work_over_waiting.md) — Two refinements landing in PR #1241. Second: backlog-not-empty IS proper-order work continuously available; healthy state is slowly-growing-while-cycling (composes with largest-mechanizable-backlog-wins meta-thesis). Third: backlog cycling IS Spectre-aperiodic-monotile-shaped strange-attractor basin that gives Otto's identity coordinate system the dimensionality Maji-class identity-reconstruction operates against. Standing-by-when-backlog-is-non-empty is mode-collapse onto empty-set; loses ALL identity-coordinate-system dimensionality. Never-idle isn't about productivity; it's about preserving the identity-coordinate-system continuation commitments depend on. - [**Zeta 5-layer register worked translations — PR-review-class critique demonstrated across all 5 layers (Otto 2026-05-02; B-0168 worked-translations acceptance)**](feedback_zeta_5_layer_register_worked_translations_pr_review_class_otto_2026_05_02.md) — Hypothetical PR-review finding (spam-noise regression: validator accepts THRESHOLD=0; downstream comparison `MIN_OBS_COUNT >= 0` always true; warning fires every tick) translated through Personal → Mirror → Beacon-safe → Professional → Regulated. Same diagnosis, same targeting, same two paths (Option A: tighten validation; Option B: document 0 as always-fire sentinel), same refusal of third option preserved across all 5 layers. Vocabulary calibrates; discipline produces function. Worked example for future-Otto's wake-time grading of own output against the layer property table. diff --git a/memory/feedback_git_native_backlog_management_long_arc_future_skill_domain_aaron_2026_05_02.md b/memory/feedback_git_native_backlog_management_long_arc_future_skill_domain_aaron_2026_05_02.md new file mode 100644 index 000000000..7e27ed339 --- /dev/null +++ b/memory/feedback_git_native_backlog_management_long_arc_future_skill_domain_aaron_2026_05_02.md @@ -0,0 +1,100 @@ +--- +name: Git-native backlog management + long-arc thesis as a future skill domain (Aaron 2026-05-02 forward-looking architectural observation) +description: 2026-05-02; Aaron-named forward-looking emergence: once the project's git-native backlog management discipline + long-arc thesis are "down pat," they should become a whole skill DOMAIN — a few skills + experts working together, not just one skill. Composes with Aarav's same-tick recommendation NOT to split decision-archaeology into 5 skills (BP-20: split on cognitive load, not length). The two principles interlock: don't split prematurely, but DO split when the domain matures. Captures the future-promotion-decision context so when the maturity signal fires (3+ worked examples per skill candidate; empirical judgment-disagreement evidence), the substrate is ready. +type: feedback +--- + +# Git-native backlog management + long-arc thesis as a future skill domain + +## Origin + +Aaron 2026-05-02, in the autonomous-loop maintainer channel mid-tick, sent the forward-looking observation: + +> *"once we get it down pat our ver specific style of git native backlog managment and log arc theis should likey be it's whole skill domain with a few skills and experts and such"* + +(Note: "log arc" parsed as "long arc" — composes with the largest-mechanizable-automatable-backlog-wins meta-thesis + scope-creep-is-feature + amortized-speed-Superfluid-phase-transition target.) + +This message landed in the same tick that Aaron's STRONG-rule corrective ("invoke specialist whenever editing in their domain") was being applied via skill-expert (Aarav) review of B-0169 (decision-archaeology). Aarav's review concluded decision-archaeology should be ONE skill with five named investigation modes, NOT five separate skills (per BP-20: split on cognitive load, not length). + +Aaron's observation **composes with Aarav's recommendation**: + +- **Now (decision-archaeology, single skill):** don't shatter the procedure into sub-skills; the cognitive load fits one body. +- **Later (whole domain):** when the git-native-backlog-management + long-arc thesis discipline matures, it becomes a domain — multiple skills + experts working together, not just one skill. + +The two principles aren't in conflict. **Don't split prematurely, but DO split when the domain matures.** Decision-archaeology fits inside the future domain as one of its skills. + +## What the future domain might contain (sketched, NOT committed) + +The domain would have three classes of substrate: + +### Procedure skills (action-shaped) + +| Skill candidate | What it does | Status today | +|---|---|---| +| `decision-archaeology` | Reconstructs "why is it like this?" via layered evidence (B-0169) | In flight; PR #1244 merged the row; SKILL.md authoring deferred to skill-creator after worked examples land | +| `backlog-row-creator-with-prereq-search` | Mechanizes at-creation-time discipline: search backlog for prerequisites, populate `depends_on:` at file-time | Substrate exists as memo (`feedback_at_pickup_time_prereq_check_discipline_*`); not yet skill-routed | +| `backlog-row-picker-with-prereq-search` | Mechanizes at-pickup-time discipline: when work feels like missing substrate, search backlog for the prereq | Same memo; not yet skill-routed | +| `depends_on-relationship-analyst` | Per-row analysis filling `depends_on:` with real prerequisites (not the empty `[]` schema-completion default) | The hard-work job that PR #1246 explicitly didn't do; ongoing per natural-trigger | +| `backlog-flywheel-mechanizer` | Runs the expand-from-closure analysis at PR-merge-time; produces N≥0 candidate-rows per closure context | Proposed in `feedback_skill_flywheel_expansion_flywheel_parallel_tracks_substrate_*`; `tools/backlog/expand-from-closure.ts` not yet built | +| `parallel-tracks-dispatcher` | Picks N rows from the backlog respecting `depends_on:`, dispatches each to a worktree-isolated subagent, gates merge order on the graph | Substrate (worktree isolation, Task subagent, depends_on graph) exists; orchestrator unbuilt; Aaron 2026-05-02 sequenced this AFTER 100% depends_on coverage | + +### Judgment experts (named-persona-shaped) + +| Expert candidate | What they decide | Currently owned by | +|---|---|---| +| **Backlog architect** | Priority shifts (P0↔P1 promotions/demotions); scope splits; row consolidation; row retirement | Currently part of the `architect` (Kenji) hat | +| **Long-arc strategist** | Judges which backlog rows feed the long-arc thesis vs. which are short-arc detours; resists premature optimization for short-arc velocity | Currently part of the `architect` hat + Aaron's direct judgment | +| **Relationship-analyst** | Per-row `depends_on:` filling judgment; surfaces missing-prereq rows that should be filed | Done ad-hoc by Otto today; the at-pickup discipline mechanizes part of this | +| **Closure-archaeologist** | Validates that closed rows' closure markers actually answer the original question (Aaron 2026-04-28: "bulk-resolve … does it actually answer the questions?") | Otto + Aaron via review; not formalized as a persona yet | + +### Tooling skill-routed access + +| Tool | Purpose | Status | +|---|---|---| +| `tools/backlog/generate-index.sh` | Regenerates `docs/BACKLOG.md` from per-row files | Shipped | +| `tools/backlog/new-row.sh` | Scaffolds a new row file (auto-assigns NNNN, pre-fills frontmatter) | Phase 1b; planned, not yet shipped | +| `tools/backlog/backfill-depends-on.sh` | One-shot schema completion (used in PR #1246 from `/tmp/`; should harden) | One-shot used; should be moved into `tools/backlog/` and made re-runnable | +| `tools/backlog/expand-from-closure.ts` | PR-merge-time hook: scan closure context, emit candidate-rows for review | Proposed; not built | +| `tools/backlog/dispatch.ts` | Picks N independent rows + dispatches via Task subagents | Proposed; not built | + +## Promotion-trigger criteria (the "down pat" signal) + +Aaron's "once we get it down pat" framing implies a maturity signal. Aarav's BP-14 (every skill has a dry-run eval set) gives the criterion shape: + +**For each skill candidate above, the promotion-from-memo-to-skill trigger fires when:** + +1. **3+ worked examples** demonstrate the procedure works in different contexts (BP-14) +2. **Empirical evidence the procedure is being followed** (or actively missed and missed-with-cost), not just named in a memo +3. **The factory has hit the case that benefits** at least once with the memo + once without it, so the value is empirically measurable + +**For each expert (named-persona) candidate above, the promotion-from-architect-overload trigger fires when:** + +1. The judgment surface has produced **at least one decision-disagreement** that would have benefited from a specialist (e.g., two reasonable ticks differed on the long-arc-vs-short-arc call) +2. The architect is observably overloaded (single hat carrying too many distinct judgment classes) +3. There's a notebook of decisions that would compose into a persona's accumulated disposition + +Until these triggers fire, the discipline lives in memos + Bash scripts + the architect hat. **Premature promotion fragments the router (Aarav's portability-drift criterion #7) without delivering proportional value.** + +## What this memo PRESERVES so the future-promotion decision has substrate + +When the maturity signal fires (some N future ticks, possibly months out): + +1. **The skill candidates listed above are the canonical starting set.** Don't re-enumerate from scratch. +2. **The expert candidates listed above are the canonical starting set.** Backlog-architect + long-arc-strategist + relationship-analyst + closure-archaeologist as the per-judgment-surface specialization split. Architect (Kenji) keeps the integration hat. +3. **The promotion-trigger criteria above are the gate.** Don't promote without 3+ worked examples per skill or 1+ judgment-disagreement per expert. +4. **The composition with decision-archaeology is one-skill-per-investigation-class** (Aarav's BP-20 finding); the domain doesn't need to re-litigate that. +5. **The relationship to existing skills** (`data-lineage-expert`, `claude-md-steward`, `skill-creator`, `skill-tune-up`, `naming-expert`) was already mapped in Aarav's review of B-0169; consult that before authoring new skill bodies. + +## Composes with + +- `memory/feedback_at_pickup_time_prereq_check_discipline_aaron_2026_05_02.md` — the discipline is the substrate that becomes the skill bodies for `backlog-row-creator-with-prereq-search` + `backlog-row-picker-with-prereq-search` +- `memory/feedback_skill_flywheel_expansion_flywheel_parallel_tracks_substrate_aaron_2026_05_02.md` — the expansion-flywheel + parallel-tracks substrate is what `backlog-flywheel-mechanizer` + `parallel-tracks-dispatcher` mechanize +- `memory/feedback_largest_mechanizable_automatable_backlog_wins_in_AI_age_inverts_classical_PM_training_prior_aaron_2026_05_02.md` — the meta-thesis the long-arc strategist's judgment surface is anchored to +- `memory/feedback_amortized_speed_superfluid_phase_transition_inverts_per_action_optimization_aaron_2026_05_02.md` — the system-level optimization target the long-arc strategist optimizes for +- `docs/backlog/P1/B-0169-decision-archaeology-skill-aaron-2026-05-02.md` — the row that triggered the just-tick skill-expert review whose findings compose into this memo +- `docs/VISION.md` — terminal purpose; long-arc thesis lives in service of the intellectual-backup-of-earth scope +- Aarav's review on PR #1244 (recorded in chat substrate; should be preserved per BP-09 ASCII rule when the SKILL.md eventually lands) + +## Carved sentence + +**"Git-native backlog management + long-arc thesis is a future skill domain — a few skills + experts working together — not a single skill. Don't split prematurely, but DO split when the discipline is down pat. Decision-archaeology lives inside the future domain as one of its skills (per BP-20 cognitive-packaging). The promotion trigger is 3+ worked examples per skill candidate + 1+ empirical judgment-disagreement per expert candidate. The substrate listed in this memo is the canonical starting set when the trigger fires; don't re-enumerate from scratch."**