Component
Core / Python SDK
Description
Summary
After upgrading OSS to v3, the extraction pipeline is single-pass ADD-only — add() no longer emits UPDATE / DELETE events. For facts representing a mutable state (e.g. current employer, current city, relationship status), this means contradictory memories accumulate over time instead of the newer fact superseding the older one.
Scenario
3 months ago, user says: "I work at Company A" → memory stored: Works at Company A.
Today, user says: "I now work at Company B" → memory stored: Works at Company B.
Both memories coexist. On a later query like "Where does the user work?", retrieval (semantic + BM25 + entity matching) can return Company A as a top-ranked candidate because the scoring signals don't incorporate recency.
Component
Core / Python SDK
Description
Summary
After upgrading OSS to v3, the extraction pipeline is single-pass ADD-only — add() no longer emits UPDATE / DELETE events. For facts representing a mutable state (e.g. current employer, current city, relationship status), this means contradictory memories accumulate over time instead of the newer fact superseding the older one.
Scenario
3 months ago, user says: "I work at Company A" → memory stored: Works at Company A.
Today, user says: "I now work at Company B" → memory stored: Works at Company B.
Both memories coexist. On a later query like "Where does the user work?", retrieval (semantic + BM25 + entity matching) can return Company A as a top-ranked candidate because the scoring signals don't incorporate recency.