Contents

v0.5.30: Write Targets, Vector Coverage and Sync Fixes

View source on GitHub

This patch release publishes #398 to #407.

  • Memories land where mnemon_remember names (#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 memoryBodyIds come 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 the mnemon_remember result 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 -wal and -shm leftovers in the sync mirror no longer make every sync and backup fail. A global ignore such as *.db no 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 recall and /mnemon related say 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_memory works 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:

sh
dsh plugin --profile web add dsh-mnemon@0.5.30

Restart 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 remember and 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:

Publication verifies the complete pinned composition, registry installation and a real upgrade before creating the GitHub release.

Previous release: v0.5.29.