dsh-session-steward:会话管家

DSH(DeepSeek Harness)在运行过程中会产生大量的会话历史文件。随着使用时间增长,归档文件会积压,部分会话可能出现状态不一致或投影缓存损坏。dsh-session-steward 旨在解决这两个问题:通过“养老院”功能管理会话历史,通过“体检”功能诊断会话健康状态。

插件定位

drscrewdriver/dsh-session-steward 是一个 DSH Web 插件,用于会话历史文件管理与健康检查。它为异常会话提供投影级的体检与可逆修复能力。

核心功能

插件主要提供两块功能:

会话历史文件(养老院)

浏览官方归档集合,提供两个独立操作:
1. 取消归档状态:修改 global.archivedSessionIds 数组,将会话移回原工作区,可逆。
2. 清理归档文件:删除磁盘实体文件,不可逆。清理必然连带取消归档,否则会产生“侧边栏看不见、一取消归档就变成空会话”的僵尸 ID。

会话健康检查(体检)

提供“四门体检 → 处方 → 出院”的流程。支持批量体检 session-health-scan 和可逆处置 session-health-repair。

安装与启用

安装命令如下:

dsh plugin --profile web add dsh-session-steward

安装后必须重启 DSH 进程(仅刷新页面无效)。

路由与 API

插件注册在 /session-steward/api 路径下,方法名均为 session-*。安装后,侧边栏底部会新增「会话管家」入口。

方法 子域 作用
session-health-status health 开关状态与方法表
session-health-scan health 批量体检
session-health-session health 单会话四门报告
session-health-repair health 可逆处置
session-history-list history 列出归档集合
session-history-prune history 取消归档状态
session-history-purge history 清理归档文件

配置开关

插件提供两个 feature gate:

开关 字段 默认值 关闭效果
会话历史文件 historyFiles true 不注册 session-history-* 方法,不渲染「养老院」页签
健康检查 healthCheck true 不注册 session-health-* 方法,不渲染「体检」页签

四门体检

gate 判据 level
log-integrity zstd 多帧扫描、provenance 展开、seq 连续性 有读取问题 fail;仅撕裂尾帧 warn
projection-cache ~/.dsh/storages/session_projcache/sessions/<id>.json 的 minSeq 与日志末 seq 的 lag + 未结算字段 滞后且未结算 fail;任一 warn
lossless-json 热态 sessionProjections.checkpoint(session) 逐行判定无损 JSON 命中 fail
cold-read 最后 turn/end 的原因、是否存在未收尾 open step open step fail;interrupted/无 turn/end warn

注意事项

  1. 硬约束:
    - 列表与写入同源:列表与写入操作均认存储文件 ~/.dsh/storages/workspace.json。宿主内存里的 workspaceRegistry 是启动快照,改文件写不到内存,必须重启 DSH 使改动生效。
    - 操作后重启:任何归档或工作区改动,操作后必须立刻重启 DSH,否则会话状态会回滚。

  2. 格式契约:
    - 本插件写、搜索索引只读。搜索/独立索引属于另一片 dsh-search-index,本插件不提供搜索与索引功能。

  3. 禁止项:
    - 禁止改写会话日志、改历史数据、静默丢弃字段。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜