Memory Hygiene
Forgetting on purpose is a feature, not damage. A memory store that only grows becomes noise within a year. Keep what compounds value, summarize what doesn't, drop what's stale.
When to Use
- A memory or relation hasn't been read in 60+ days and has low recall_count.
- A cluster of similar low-importance facts has accumulated (e.g. 30 "discussed lunch with X" episodes).
- A fact is high-volume but low-distinctiveness ("user said hi").
- A fact has been superseded for long enough that the prior version is no longer informative.
Workflow
- Score retention, don't binary-keep. Importance × recency × recall_count × distinctiveness. Score below floor → candidate for action.
- Summarize before deleting. A 20-message lunch conversation collapses into one episodic memory: "Recurring lunches with Alice, mostly at Café Zinc, mostly about her startup." Keep the summary, drop the verbatim turns.
- Decay weight, don't drop edges. Lowering an edge's weight gracefully degrades retrieval ranking. Outright deletion creates phantom references in older summaries.
- Erase on user request, not on guess. GDPR / Right-to-Forget is explicit user input; agent-side hygiene is implicit decay. Don't conflate them.
- Log every consolidation. Forgetting silently is indistinguishable from a bug.
Anti-patterns
- "I'll just delete anything older than X." Loses context that compounded value (the user's first big idea, an early friendship moment).
- Summarizing twice from already-summarized inputs (lossy compression cascade).
- Dropping low-confidence facts before AutoDream has had a chance to review them.
Examples
Example 1: Episodic memory of grocery lists from 6 months ago, recall_count = 0, distinctiveness low → consolidate into one "weekly groceries, mostly Whole Foods, ~$120 average" summary; delete originals.
Example 2: A relation works_at(Alice, Acme) superseded 3 years ago, recall_count = 1 (asked once), low distinctiveness → keep, but downweight; don't delete (history still relevant for "where has Alice worked?").
1---2name: memory-hygiene3description: Memory Hygiene4---5# Memory Hygiene67Forgetting on purpose is a feature, not damage. A memory store that only grows becomes noise within a year. Keep what compounds value, summarize what doesn't, drop what's stale.89## When to Use10- A memory or relation hasn't been read in 60+ days and has low recall_count.11- A cluster of similar low-importance facts has accumulated (e.g. 30 "discussed lunch with X" episodes).12- A fact is high-volume but low-distinctiveness ("user said hi").13- A fact has been superseded for long enough that the prior version is no longer informative.1415## Workflow161. **Score retention, don't binary-keep.** Importance × recency × recall_count × distinctiveness. Score below floor → candidate for action.172. **Summarize before deleting.** A 20-message lunch conversation collapses into one episodic memory: "Recurring lunches with Alice, mostly at Café Zinc, mostly about her startup." Keep the summary, drop the verbatim turns.183. **Decay weight, don't drop edges.** Lowering an edge's weight gracefully degrades retrieval ranking. Outright deletion creates phantom references in older summaries.194. **Erase on user request, not on guess.** GDPR / Right-to-Forget is explicit user input; agent-side hygiene is implicit decay. Don't conflate them.205. **Log every consolidation.** Forgetting silently is indistinguishable from a bug.2122## Anti-patterns23- "I'll just delete anything older than X." Loses context that compounded value (the user's first big idea, an early friendship moment).24- Summarizing twice from already-summarized inputs (lossy compression cascade).25- Dropping low-confidence facts before AutoDream has had a chance to review them.2627## Examples28**Example 1:** Episodic memory of grocery lists from 6 months ago, recall_count = 0, distinctiveness low → consolidate into one "weekly groceries, mostly Whole Foods, ~$120 average" summary; delete originals.2930**Example 2:** A relation `works_at(Alice, Acme)` superseded 3 years ago, recall_count = 1 (asked once), low distinctiveness → keep, but downweight; don't delete (history still relevant for "where has Alice worked?").