Sleep consolidation for memory maintenance.
Runs a multi-pass consolidation cycle:
- Decay pass - remove entries below strength threshold
- Merge pass - find overlapping entries, create semantic summaries
- Conflict detection - find contradictory memories
- Schema index rebuild - update tag frequency index
- Persist results - record consolidation run
Uses Task.async_stream for CPU-bound operations.
Summary
Functions
Run a full consolidation pass for a scope.
Functions
Run a full consolidation pass for a scope.
Options
:scope_id- Required. The scope to consolidate.:decay_threshold- Minimum strength to survive (default: 0.05):merge_threshold- Text overlap threshold for merging (default: 0.35):min_cluster- Minimum entries to form a merge cluster (default: 3):dry_run- If true, don't persist changes (default: false)
Returns
{:ok, %{
decayed: non_neg_integer(),
removed: non_neg_integer(),
merged: non_neg_integer(),
semantic_created: non_neg_integer(),
conflicts_detected: non_neg_integer(),
duration_ms: non_neg_integer()
}}