You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+9-15Lines changed: 9 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,24 +7,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
8
8
## [1.4.0] - 2026-04-28
9
9
10
-
### Added
11
-
12
-
- Unified memory quality gate in `src/memory-quality.ts` as the single source of truth for all memory quality rules.
13
-
- CRITICAL MEMORY RULES in compaction prompt with explicit good/bad examples.
14
-
- Auto-supersede migration `2026-04-28-quality-cleanup` that marks low-quality compaction memories as superseded on first load.
15
-
16
-
### Changed
10
+
### Memory Quality Cleanup
17
11
18
-
- Memory quality rules now apply to all memory types, not just project entries.
19
-
- Compaction prompt explicitly instructs model that most compactions should produce zero memories.
20
-
- Low-quality compaction memories (progress snapshots, implementation notes, session-internal notes) are automatically superseded during workspace memory normalization.
12
+
- Unified quality gate for compaction memory candidates and cleanup checks.
13
+
- Rewritten compaction memory prompt to reduce over-production of low-quality memories.
14
+
- Conservative one-time quality cleanup migration (`2026-04-28-quality-cleanup`) that supersedes only high-confidence garbage patterns: progress snapshots, raw errors, commit/CI snapshots, temporary status notes, active file snapshots, code/API signatures, path-heavy entries, and empty entries.
15
+
- Soft heuristic failures (`bad_feedback`, `bad_decision`) are intentionally excluded from automatic migration cleanup to protect durable declarative memories such as branding rules, API facts, release rules, and architecture decisions.
- Existing low-quality `source: "compaction"` entries will be marked as `superseded` once on first load after upgrade.
25
-
- Explicit and manual memories are never affected by quality cleanup.
26
-
- Superseded entries are retained on disk with `quality_cleanup` tags for audit purposes.
27
-
- Migration is idempotent and runs exactly once per workspace.
21
+
The cleanup migration changes matching entries to `status: "superseded"`; it does not delete the entry. If a useful memory is superseded, inspect the migration audit log and restore by changing that entry back to `status: "active"` in the workspace's `workspace-memory.json`. The migration runs once per workspace.
Copy file name to clipboardExpand all lines: README.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -174,6 +174,8 @@ It includes guards for:
174
174
175
175
The goal is to remember durable facts, not every detail.
176
176
177
+
Historical cleanup is intentionally conservative: extraction-time filtering may reject more aggressively, but one-time migration cleanup only supersedes high-confidence garbage patterns. This protects existing durable memories written in declarative style, such as "API endpoint is X" or "Product branding is Y".
0 commit comments