Skip to content

memory-v0.5.0

Latest

Choose a tag to compare

@KIvanow KIvanow released this 07 Jul 08:19
· 42 commits to master since this release
36f3e6c

Summary

Session summaries no longer hallucinate. Three changes address the root causes — unfaithful extraction, lossy transcript truncation, and status-blind decision recording.

What's New

Quote-grounded extraction

Every decision and problem-solved item must now carry a short verbatim quote from the transcript. A deterministic validator (whitespace/case-normalized substring match) drops any item whose quote is missing or fabricated, then strips the quotes before storage. Applied in the single CompositeModelClient.summarize funnel — every provider path is grounded.

Priority-based transcript selection

Replaces the old head+tail 8K char slice that cut the middle of long sessions (where the summarizer then invented what "must have" happened). Turns are now ranked: user turns first, assistant turns by proximity to user turns, tool lines last. Selected turns are re-emitted in original order with [...] gap markers. Tool-only fallback transcripts are never emptied.

Decision status provenance

Decisions are now {text, status} with done | proposed | rejected | open. Renders as Decision (rejected): ... in recall output. Embeds with a status prefix so vectors reflect provenance. Legacy string decisions coerce to {text, status: "done"} at parse time — no migration needed.

What's Changed

  • feat: ground session summaries in the transcript by @KIvanow in #7

Full Changelog: memory-v0.4.2...memory-v0.5.0