diff --git a/src/iai_mcp/qdrant_store.py b/src/iai_mcp/qdrant_store.py index 1cc21da..ec6222d 100644 --- a/src/iai_mcp/qdrant_store.py +++ b/src/iai_mcp/qdrant_store.py @@ -644,7 +644,6 @@ class QdrantStore: offset=offset, scroll_filter=table_filter, with_payload=True, - with_vectors=True, ) all_points.extend(points) if next_offset is None: diff --git a/src/iai_mcp/sleep.py b/src/iai_mcp/sleep.py index f2d9b1c..e3e6c5b 100644 --- a/src/iai_mcp/sleep.py +++ b/src/iai_mcp/sleep.py @@ -296,22 +296,16 @@ def run_light_consolidation( def _build_hebbian_clusters(store: MemoryStore) -> list[list[UUID]]: - """Find connected components in the hebbian+temporal_next edge graph - with size >= CLUSTER_MIN_SIZE. - - Hebbian edges capture semantic similarity (dedup/reinforce); - temporal_next edges capture sequential proximity (same-session inserts - within 5 minutes). Both are valid signals for CLS clustering. - """ + """Find connected components in the hebbian edge graph with size >= CLUSTER_MIN_SIZE.""" edges_df = store.db.open_table(EDGES_TABLE).to_pandas() if edges_df.empty: return [] - relevant = edges_df[edges_df["edge_type"].isin(("hebbian", "temporal_next"))] - if relevant.empty: + hebbian = edges_df[edges_df["edge_type"] == "hebbian"] + if hebbian.empty: return [] adj: dict[UUID, set[UUID]] = {} - for _, row in relevant.iterrows(): + for _, row in hebbian.iterrows(): src = UUID(row["src"]) dst = UUID(row["dst"]) adj.setdefault(src, set()).add(dst)