Repository navigation
Releases: zenghang25/dsh-session-delete
Releases · zenghang25/dsh-session-delete
Release list
v0.5.1 — 删除后不再残留未分组分组头
v0.5.1 — 删除后不再残留空的「未分组」分组头
- 之前只把删除过的会话行用 CSS 隐藏,但它的 summary 还在客户端会话列表里,导致「未分组」分组头仍然渲染。
- 客户端现在订阅会话列表 store:隐藏 id 一旦重新出现在基线里就立刻摘掉;启动后 0.8s / 3s 再兜底清理。CSS 隐藏保留作双保险。
完整变更: v0.5.0...v0.5.1
v0.5.0 — 删除进 Windows 回收站,可还原
v0.5.0 — 删除改为可还原(Windows 回收站)
- 会话日志目录和
.dsh-sessions/<会话id>/产出目录改为通过SHFileOperationW(FOF_ALLOWUNDO)移入 Windows 回收站,可以从回收站还原。 - 仍然是一键删除、无确认弹窗;投影缓存是可再生缓存,仍永久删除。
- 非 Windows 平台回退为永久删除并在响应里记录警告。
- 回收站移动失败会回滚临时归档并报错,不会出现“灰掉但没删”的状态。
完整变更: v0.4.6...v0.5.0
v0.4.6 — 删除后不再出现残留行
v0.4.6 — 删除后侧栏一定不再出现这一行
DSH 会把删除过的会话对象继续留在宿主内存里,session 列表因此仍会返回它(已归档),侧栏在开启「显示已归档」时仍会把它画出来。
- 客户端记住已删除的会话 id(localStorage),用 CSS 隐藏对应行,刷新列表后再摘一次;
- 删除成功后调用官方
workspaces.archiveSession同步客户端归档集合; - 启动时按
/diag清理旧版本残留的「已归档 + live + 无落盘」幽灵行。
完整变更: v0.4.5...v0.4.6
v0.4.5 — 删除后不再「复活」
v0.4.5 — 删除后不再「复活」
修复
- 删除一个仍 live 在宿主内存里的会话后,旧版会在最后一步
unarchive;宿主的 session 列表仍会返回该 live 会话,于是侧栏(通常「未分组」)又冒出一行。 - 现在:仍 live 的会话删除后保持归档隐藏,不再复活;等会话释放或 DSH 重启后,启动对账自动清掉归档条目。
新增
GET /dsh-session-delete/diag:只读诊断(live 会话 + 工作区账目 + sessionQuery 列表),用于排查幽灵行。
完整变更: v0.4.1...v0.4.5
v0.4.1 — 一键直删 + 修复「会话仍在运行」误报
v0.4.1 — 一键直删 + 修复「会话仍在运行」误报
修复
- 不再把「被打开过的会话」误判为「仍在运行」:旧版等 live 会话退出 5 秒后中止删除,留下已归档的灰行;现在最多等 1.5 秒就继续删除。
sessions.flush失败只记警告,不再中止删除。- 物理删除失败时才报错,并把临时归档回滚,让会话恢复可见(不再灰着不放)。
GET /dsh-session-delete/ping改为只读健康检查(不鉴权);破坏性的删除接口保留浏览器认证 / Host-Origin 栅栏。
保留
- 会话「⋯」菜单唯一新增项「删除会话」,点击即删,无确认弹窗。
- 一次删除:会话日志(含子代理子会话)、投影缓存、
.dsh-sessions/<session-id>/产出目录、工作区/置顶/归档账目。 - 每个对话独立产出目录(
outputs/、memory.md、tmp/),删除对话即删除该目录。
完整变更: v0.4.0...v0.4.1