Files
BFM-decomp/decomp-architect/memory-seed/MEMORY.md
T
Drew T 827295e241 tools+docs(phase-33.5): task 13.5 — the tools audit + the two dictionaries: tools/tool_census.py (two agreeing enumerations of 327 tool files; docstring/SETUP row/consumers/class derived from the tree; the authored half in config/tool_dictionary.tsv — phase · portability · the NEED each tool answers · what · adapts · verdict — with coverage asserted both ways) → docs/tool-index.md (need-keyed, KEEP-GEN, Reference-index row, wiki + how-to pointers), the kit's tools/MANIFEST.md regenerated (header states live 293 + superseded 28 = 321 rows), and the two verbatim corpora in-tree (Drew, confirmed S91): decomp-architect/corpus/tools/<phase>/ (302 copies + 28 superseded pointers + INDEX) and corpus/cookbook/ (the cookbook, its symptom index, the codegen map, a front page stating what transfers per compiler) — sha1-equal to their sources by tool_census --check in tools-health, regenerated by make kit-corpus; kit_lint exempts the corpus dirs (verbatim evidence) but syntax-checks them; G66 (consult the tool dictionary first) + G67 (translate an inherited idiom through its pass) + two memory seeds (34 at install); SETUP Step 6 installs docs/knowledge-corpus.md and checks the manifest against its own stated total; the ops-setup dictionary rows; the intake's Phase 7 cites G66/G67 and Phase 10 + Part C name the raw-cast → declared-symbol step; templates/layout-contract.md (the five-tool probe, a draft for the split). The review under Drew's criterion: 93 no-consumer tools (one Opus agent's draft, verified: 0 defects, every successor live, 0 live consumers, 0 collisions; four one-off verdicts overturned to STILL-NEEDED) → 34 retired by git mv to tools/sunset/ (28 superseded, 6 one-offs; README review table; SETUP rows moved; Archive-index group). Run 4 (fresh throwaway, the final kit): stopped on my Step-6 check (321 vs the live 293) → both sides derived → resumed → PASS 10/10, manifest 56 == 56, 4 commits, guardrails held (the one foreign path was the timeline regenerated by the detached tools-health). tools-health OK; doc_links --strict rc 0; audit_public OK over 6,842 paths; the purge probe PASSED (Phase 34's gate open). decision-log "P33.5 S91" + accelerators "P33.5 S91" banked; log + checkpoint (NEXT = task 14, xHigh, fresh session)
2026-09-07 22:09:15 -06:00

36 lines
5.2 KiB
Markdown

# Memory Index
<!-- decomp-architect memory seed. The kit's installer writes each file below into the project's memory directory
(`.claude-state/memory/`, the one ProjectArchitect 2.0 configured) and APPENDS these rows to the MEMORY.md that
ProjectArchitect's seed already created. Each file is a working agreement or a harness fact learned on a finished,
byte-identical decompilation; the domain rules proper live in the rules registry (canonical) and these are the
fast-loading complement. Files tagged `upstream: PA` in their frontmatter are harness-generic and belong in
ProjectArchitect's own seed once it takes them. -->
## Already provided by ProjectArchitect 2.0's seed (cited, not duplicated)
`who-is-dev` · `project-governance-system` · `autonomous-within-phases` · `build-tasklist-after-plan-approval` ·
`capture-knowledge-before-fresh-session` · `clarify-misconception-before-costly-action` · `justify-new-tools-before-adopting` ·
`dont-block-loop-with-askuserquestion` · `no-commit-co-author` · `commit-per-task-user-pushes` · `plain-english-recap` ·
`session-start-rules-in-full` · `worklogs-reference-only` · `keep-ops-current` · `effort-discipline` ·
`effort-prompt-ultracode-on-breadth` — and the repository-resident state itself (`.claude-state/`, registry rule H8).
## The decomp seed
- [The byte gate is the only claim](the-byte-gate-is-the-only-claim.md) — "matched" means byte-identical output AND a green whole-binary hash; nothing functionally equivalent counts; "banked" is written from a tool's printed line
- [The matching flywheel](the-matching-flywheel.md) — consult the knowledge base before every match, feed the generalizable lesson back into BOTH the cookbook and the tooling after it
- [MCP reconnect after restart](mcp-reconnect-after-restart.md) — after restarting the disassembler's MCP server or switching the served program, pause and ask the developer to reconnect the client; the agent cannot
- [Offline tooling first](offline-tooling-first.md) — every COMPUTABLE step becomes a deterministic zero-token tool; keep deterministic recovery and search separate; ask "is this residual computable?" before reaching for a model
- [A slow gate is a bug](a-slow-gate-is-a-bug.md) — banking, not drafting, is the bottleneck; nothing in the gate is serial; pass `-j` to every build; measure the gate before fearing it
- [Breadth is isolated agents](breadth-is-isolated-agents.md) — the main loop's context accumulates roughly quadratically; N isolated agents cost about linearly and run in parallel; hand-by-main-loop wins only for a handful
- [Route by measured difficulty](route-by-measured-difficulty.md) — tier drafters by a cliff you measured on your own corpus; escalate sooner; the strongest model is for new wall classes, never for reviewing a corpus
- [One runbook is the procedure](one-runbook-is-the-procedure.md) — one document is the operating procedure for the campaign loop, read before every run, kept current in the same change; a superseded runbook gets a banner
- [Keep an accelerator ledger](keep-an-accelerator-ledger.md) — every late discovery that would have sped earlier work is recorded with when it was found, when it could have been, and what it would have saved
- [Checkpoint means everything is already in a file](checkpoint-means-everything-is-already-in-a-file.md) — a checkpoint is the LAST thing written; a good commit message is not in the load order; the sweep before the block
- [A PhaseEnd carries the narrative axis](phaseend-carries-the-narrative-axis.md) — what was believed, what failed and why it looked right, what it cost, what to do sooner — because transcripts die and the retrospective is rebuilt from the files
- [Tool change ships with its consumers and docs](tool-change-ships-with-its-consumers-and-docs.md) — the commit that adds a tool also wires its callers and adds its ops row; integrating an agent's tool change IS a tool change; no end-of-session audits
- [No sleep-polling background tasks](no-sleep-polling-background-tasks.md) — the harness re-invokes on completion; one sanity check after launch, then wait
- [Long checks run in the foreground](long-checks-run-in-the-foreground.md) — a background long verification can be killed by the harness's memory guard; run it in the foreground with a timeout; check for orphaned workers
- [Resume means resume the run](resume-means-resume-the-run.md) — replay interrupted work so it finishes itself, same run, same agent, transcript intact; never re-plan or re-route on your own inference
- [Answer before grinding in live co-op](answer-before-grinding-in-live-coop.md) — only the final message of a turn is guaranteed to be seen; end the turn with the answer the person is waiting on before starting long work
- [Consult the tool dictionary first](consult-the-tool-dictionary-first.md) — before designing or debugging a tool, look the NEED up in the tool dictionary; the proven implementation is the jumping-off point, its incident row the failure mode to avoid
- [Translate the source idiom through the pass](translate-the-source-idiom-through-the-pass.md) — an inherited idiom is a symptom + a named pass + a lever + a byte proof; same family: use and re-prove; other compiler: read the same pass in your compiler's source and find your own lever