Repository navigation
v0.4.3
What's Changed
Safety & Correctness Fixes
- Fix consolidation merge deleting items when supersedes edge creation fails
- Fix non-atomic delete ordering — item deleted first, orphaned chunks are benign
- Cap stdin drain loop at 100MB to prevent indefinite blocking
- Fix panic on multi-byte UTF-8 characters in chunk overlap calculation
- Fix stale FTS index — rebuild with
.replace(true)before each search - Fix consolidation TOCTOU race by reusing fetched items instead of double-fetch
- Reduce trust_bonus edge coefficient from 0.02 to 0.005 to prevent ranking collapse
- Add empty content/query validation
- Clamp RetryConfig max_attempts to minimum 1
Performance
- Add composite indexes on graph_edges
(from_id, edge_type)and(to_id, edge_type) - Cap co-access query at LIMIT 50
- Lazy AccessTracker — only opened for recall, not store/list/forget
- Guard chunk merge pass against exceeding max_chunk_size
Cleanup
- Remove dead code: -91 lines across 11 files
- Move test-only helpers behind
#[cfg(test)] - Remove unused
_filtersparam fromlist_items - Fix ChunkResult offset docstrings (byte offsets, not character positions)
- Remove CHANGELOG.md (GitHub releases serve as changelog)
- Fix CLAUDE.md database terminology (Two-Database Hybrid)
Full diff: v0.4.2...v0.4.3