Skip to content

Commit 07b050a

Browse files
committed
fix: flush surreal writer after symbol embeddings persistence
Critical bug: symbol_embeddings were being queued but not flushed before edge resolution phase, causing symbol_embeddings table to be incomplete or empty. Root cause: precompute_symbol_embeddings() and precompute_unresolved_symbol_embeddings() persist embeddings at lines 902 and 938, but no flush occurred until line 1231 (after edge resolution). Fix: Added flush_surreal_writer() call at line 979 after symbol embedding precomputation completes but before edge resolution begins. This ensures symbol embeddings are persisted to SurrealDB before being used for AI semantic matching during edge resolution. Complete flush audit: - ✅ nodes: flush at line 733 - ✅ edges: flush at line 1231 - ✅ project_metadata: flush at line 1231 - ✅ file_metadata: flush at line 1237 (fixed in previous commit) - ✅ symbol_embeddings: flush at line 979 (THIS FIX)
1 parent abd3bbe commit 07b050a

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

crates/codegraph-mcp/src/indexer.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -975,6 +975,9 @@ impl ProjectIndexer {
975975
)
976976
};
977977

978+
// Flush symbol embeddings to database before edge resolution
979+
self.flush_surreal_writer().await?;
980+
978981
let mut unresolved_edges = 0;
979982
let mut exact_matches = 0;
980983
let mut pattern_matches = 0;

0 commit comments

Comments
 (0)