Skip to content

Releases

v0.0.8 修正档位硬编码

Choose a tag to compare

@RoyougiShiki RoyougiShiki released this 06 Sep 03:05

修正 v0.0.7 的档位硬编码

v0.0.7 为绕开某供应商 296s 处理上限,把重试阶梯第 1/2 轮硬编码为 reasoningEffort=low,
导致用户在别的机器选了 xhigh 却被按 low 请求,未声明 low 档的模型直接被
UNSUPPORTED_REASONING_EFFORT 拒绝。本版将该逻辑完整还原为上游原样
(前两轮 off、第三轮不传档位),档位重新交由模型配置决定。

相对 v0.0.6 保留的修复

  1. 取材:eventPlainText 兼容 data.content 与 data.message.content 两种形状。
    原来助手轮次全部取到空串,材料从约 10 万字塌到 1,448 字(修复后 23,680 字),
    交接条写不出任何「已完成/已改动」
  2. 挂死:新增 runWorkerGuarded(Promise.race 墙钟兜底)。原实现超时只在
    for await 循环体内检查,流不发块时永久挂住且永不报错
  3. 滚动:定高 effect 不再依赖 [state];ResizeObserver 改为观察滚动容器与
    输入栏(原来观察 body,输入栏变矮不触发重算,高度冻结在挂载瞬时值);
    去掉 h>200 闸门;flex: 1 1 auto 改为 1 1 0,杜绝详情变长顶出外层滚动条
  4. 可观测性:全链路 [hb-handoff] 日志;失败带分类标签 + 处置建议 + 各轮遥测;
    识别供应商超时回执与上游业务错误;错误截断 300→1600,toast 6s→20s
  5. 超时保护:postJSON 增加 AbortController

未改动:推理档位、token 预算、超时、取材预算、packTurns 不丢轮次策略

安装

dsh plugin --profile web add https://github.com/RoyougiShiki/dsh-handoff-wall/releases/download/v0.0.8/dsh-external-dsh-handoff-board-0.0.8.tgz

v0.0.7 取材/告警/重试/滚动修复

Choose a tag to compare

@RoyougiShiki RoyougiShiki released this 03 Sep 09:40

修复

取材(最关键)

  • eventPlainText 兼容两种消息形状:user 正文在 data.content,assistant 在 data.message.content。原来只读前者,助手轮次全部取成空串,材料从约 10 万字塌到约 1.4 千字,交接条写不出任何「已完成/已改动」。修复后实测材料 23,680 字,「已完成」段落含真实文件路径与验证结果。

可观测性(原链路零日志,失败后完全不可查)

  • 新增 [hb-handoff] 全链路日志:取材 / 开工 / 每轮 / 命中供应商上限 / 失败 / 完成
  • 失败错误串带分类标签 + 处置建议 + 各轮遥测 + 实际标题与正文开头
  • 路由错误截断 300 → 1600 字,失败 toast 6s → 20s

重试阶梯(原阶梯多处错位)

  • 传模型不支持的 reasoningEffort 会 0.0s 秒失败白烧 → 按值记录并跳过(low 被拒不代表 medium 也被拒)
  • 末轮 maxTokens 9000 被思考吃光 → 提到 30000
  • 识别供应商超时回执「Request exceeded 296s limit」,不再拿它当交接条正文去验六段
  • 识别上游业务错误(如 fixed_merchant_unavailable)并单独归类
  • 命中供应商处理上限时自动降级取材预算重试
  • 墙钟 Promise.race 兜底,杜绝流卡死导致的永久无响应

滚动(滚动条随右侧详情变化、会话树被挤出可视区)

  • 定高 effect 不再依赖 [state],避免每次 15s 轮询重建观察者与监听器泄漏
  • ResizeObserver 改为直接观察滚动容器与输入栏(原来观察 document.body,输入栏变矮不触发重算,高度被冻结在挂载瞬间的瞬时值)
  • 去掉 h > 200 闸门(它把错误高度永久冻结)
  • flex: 1 1 auto 改为 1 1 0:basis 为内容高度时,详情一变长就能把 wrap 顶大并撑出外层滚动条

实测:详情高度 556→5538 字时 wrap 恒定、外层滚动条零出现;a61/qwen3.8-flash 与 gpt-5.6-luna 均成功产出六段交接条(58.9s / 85.8s / 146.9s)。

新增

  • docs/troubleshooting.md:排障笔记(多帧 zstd 日志、供应商 296s 上限、reasoningEfforts 档位与思考量、取材预算下限等实测事实)
  • .scratch/decode.mjs、.scratch/inspect.mjs:会话日志与取材分析工具

安装

dsh plugin --profile web add https://github.com/RoyougiShiki/dsh-handoff-wall/releases/download/v0.0.7/dsh-external-dsh-handoff-board-0.0.7.tgz

v0.0.6 画布横向化+折叠吸底+滚动自适应

Choose a tag to compare

@RoyougiShiki RoyougiShiki released this 31 Aug 07:33

UI 重构(用户多轮反馈,浏览器实测验证)

  1. 交接画布横向血缘树:根卡在左、子卡向右展开、贝塞尔曲线连接(借鉴 dsh-synapse);卡片不可拖拽、画布可平移
  2. 会话树整区折叠吸底:折叠时一条横条沉到视图底部,不占画布;时间组默认折叠
  3. 详情接续双向化:↑交接自 / ↓被接续 分行,方向明确
  4. 滚动布局修复:wrap 高度动态测量(滚动容器可视高−偏移−输入栏),左右栏各自滚动,消除外层公用长滚动条

v0.0.5 修 v0.0.4 渲染错误

Choose a tag to compare

@RoyougiShiki RoyougiShiki released this 31 Aug 02:01

修复(v0.0.4 回归)

v0.0.4 引入渲染错误「p is not defined」:多轮编辑在组件顶层留下孤儿 while(p) 块(变量未定义),且 relatives 闭包丢失 bySid 定义、父链 break 先于 push 导致子代理顶头父会话被漏。三处均已修。

流程加固

  • build.sh 新增 client 专用 tsc 类型检查关卡(此前 tsconfig 排除 src/client、tsdown 纯转译,client 改动从未被类型检查——正是事故根因)
  • 补装 @types/react,修 onOpenSource 签名与 HBErrorBoundary children 类型

v0.0.4 详情血缘统一真源

Choose a tag to compare

@RoyougiShiki RoyougiShiki released this 31 Aug 01:50

修复

详情面板父子关系与会话树不一致(用户反馈:树的父子关系修复正确,详情应该也自动同步——没有统一唯一真源)。

  • 详情面板的 relatives 是独立写的第四套血缘消费逻辑,未复用树的子代理门控:选中接续会话仍显示假「父会话」、被接续会话把接续者列为「子会话」。
  • 现抽 kinshipOf() 作为血缘唯一真源(仅子代理有树父子关系、父链只沿子代理链爬),buildTree 与详情 relatives 共用——修血缘 bug 只改一处。
  • 详情面板新增「关联交接」区:接续关系不再冒充子会话,信息不丢(点击可跳转)。

v0.0.3 接续血缘修复版

Choose a tag to compare

@RoyougiShiki RoyougiShiki released this 29 Aug 12:35

修复

  1. 交接条循环增长:取材现在过滤 source.kind=plugin 的注入消息——接续注入的上一条全文不再被工人再总结进新条(此前 874字→2290字逐轮膨胀)。
  2. 会话树折叠错误:接续血缘迁入账本 links 表,不再伪造 header.parentSession(宿主子代理专用字段)。会话树只折叠子代理,接续出的主会话一律根级显示;接续会话恢复侧边栏自动起标题。
  3. 文本随点击/轮询循环增加:修 renderNoteChain 同数组重复 key:'fk'(React 重复 key 每次重渲染多挂一个元素)。

附带

  • board AI 工具补死条过滤(来源会话已不存在的交接条不再出现在 AI 视角)
  • 存量兼容:旧接续会话(header 带 parentSession)血缘靠回退保持完整
  • 详见 ADR-0006

dsh-handoff-board v0.0.2

Choose a tag to compare

@RoyougiShiki RoyougiShiki released this 28 Aug 10:23
  • 接续会话写入并 mount agentPreset,新对话有模式名、DSH 工具可用
  • 交接取材按轮次压缩(开头+结尾),不再从头部截断或省略中间轮
  • 同一会话再生成覆盖旧条;详情页增加「重新生成」
  • 去掉无关 peer dsh-better-sidebar

安装:

dsh plugin --profile web add https://github.com/RoyougiShiki/dsh-handoff-wall/releases/download/v0.0.2/dsh-external-dsh-handoff-board-0.0.2.tgz

dsh-handoff-board v0.0.1

Choose a tag to compare

@RoyougiShiki RoyougiShiki released this 28 Aug 06:30

交接板首发:交接条六段全文 + 会话树/血缘画布 + 接续;标题与侧边栏同源;ENOMEM 根因已修(稳定期 /state 3ms)。安装:dsh plugin --profile web add <本 release 的 tgz 链接>