v0.2.2
Prose only. No executable code changed in this release, and that is a mechanically verified claim rather than an assurance: for all 156 modified modules the AST with docstrings blanked is byte-identical to v0.2.1, so no statement, import, name or string literal moved.
Changed
-
Narrative prose purged from code comments and reference documentation. This repository's own doctrine — a comment states a constraint the code cannot show, never the story of how the code got here — was not being honoured by the code itself: essay-length docstrings, obituaries for deleted subsystems and process narration had accumulated to roughly 46% of
src/. That text cost twice: every change paid upkeep on prose no test protects, and a reader (agent or human) spent most of a module's context on history instead of on the system.before after src/41,180 lines 29,946 src/comment + docstring lines~19,000 7,824 (−59%) docs/reference/6,687 lines 5,798 evals/README.md495 lines 229 Every package's
index.mdcode map is rewritten as a present-tense map. Nothing is lost that was not already recorded: history lives ingit logand indocs/decisions/, which is exactly what makes it safe to remove from the code. -
Every trace of subsystems that no longer exist is gone from code prose — the learning loop, the extraction pipeline, the retired filing backend, the read site and the canon lane. A reader grepping
src/for a name now finds only names the system actually has.
Notes for contributors
Four bodies of prose were deliberately left alone, each for a reason worth knowing before the next cleanup: tests/ (a test's prose is this project's specification, and the reproduce-first rule requires a test to say what the old behaviour was), docs/decisions/ (an ADR records a decision, so history belongs there by design), MCP tool and pydantic schema docstrings (they are contracts sent to models and clients, not commentary), and the frozen fixtures asserted byte-identical to the knowledge repo's own copies.
Two mechanical guards caught genuine over-deletion during the work — the meeting brief's date-bearing-body-link contract marker and the operator runbook's sweep line — and both were satisfied by restoring the fact, never by relaxing the check.
Verification
4,565 tests pass at 94.24% coverage against real Postgres, real MinIO and real git; make lint clean over src tests evals scripts.