v0.13.0 — Correctness & Pipeline Quality
What's new
Correctness fixes
- Evolution era deduplication —
getDecisionsInRange()used inclusive lower bound, causing same-date decisions to appear in every era. Fixed: genesis era usesdate >= from, later eras usedate > from(exclusive). Runchronicle evolution --regento regenerate. chronicle initnow generatesindex.md— readspackage.jsonfor project name/description/version; generates structured template with Key Constraints and Architecture sections.chronicle injectwarns when missing.
New checks in chronicle doctor
- Orphaned ADR detection — warns when
.lore/decisions/files are not linked fromdecisions.md - Evolution integrity — detects corruption when all eras show identical decision counts
process.logbounds — warns when log exceeds 500 lines
chronicle search now uses hybrid mode by default
- Hybrid semantic + keyword search (α=0.7) runs when
@huggingface/transformersis installed - Silently falls back to keyword search otherwise
- New
--textflag forces keyword-only mode
Bounded process.log
- Auto-truncated to 500 lines after each
chronicle processrun
Tests
223 passing (up from 209)
Breaking changes
Existing evolution.md files built with v0.12 may show duplicate decisions across eras. Run chronicle evolution --regen to fix.