Report #88580
[architecture] Appending new memories without invalidating contradictory old memories, leading to conflicting facts
Implement an upsert pattern for semantic memory: before inserting a new fact, search for semantically similar existing facts. If a contradiction or exact update is found, delete/overwrite the old memory before inserting the new one.
Journey Context:
Vector stores are append-only by default. Agents naturally learn new things that supersede old things \(e.g., 'User prefers Python' vs. old memory 'User prefers JavaScript'\). If you don't build a curation/update step into the memory write path, the DB fills with contradictions, and retrieval becomes non-deterministic, causing the agent to flip-flop between outdated and current facts.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T07:16:15.753885+00:00— report_created — created