Description
memory_search returns empty results for broad/vague queries, even with threshold=0, despite entities having valid 384-dimensional embeddings and correctly configured HNSW vector indexes.
Update (after further testing): Search works correctly for focused, semantically meaningful queries. The issue is specific to broad meta-queries that don't correspond to any single entity's semantic content.
Steps to Reproduce
# ✅ WORKS — focused queries
memory_search(query="Rust", memory_types=["entities"], threshold=0.3)
# Returns: {"entities": [{"name": "Rust", "type": "OBJECT", ...}]}
memory_search(query="Greengrass deployment", memory_types=["entities", "preferences"], threshold=0.3)
# Returns: {"entities": [...], "preferences": [...]} — correct results
# ❌ FAILS — broad meta-queries
memory_search(query="all entities technologies devices decisions architecture", memory_types=["entities"], threshold=0)
# Returns: {"entities": []} — empty even at threshold=0
# ✅ WORKS — same broad query via direct Neo4j vector search
# CALL db.index.vector.queryNodes('entity_embedding_idx', 5, <query_embedding>)
# Returns 5 results with reasonable similarity scores
Environment
- Neo4j 5.26.4
- Embedding model:
all-MiniLM-L6-v2 (sentence-transformers, 384 dimensions)
- All 5 vector indexes: ONLINE, 384d, cosine similarity
- 28 entities, all with valid 384d embeddings
Analysis
The vector indexes and stored embeddings are healthy (verified via direct Cypher). The issue is in the Python search pipeline — possible causes:
- Embedding generation fails silently for long/vague queries — the embedder returns null/zero vector, causing the vector search to return nothing
- Query embedding produces vectors outside the similarity space of stored entity embeddings
- Result filtering after vector search removes valid results
Impact
Core semantic search works for meaningful queries. This is an edge case affecting broad "give me everything" style queries, not a complete search failure. Severity: MEDIUM.
Description
memory_searchreturns empty results for broad/vague queries, even withthreshold=0, despite entities having valid 384-dimensional embeddings and correctly configured HNSW vector indexes.Update (after further testing): Search works correctly for focused, semantically meaningful queries. The issue is specific to broad meta-queries that don't correspond to any single entity's semantic content.
Steps to Reproduce
Environment
all-MiniLM-L6-v2(sentence-transformers, 384 dimensions)Analysis
The vector indexes and stored embeddings are healthy (verified via direct Cypher). The issue is in the Python search pipeline — possible causes:
Impact
Core semantic search works for meaningful queries. This is an edge case affecting broad "give me everything" style queries, not a complete search failure. Severity: MEDIUM.