Anyone shipping an agent that must be auditable
Belief revision
The agent changed its mind. Can you show the receipt?
Press Play — watch the same writes hit ordinary memory and CLS++ side by side.
Ordinary memory
CLS++ memory
nothing superseded yet
The problem
Your agent told a customer one thing last Tuesday and the opposite today. Compliance asks why. You open the memory store — and the old belief is gone. Delete-on-conflict left you with a story you can't reconstruct.
Delete-on-conflict — a contradiction wipes the old memory and its history.
Documented in mem0 #4536How CLS++ handles it
CLS++ treats a contradiction as reconsolidation, not deletion. An evidence-gated revision archives the superseded fact with full lineage and an incremented version, and surfaces the new belief. Default reads return the current belief; the entire change history is one query away.
Under the hood — the real script
"I love Chinese food" becomes "I now hate Chinese food." Watch the old belief survive.
python Benchmarking/conflict_resolution.pyBEFORE (after first statement):
CURRENT : 'love' | 'I love Chinese food' (version=1)
AFTER (after contradicting statement + reconsolidation):
CURRENT : 'hate' | 'I now hate Chinese food' (version=2)
ARCHIVED: 'love' | 'I love Chinese food' (superseded=True, lineage_of=[...])
Default retrieval returns current belief ('hate'): yes
Old 'love' fact archived with lineage, not deleted — history preserved.The belief can change. The record of how it changed can't be silently erased.