v0.6.4 — Hardening + Export/Import
What's new
Export/Import CLI — annal export --project X writes JSONL to stdout, annal import --project X file.jsonl reads it back. Safe data portability without touching the vector backend directly.
Bug fixes & hardening
- XSS fix: Dashboard tag pills now use
data-tagattributes + event delegation instead of inlineonclickhandlers - Thread safety:
_tag_cacheprotected withthreading.Lock; pool shutdown snapshots watchers under lock before iterating - 9x overfetch fixed: Removed store-level 3x multiplier that compounded with backend-level 3x
- delete_memory: Now returns "not found" instead of silent success on missing IDs
- Default search mode: Changed from
fulltosummary— cheaper for agents that just need a quick scan - Dead code removed:
json.loadsfallbacks,json_modalias - SSE hardening: Newline stripping prevents injection in event stream
- Dashboard: Page param validation, watcher path warnings
Stats
212 tests passing, 11 files changed, +339 −63 lines.