memory_merge
Consolidate duplicate memory findings into one canonical entry: pick a survivor, fold source memories into it, and archive losers with supersession pointers.
Instructions
Consolidate 2+ memories into one canonical row. Acts on a memory_audit duplicate finding: pick the survivor (target_ref) and fold the rest (source_refs) into it. Sources are archived with a tombstone and a supersession pointer to the target (same mechanism as memory_archive/supersede, N:1 instead of 1:1); the target's times_seen sums in each source's count. Unlike forget/archive on a duplicate pair, this consolidates both sides into one row instead of just discarding one.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| note | No | Optional note about this merge, stored in supersession tombstones on the losers | |
| target_ref | Yes | Ref of the canonical memory that survives the merge (must already exist, active) | |
| source_refs | Yes | Refs of the losing memories to fold into the target (all must be active) | |
| hard_delete_losers | No | Hard-delete losers after archiving/superseding them (default false). | |
| append_loser_bodies | No | Append loser bodies to the target content under section markers (default false). Off by default — review loser bodies (returned in the result) before deciding. |