Skip to content

v0.4.1

Choose a tag to compare

@johncarpenter johncarpenter released this 18 May 17:53
· 3 commits to main since this release

What's Changed

SessionStart bootstrap hook

The plugin now ships source only — no committed dist/ or node_modules/. A SessionStart hook (scripts/setup.sh) runs npm ci + tsc into ${CLAUDE_PLUGIN_DATA} on first session, with hash-gated caching so subsequent starts are instant. Native modules (better-sqlite3, sqlite-vec) are compiled against the user's Node ABI at install time.

Bug fixes

  • Premature document extraction mark: store_extractions now only marks a document as fully extracted when ALL its chunks have been processed, preventing silent chunk loss in multi-batch workflows
  • Connection leaks: Added try/finally to search, get_resolution_candidates, and apply_merges to ensure conn.close() runs if async embedding calls throw
  • Multigraph edge crash: find_path now uses G.edges(u, v)[0] instead of G.edge(u, v) to safely handle parallel edges between entity pairs
  • Unused parameter: Removed dead pattern param from ingest_documents schema
  • Embedding model guard: checkEmbeddingModel() is now called at the start of embedNewChunks and embedNewMentions to prevent vector space corruption on model mismatch
  • Transaction safety: store_extractions and apply_merges now run inside explicit transactions for atomicity and ~10-100x faster batch inserts
  • package-lock.json: Regenerated to match package.json version

Full Changelog: v0.4.0...v0.4.1