v0.5.30: Write Targets, Vector Coverage and Sync Fixes
This patch release publishes #398 to #407.
- Memories land where
mnemon_remembernames (#405, issue #387).- Before: the delegated writer took a named Memory Space as a preference. It could save into another space whose description matched better, and switch that space back on.
- Now the Host checks a named space before the writer starts, and a guard holds every write and link to it. An unknown space, one whose Provider is off or takes no writes, and a switched-off one fail at once with the reason.
- A write without a named space no longer switches a space on, and saving a memory never merges spaces.
- The result's
memoryBodyIdscome from the Source receipts. - A finished writer that DSH 0.2.1 resumes cannot write again.
- Vectors for every Memory Space (#399, issue #392).
- Before: Test status in the Mnemon Native embedding settings counted Mnemon's one default Store, which could read 100% while another space lacked vectors.
- It now lists every Native space with its count, and a space that lacks vectors can be filled in with Fill in. Filling runs through the Host, with the storage root and embedding settings DSH uses, in steps that let other memory work go on, and says how many vectors it filled in, how many remain, or that the service returned none.
- A memory saved without a vector says so (#406, issue #388). When embedding does not succeed,
/mnemon remember, Save to memory and themnemon_rememberresult add a line or a hint: the memory is left out of semantic matching until its vector is filled in from Test status. - Git sync stops adding Memory Space copies (#398, issue #391). Merging spaces rewrites the values of their links, and filling in vectors or keeping a memory rewrites its update time. Those differences made the next sync keep the branch's version as one more active space; they are now left out of the comparison.
- Git sync and untracked files (#401, issue #396). SQLite
-waland-shmleftovers in the sync mirror no longer make every sync and backup fail. A global ignore such as*.dbno longer keeps databases off the branch. - The first sync after updating from 0.5.28 (#404, issue #385) no longer turns a Project Document edited since the last sync into two documents.
- Recall past the turn budget (#402, issue #389). A third, different Recall in a turn runs nothing and says so (
notRun,budgetExhausted), instead of answering with the previous query's evidence. Related and Documents search do the same, and/mnemon recalland/mnemon relatedsay when a query did not run. - Tool answers that no longer read as "nothing there" (#407, issue #390).
- Refused View ids name the tool or exact id to use, and refused forgets say why a space is out of reach.
- Recall, Documents search and Related say what they search.
- A Document write returns the Document written instead of every Document with its paths, and the status aggregate says what it sums.
- The interface reference gains a table of model tools against Mnemon CLI commands.
- A second runtime Source (#400, issue #397).
mnemon_runtime_memoryworks again when a profile mounts a second runtime Source beside the Starter's. - Delegated tasks carry a stable first line (#403, issue #393), such as
[dsh-mnemon:delegated review], so a plugin reading a child session can tell dsh-mnemon's tasks from the user's requests.
Upgrade and compatibility
From v0.5.22, use Memory System → Status → Check versions → Update, then restart DSH. To install the exact version:
dsh plugin --profile web add dsh-mnemon@0.5.30Restart an existing DSH process after installation. A fresh installation can choose Enable now on the Plugins page. An explicit version avoids pnpm selecting an older release during its 24-hour release window. Older desktop installations are covered by Compatibility and upgrades.
If your Profile independently maintains Memory Spaces or the Layered strategy, update that copy too (dsh-mnemon-source-memory-spaces@0.5.20, dsh-mnemon-strategy-default-three-tier@0.5.9), or remove it and use the Starter's included copy. The Starter pins the new versions automatically.
Existing memory needs no migration. Some behavior changes on purpose:
- Every machine that syncs a repository needs this release. A machine still on an earlier version keeps adding Memory Space copies itself. Copies earlier versions made stay where they are.
- A branch published with Memory Space databases missing still fails the sync check everywhere. An earlier version could publish such a branch under a global ignore such as
*.db. Delete the branch on the remote, or choose another directory under Advanced, then sync once to publish a complete payload. - Writes that name a switched-off space. A model that names a switched-off space gets an error that says to switch it on first. A space the user picks on the Memory Spaces page still comes back on with the write. With every space switched off,
/mnemon rememberand Save to memory save nothing unless the writer creates a space. - The first line of a delegated task. It is now the delegated line, and the task itself starts on the second line. A reader that matched the idle review's
Bounded completed checkpoint …header at the start of the message should match the new line instead.
The supported host is DSH 0.2.0-rc.2; the checks below also pass on DSH 0.2.1-alpha.2. Complete profiles use Node ^22.19.0 || >=24.0.0. Plugin peer floors and all locked external dependency versions are unchanged.
Changed packages
| Package | Previous | New |
|---|---|---|
dsh-mnemon |
0.5.29 | 0.5.30 |
dsh-mnemon-source-memory-spaces |
0.5.19 | 0.5.20 |
dsh-mnemon-strategy-default-three-tier |
0.5.8 | 0.5.9 |
The other 15 component versions are unchanged.
Verification
Release acceptance installs the three changed packages through Add plugin on fresh DSH 0.2.0-rc.2 and 0.2.1-alpha.2 hosts, checks Status, Runtime, a Native space with CLI and WebUI recall, Entities and Check versions, and updates a v0.5.29 installation. The merged source passes the full workspace verification, including 2,000 root tests, and 64 real Git sync checks pass on each of DSH 0.2.0-rc.2 and 0.2.1-alpha.2 with two hosts and a temporary bare repository.
Each change has its own before-and-after record:
- Writes into the named Memory Space and a memory saved without a vector
- Vector coverage for every Memory Space
- Memory Space copies after a merge, untracked files in the sync mirror and the first sync after updating from 0.5.28
- Recall past the turn budget and tool answers
- A second runtime Source and the first line of a delegated task
Publication verifies the complete pinned composition, registry installation and a real upgrade before creating the GitHub release.
Previous release: v0.5.29.