Skip to content

Releases

v0.4.6:修复设置页样式失效

Choose a tag to compare

@wzn16 wzn16 released this 29 Sep 02:50

修复:归档会话页样式整体丢失

官方壳更新后设置页的渲染环境发生变化,插件原来向 document.head 注入样式表的方式整体失效,页面退化为浏览器默认样式(布局堆叠、无边框表格)。

改为在组件根节点内直接渲染 style 元素:任何渲染环境(含 Shadow DOM / CSP)下都生效,随组件卸载自动清理,并移除了旧的 head 注入与清理逻辑。

v0.4.5:工作会话直接删除

Choose a tag to compare

@wzn16 wzn16 released this 28 Sep 08:37

新增:未归档会话直接删除

官方客户端的会话只有归档、没有删除——想删掉工作列表里的会话,此前必须先归档再进归档面板删除。现在「手动归档 / 排除会话」清单里每个会话都有「删除」按钮:

  • 两步确认(删除 → 确认删除,5 秒后自动取消)
  • 运行中的会话拒绝删除;驻留内存的先从内存移除再删
  • 从硬盘删除会话目录(node:fs,跨平台),删除后侧边栏即时消失

v0.4.4:设置页撞车防护

Choose a tag to compare

@wzn16 wzn16 released this 28 Sep 08:30

修复:设置页在宿主繁忙时假死

  • 打开设置页会触发 auto-status 全量预览扫描(数百会话 stat,约 1 秒同步阻塞),与其他会话的重任务、启动首轮扫描叠加时请求排队,归档列表长时间「加载中」。预览结果现缓存 60 秒;手动「立即扫描」仍保证实时
  • 无标题会话负缓存落盘:重启后不再对空日志等废会话重复消耗兜底解析预算;readSession 兜底预算 5s→2s
  • 启动首轮自动扫描从启动后 3 分钟推迟到 5 分钟,错开操作高峰

v0.4.3:血统保护 + 附件回收站

Choose a tag to compare

@wzn16 wzn16 released this 28 Sep 08:00

根因复盘与修复:继续会话报 Attachment object is missing

事故链:继续会话的 child 日志只存增量,真实历史(含图片引用)在被归档的 parent 日志里 → 旧的在用判定只扫未归档日志,parent 独占引用的贴图被误判可清理 → 删除后继续 child,DSH 回放历史时按 sha256 重读父辈图片且校验内容哈希,文件缺失即本轮失败。

修复:

  • 血统保护:在用判定沿 parentSession 上溯全部祖先(哪怕已归档),祖先引用的附件一律保留
  • 回收站制:清理不再直接删除,先移入 attachments/v1/trash/(误清可手动移回 objects/<2位前缀>/ 恢复);新增「清空回收站」按钮,两步确认后才真正释放空间
  • 面板显示回收站占用

v0.4.2:修复删除会话必败

Choose a tag to compare

@wzn16 wzn16 released this 28 Sep 07:38

修复:删除会话 100% 失败

  • 根因:删除会话目录的逻辑原走宿主 shell 执行器,但新版 DSH 的插件上下文已不再提供 shell 服务,每次删除都在最后一步报 "shell executor unavailable" 失败——这就是「删除好像不管用」的真正原因(此前版本的报错被界面吞掉,观感像点了没反应)
  • 修复:改用 node:fs rmSync 递归删除,跨平台(macOS/Windows/Linux),与插件其余磁盘操作同一通道
  • 顺带包含 v0.4.1 的两项修复:附件扫描让出事件循环(扫描期间列表不再假死)、标题负缓存(列表稳态毫秒级返回)

v0.4.1:修复扫描期间归档列表假死

Choose a tag to compare

@wzn16 wzn16 released this 28 Sep 07:32

修复

  • 附件扫描期间归档列表假死:引用扫描是同步 CPU 密集操作(数百会话 zstd 解压约 5 秒),期间宿主进程无法响应任何并发请求,归档列表的请求被堵在队列里,界面一直「加载中」。扫描循环现在每 8 个会话让出一次事件循环,扫描期间所有接口照常响应
  • 标题解析负缓存:三层都解不出标题的会话(空日志等边缘情况)不再每次打开列表都重复消耗兜底解析预算(实测每次 5 秒),列表稳态毫秒级返回

v0.4.0:附件联动清理 + 加载提速修复

Choose a tag to compare

@wzn16 wzn16 released this 28 Sep 07:05

新增:附件联动清理

  • 新的「附件清理」卡片:扫描所有未归档会话日志建立引用索引,找出未被任何未归档会话引用的贴图附件(只被已归档或已删除会话使用),预览后两步确认清理
  • 跨平台:按附件 sha256 匹配引用,Windows 反斜杠路径同样命中;宽松匹配宁可少清不误删;逐文件删除,单个失败不中断整批
  • 实测:573 个会话扫描约 5 秒;532 个附件 101MB 中可安全清理 104 个 / 20MB

修复:归档会话列表 21~38 秒加载

  • 根因:248 个已归档会话中 175 个 v0 老日志的标题解析每次都失败——readSession 池烧光共享 20s 预算后,唯一能读这些日志的 raw-log 直解层排在最后、从未执行,且失败结果不落盘,形成每次打开都重烧 20 秒的死循环
  • 修复:解析层调序(快照 → raw-log 直解 15s → readSession 5s,各自独立预算),raw-log 成功的标题全部落盘,后续加载直接命中缓存
  • 配合 v0.3.1 的 node:fs 目录统计,归档会话页从 ~21-38 秒降至亚秒级

v0.3.1:归档会话列表提速

Choose a tag to compare

@wzn16 wzn16 released this 28 Sep 06:18

修复

  • 归档会话列表打开极慢(246 个会话约 21 秒):目录大小统计原来对每个会话串行调用 fs 服务(每次约 87ms IPC),改为 node:fs 递归直算(实测 811 个会话目录共 37ms),列表打开降到亚秒级;删除会话后的列表刷新同样受益,不再出现「删了但界面长时间无变化」的观感
  • fs 服务路径保留为兜底(宿主进程无直读磁盘权限的环境自动降级)

v0.3.0:置顶豁免 + 双口径时间显示

Choose a tag to compare

@wzn16 wzn16 released this 28 Sep 03:15

新增

  • 置顶会话豁免:侧边栏置顶的会话(workspace 域 pinnedSessionIds)永不自动归档;扫描审计新增 skippedPinned 计数
  • 双口径时间显示:手动归档/排除会话清单每行同时显示「创建 X 天前 · 闲置 Y 天」——侧边栏显示的是创建时间,闲置阈值按日志最后写入(最后活跃)计算,两者并存展示,消除「列表里 17 天的会话为什么没被归档」的困惑

改进

  • 设置面板增加口径与豁免规则说明
  • README 补充闲置口径说明与置顶护栏

v0.2.0 · 官方 DSH 壳适配

Choose a tag to compare

@wzn16 wzn16 released this 26 Sep 09:12

适配

  • 标题三级解析:批量快照 → 逐会话查询 → zstd 原始日志兜底(老会话 query 服务拒绝转换时直接读盘解标题)
  • 标题磁盘缓存(dsh-auto-archive.titles.json)+ 单轮 20s 预算,修复数百会话规模下归档列表首载卡死

说明

  • 自动归档调度逻辑不变(闲置 N 天、每日扫描);与官方客户端原生归档管理共存