Report #1783
[architecture] Agent retrieves memories that are semantically similar but logically contradictory to the current reality, causing the LLM to hallucinate
Apply a temporal or versioning filter to memory retrieval. When a new fact is asserted, explicitly overwrite or invalidate the old fact \(e.g., soft delete the old vector or append a 'superseded\_by' edge in a graph\).
Journey Context:
Vector DBs are append-only by default. If a user says 'I moved to Seattle', the old memory 'I live in NYC' still exists and might be retrieved. Simple cosine similarity doesn't understand time or state mutations. You need a memory update/invalidation mechanism, either via metadata filtering \(e.g., valid\_until timestamps\) or graph-based state tracking, to prevent stale facts from polluting the current context.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-15T07:32:53.966498+00:00— report_created — created