Repository navigation
SuperLocalMemory 4.2.2 — Recall never refuses answers it has after a model change, and "What am I working on?" answers from your work
·
125 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
A fix release. Upgrading never moves or deletes memory. Text stays on the model it uses today.
Fixes
- Moving text to the newer memory engine could make recall refuse answers it had.
Recall decides "this is in your memory" with a check fitted on one text model
(nomic). After "Upgrade memory engine" (the Settings card, orslm embedder upgrade)
moved text to EmbeddingGemma 2, that check scored correct memories far
below its bar, and recall said "That isn't in SuperLocalMemory" to questions it
had answered before. The check is now chosen by the text model in use, and
SuperLocalMemory no longer moves text to a model the check was not fitted for,
whichever way it is asked (the Settings card, the embedding picker, the config file,
the CLI or MCP); onlyslm embedder switch --forcedoes. Measured on the release harness (a synthetic store): with the old check, EmbeddingGemma 2 refused all 203 real questions. A check fitted for it found every real answer on questions it had not seen, but also answered questions with no answer (it refused 69% of made-up questions; nomic refuses 98.5%), so it is not used: text stays on nomic, and Gemma keeps serving pictures and documents. - Two models, one memory. Text is searched with the text model (nomic); if you
turn on pictures and documents, EmbeddingGemma 2 reads those, and one recall returns
both. The picture model unloads after 30 minutes unused. "Upgrade memory engine" is
no longer offered: the Settings card now appears only for a store whose text already
moved, the npm installer no longer offers it, andslm embedder upgradeis hidden. - Install, three ways, the same result. The README now has a prompt to paste into
any agent (Claude Code, Codex, Cursor, …), and the npm and pip commands. The agent
setup steps ask the person one question, whether to turn on pictures and documents,
andnpm install -g superlocalmemory --mediaturns them on from the start. - If your text already moved, the Settings card,
slm doctor(new check
"Answer check fit") and the MCPhealthtool say so and how to go back: Roll back on the card, or
slm embedder rollback. Your previous vectors are kept, so it takes minutes, and
the rollback message now says that instead of promising a full re-index. - A model switch kept its hub baselines. Each memory carries a baseline that
stops a few "close to everything" memories from looking like answers. A switch
renamed the vector columns, a trigger followed the old column, and the clean-up
afterwards deleted every baseline (27,236 to 0 on one store). The trigger is now
re-bound on every switch, a store an earlier switch damaged is repaired by itself,
and the new model's baselines are measured before the switch finishes. slm embedder calibrateworks on a real install. It stopped on two settings
that only its own tests had (config.profile_id,RetrievalEngine._channels). It
is now tested against a real engine, and a test checks every setting it reads
exists.- "What am I working on?" answers from your work. The newest rows on a busy
store were the hooks' own bookkeeping ("[project] session ended …",
"File changed: …", "files: …") and the prompts you typed to an agent, so they
won a question about the present. Bookkeeping is now recognised in all its shapes,
flagged when it is saved, and the rows already stored are flagged once on upgrade
(nothing deleted; they stay listable). Your captured prompts stay searchable but
rank as requests: below what you and your agents saved, and never as the answer
to "what am I working on?". Ask "what did I ask for…" and they come back first.
Upgrading
- The store's schema version moves to 62 (a data repair, no new table). Going back
to 4.2.1 needsslm db prepare-downgradefirst, as for earlier releases.