Contents

v0.5.28: Git Sync Usability and Reliability

View source on GitHub

This patch release publishes #365, #366 and #363.

  • Git sync (#365). The settings follow the setup sequence: connect a repository, sync, compare remote changes, then choose advanced options. Sync now merges and pushes; Check remote writes nothing and offers Merge here only or Sync now. Repository failures say whether credentials, connectivity or another cause needs attention. Backup history has its own dialog, automatic sync uses the DSH selector, and each computer can have a custom name. Disconnect leaves local and remote memories intact and turns automatic sync off. Git sync remains off by default.
  • Git sync reliability (#365). Switching repositories or recreating a deleted branch starts a new mirror history, rather than publishing the previous repository's commits. A concurrent push is merged and retried once; repeated merges do not keep copying the same divergent documents or spaces. Abandoned locks can be recovered, Git 2.20–2.27 can initialize the mirror, and tokens saved for one host are discarded when moving to another host unless replacement credentials are supplied. Status probes have a 20-second timeout.
  • Desktop window dragging (#366). On macOS, the band above the Memory System and its title row use DSH's window-drag contract. Buttons, tabs and dialogs retain their interaction behavior.
  • RetainDB fallback (#363). Remember, forget and list use the legacy endpoint only when the current endpoint returns HTTP 404. Timeouts, authentication failures and server failures are reported instead of causing a second request that could duplicate a write or delete.

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.28

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 RetainDB, update that copy to dsh-mnemon-provider-retaindb@0.5.6 too, or remove it and use the Starter's included copy. The Starter pins the new version automatically.

Existing memory needs no migration. The supported host is DSH 0.2.0-rc.2; the Git sync checks 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.27 0.5.28
dsh-mnemon-provider-retaindb 0.5.5 0.5.6

The other 16 component versions are unchanged.

Verification

Release acceptance records the versioned candidate and its basic memory flows. The integrated source passes the full workspace verification, including 1,881 root tests; 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.

The changes also have their own records:

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

Previous release: v0.5.27.