forked from bchanot/claude
First end-to-end run of /prune-memory on real .claude/memory/ surfaced a broken verify script: Old: `prefix=$(basename "$f" .md | tr a-z A-Z | cut -c1-3)` derived the prefix from the filename's first 3 letters → produced DEC / LEA / BLO. Actual prefixes are BDR / LRN / BLK. The grep then matched zero entries, no MISSING/ORPHAN was ever reported, and the script printed its "OK if blank" footer regardless of real state. False clean signal. Fixed: hard-mapped filename → prefix via `declare -A PREFIX_MAP`. Verified against current registries — 14 BDR + 16 LRN + 2 BLK + 1 EVAL entries all index-consistent, no false negatives. Added EVAL prefix to the map (evals.md was missing from the loop in v1). Footer line clarified to `(blank above = OK)`. `wc -l` excludes `.original.md` backups from the output. Note: caveat in skill body said "v1 ships without baseline TDD test — STEP 2 approval gate is the safety net". First real test caught a verify bug that bypassed STEP 2 entirely. Lesson: STEP 4 is its own safety net and needs its own test. Co-Authored-By: Claude <noreply@anthropic.com>