Repository navigation
Releases
Releases · devopsfortunato/dsh-plugin-safe-upgrade
v0.4.0
Unofficial community plugin. Not made, endorsed or supported by DeepSeek or the DeepSeek Harness (dsh) team. Report problems in this repository, not to the dsh project.
0.4.0 (2026-09-29)
Features
- cli: add sessions [--fix-presets] to report and repair sessions on the running dsh (c429ba9)
- keep stored sessions working across dsh upgrades (c429ba9)
- rollback: warn when a rollback would hide sessions continued on a newer session format (c429ba9)
- sessions: add legacy presets for sessions whose preset the new dsh does not define (c429ba9)
- sessions: open a copy of every stored session with the running and the new dsh before an upgrade (c429ba9)
- sessions: stop an upgrade when sessions that open today would not open afterwards (c429ba9)
Documentation
- make clear this is an unofficial community plugin (cbcb11e)
v0.3.0
Unofficial community plugin. Not made, endorsed or supported by DeepSeek or the DeepSeek Harness (dsh) team. Report problems in this repository, not to the dsh project.
0.3.0 (2026-09-28)
Features
- config: add idleWaitMs and bootTimeoutMs settings (accb2f8)
Bug Fixes
- boot: count plugins still loading at the deadline as an unhealthy boot (accb2f8)
- boot: record a known-good boot for each dsh version, not only each config (accb2f8)
- engine: abort an upgrade or rollback when dsh cannot be stopped (accb2f8)
- engine: apply failOnWarnings to dry runs, config warnings and manual rollbacks (accb2f8)
- engine: re-check idleness right before stopping dsh and wait for running turns (accb2f8)
- engine: take the job lock atomically; a job only releases its own lock (accb2f8)
- engine: validate with --dump-config in a throwaway $DSH_HOME, never the live one (accb2f8)
- guard: run boot-guard recovery as the dsh unit's own account, never as root (accb2f8)
- harden config history, job locking and the upgrade and rollback flows (accb2f8)
- history: commit exactly the scanned bytes; content failing the scan never reaches git (accb2f8)
- history: enforce the config allowlist whatever .gitignore says, also on rollback (accb2f8)
- history: refuse files over 2 MiB instead of committing them unscanned (accb2f8)
- history: snapshot profile and preset folders created after startup (accb2f8)
- rollback: undo an install swap that failed half way (accb2f8)
- systemd: let EnvironmentFile= values override Environment=, as systemd does (accb2f8)
- ui: bound every DevTools call and report why a web UI check timed out (8c228cf)
- ui: never fail a web UI check on browser profile cleanup (accb2f8)
Documentation
- document the hardened flows, the regression suite and releases (dc0b7d0)