All plugins

DSH / BUNDLE / CLIENT-UI

dsh-archive-manager

v0.1.0zimixvx / dsh-archive-manager7a8d968a1c

InstallableBundlesUI & client pluginsCommunity · Topic auto-analysisWeb UI

Overview

dsh-archive-manager

A minimal DeepSeek Harness Web plugin that lists archived sessions and permanently deletes an archived session directory after explicit confirmation.

README / EN

Package documentation

Registry summary

A minimal DeepSeek Harness Web plugin that lists archived sessions and permanently deletes an archived session directory after explicit confirmation.

dsh.pub verifies the pinned bundle contract, runtime facts, and distribution semantics. The complete README remains in the source repository.

Read the full README on GitHub

LIMITATIONS

Known limitations

- **Only archived sessions.** The route refuses any id not present in `workspaceRegistry.archivedSessionIds`. - **Live sessions are refused** — checked before the persistence lookup and again immediately before the `rm`, with HTTP `409`. - **Raw-artifact backend required.** The persistence backend must advertise `supportsRawArtifacts === true` and a `locate()` returning `{ kind: 'jsonl', path }`. Otherwise the route answers `501`. - **Deletes the session directory only.** `rm(dirname(location.path), { recursive: true, force: false })` removes the directory that holds the session's JSONL log (and any session-local files inside it). It does **not** modify the workspace registry, the archived markers, the projection cache, or content-addressed attachments (which live in a separate shared store and are shared across sessions). - **Stale archived markers.** After a successful delete, the archived marker in `archivedSessionIds` remains by design (removing it would mutate the registry). Because the panel only lists archived ids that still have a session summary, and the physical deletion removes that summary, the leftover marker does not reappear after a page reload. A local deleted-id set also hides the row immediately even if the follow-up refresh fails. - **Not reversible.** The deletion is a recursive `rm` with `force: false`. There is no trash or restore path.