Feature/20260202 new features#1
Merged
Merged
Conversation
…ache - Introduced LocalEmbeddingsService for offline text embeddings using Transformers.js. - Implemented PersistentEmbeddingCache for caching embeddings with SQLite backend. - Added tests for embedding cache functionality, including basic operations, expiration, capacity management, and statistics. - Updated package.json to include new dependencies and paths for embeddings module. - Created utility functions for embedding generation and cache management.
…cking - Added HybridSearchEngine for combining FTS5 keyword search and vector semantic search. - Introduced a 3-layer search workflow for improved token efficiency. - Implemented token economics tracking to measure discovery and read tokens, along with savings metrics. - Created TokenEconomicsTracker to manage per-entry and session-level token metrics. - Added support for CJK languages using a trigram tokenizer. - Established a fallback to LIKE search when FTS5 is unavailable. - Updated search module index to export new functionalities.
…nce and CJK support - Replaced SqlJsDatabase with BetterDatabase in HybridSearchEngine. - Updated methods to use better-sqlite3's exec and prepare for SQL execution. - Removed sql.js type declarations and backend implementation. - Enhanced FTS5 initialization and query handling for better CJK language support. - Improved error handling and logging during database operations.
…lization tests - Added tests for cache eviction, updating existing entries, and LRU behavior in LocalEmbeddingsService. - Improved initialization tests to handle double and concurrent initialization scenarios. - Updated model ID defaults for better multilingual support. - Removed migration utility and related types to streamline codebase. - Introduced embedding generation in ProjectMemoryService initialization. - Enhanced HybridSearchEngine tests for non-trigram tokenizers and semantic search capabilities.
…sqlite3 for improved performance feat(cli): Enhance setup CLI to support MCP server configuration and additional hook events feat(memory): Implement hybrid search functionality combining FTS and vector results with score fusion
- Add shutdown() method to all hook classes (Context, SessionInit, Observation, Summarize) - Add ownsService flag to track when hook should close its service - Update handlers.test.ts with trackHook() helper and proper cleanup - Update integration.test.ts with same cleanup pattern - Update CI to run tests on all branches This fixes EBUSY errors on Windows where SQLite database files remained locked after tests because createXxxHook() creates internal MemoryHookService instances that weren't being closed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.