Commit 4e3a05b
committed
docs: condense CLAUDE.md, migrate 124 entries to CHANGELOG.md (v0.5.292)
CLAUDE.md's "Recent Changes" section had grown to 246 KB out of 256 KB
total file size — 134 entries averaging ~1.8 KB each, despite the
section's own header saying "Keep entries to 1-2 lines max. Full
details in CHANGELOG.md." Since CLAUDE.md is loaded into every
conversation context, this was a substantial token tax with negligible
recall value (the prose was high-detail implementation notes
recoverable via `git log` or CHANGELOG.md).
Migration:
- Wrote a Python script (`/tmp/optimize_claude.py`) that scans
CLAUDE.md's `## Recent Changes` section for `- **v0.5.X** — body`
bullets, builds the set of versions already in CHANGELOG.md
(the existing 153 entries from v0.5.0 - v0.5.248), and prepends
every CLAUDE-only entry (124 of them) to CHANGELOG.md verbatim
in newest-first order, formatted as `## v0.5.X — body`.
- The 10 versions with entries in BOTH files (the gen-GC range
v0.5.234 - v0.5.242 plus v0.5.248) were skipped — CHANGELOG.md's
versions of those are typically more detailed and predate the
CLAUDE.md condensations.
- CLAUDE.md "Recent Changes" replaced with the last 20 entries,
each truncated to ≤240 chars at the first sentence boundary or
last word boundary (whichever is shorter). The
"Older entries → CHANGELOG.md." pointer at the bottom finally
does its job.
Result:
- CLAUDE.md: 253,857 → 11,905 bytes (95% reduction, 242 KB freed
from the always-loaded context budget).
- CHANGELOG.md: 396,630 → 627,674 bytes (grew by 231 KB to absorb
the migrated entries). Header line "Detailed changelog for Perry.
See CLAUDE.md for concise summaries." remains accurate.
- Total bytes across both: nearly identical (1.6 KB net gain from
the format conversion `- **v** — ` → `## v — `).
No code change; pure docs reorganization.1 parent d8bf970 commit 4e3a05b
4 files changed
Lines changed: 298 additions & 163 deletions
0 commit comments