Skip to content

v0.9.0

Choose a tag to compare

@exomem-release-bot exomem-release-bot released this 05 Jul 15:55
7230726

0.9.0 (2026-07-05)

Features

  • log: size-triggered log.md rotation into _archive/logs/ (a20caa0)
  • vecstore: numpy is the default vector backend; sqlite-vec becomes explicit opt-in (OpenSpec: make-sqlite-vec-opt-in) (#128) (ee5e744)

Bug Fixes

  • ci: regenerate stale capabilities doc; generator writes LF (ade69c6)
  • freshness: canonicalize event-path registry keys — Windows 8.3 aliases dropped live notes from event-maintained indexes (#129) (5f29525)
  • indexes: excluded scan dirs stay excluded on the incremental paths (dca70d5)
  • PyPI SETUP-LOCAL link + hooks recognise the renamed exomem tools (#118) (00c00d2)
  • scripts: install-service no-UAC grant failed silently while claiming success (b672efa)
  • writers: reuse the shared freshness-checked WikilinkResolver instead of rebuilding per write (8459def)

Performance

  • claims: key the claim cache on the shared write-generation token (#127) (a04bcf7)
  • embeddings: key the matrix caches on a write generation, not the WAL-checkpoint mtime (#125) (07e23cf)
  • embeddings: numpy-lite — the matrix cache holds no chunk text (557dcf9)
  • freshness: reconcile dispatches the drift delta through the event fan-out (#124) (ecca095)
  • lexstore: heal from the freshness registry, not a filesystem walk (#122) (5b887e5)
  • lexstore: incremental heal — patch only drifted rows, not a full O(corpus) rebuild (#121) (5415c3d)
  • lexstore: route the _walk_matches_rows verify path through the registry too (#123) (d579df0)
  • note: overlap the two corpus-aware passes; add suggestions= knob (default ON) (eef4523)
  • yaml: parse frontmatter via libyaml CSafeLoader (measured 6.9x) (e3909ab)