Appearance
2026-08-17
本次同步上游 deepseek-ai/deepseek-harness 提交范围:
47f943859bef60e4160492346772ded9b24f765a..99f6f02fecdb7dff40c3fbc9470f5907c29f74ca
(即 0.1.0-rc.5 之后 → 0.1.0-rc.7 发布,含 rich-content 桥接、插件自有设置表层、LLM 回放状态对齐、产品 subagent 后台任务等)
上游提交列表(要点)
范围共 111 个提交,以下为主要提交(按主题归并):
| 提交 | 说明 |
|---|---|
99f6f02fe | Merge pull request #2620(release/dsh-0.1.0-rc.7) |
bb4ca698d | release(dsh): 0.1.0-rc.7 |
4366528a3 | feat(settings): serve every registered namespace and key plugin cards on it(PR #2404 插件自有设置表层) |
7e95a00c8 | fix(llm): align replay state with assembled content and degrade unusable state(PR #2596 max-token 回放状态对齐) |
226600147 | feat(llm-deepseek): support low reasoning effort(PR #2549,DeepSeek 适配器新增 low 档) |
219d2a1fb / 4f87c1fe6 / 49426cae0 / e00146be7 | feat(attachment): 有序图片批次准入;feat(acp): 持久图片提示/回答桥接;fix(mcp): 图片结果投影为持久附件;fix(tools): Code Mode 转发嵌套图片结果(PR #2252 rich-content bridge) |
28fcda275 | feat(agent-presets): enable background Codex and Claude Code subagent tasks(PR #2374,one-shot 后台任务) |
5201b8486 | fix(web): avoid history pagination stack overflow(PR #1371,大规模历史分页不展开参数) |
4edbdd443 | fix(web): repair Safari textarea soft-wrap shrink(PR #2504) |
4b25b0e76 / db959a087 | feat(web): make the ask-user question card collapsible(PR #2308) |
a8dc6f977 | fix(pty): keep the controlled prompt so persistent bash settles fast(持久 bash 保留受控提示符) |
8692a1b76 | test(python): pin the minimal composition's model-visible surface(PR #2462) |
cc68bbf38 | Merge pull request #2517(node-pty 1.2 beta) |
9523dff0f | fix(web): resolve the pwsh-terminal overlay duplicate-loader entry(PR #2417) |
ed5a10b6e | Merge pull request #2494(调高 Windows CI 超时) |
66cd593bf / 3a793a0f7 | Merge PR #2559(rename code preset to PTC mode 等,UI 文案) |
6e7749932 / f2830fec6 | feat(scripts): gate browser-only dependencies out of the install face(及 PR #2577 回退);perf(web): remove the module preload polyfill |
47399764c / 7b973e27c / 9fa0575cc | fix(release): 按全部安装依赖段排序发布、拒绝模块作用域加载 optional 依赖、完整打印发布顺序(PR #2546) |
c5759d350 | Merge pull request #2553(docs/web-ui-guide-polish) |
7d59006fd | docs(notes): record how the notices tier learns what ships |
对文档的改动
- part3-core/ch14-llm-seam.md(对应:
7e95a00c8、226600147、PR #2596/#2549)- 14.1:
MessageSource的replayState类型由unknown更新为类型化ReplayEnvelope,补充其结构(不透明response半区 + 可选逐块blocks条目)与设计意图; - 14.2:
finishchunk 补充replayState?: ReplayEnvelope;BlockAssembler的 max-tokens 剪枝改为"内容与元数据一次保留/丢弃决定"(丢弃工具调用时 envelope 同步剪掉对应条目;条目数不匹配整体丢弃); - 14.3:新增"回放状态读侧纪律"——不可用状态降级为提供方无关转换 +
INVALID_REPLAY_STATE诊断(onReplayDegrade),取代读取时硬错误; - 14.5:
llm-deepseek的 reasoning effort 支持off/low/high/max(low为新增)。
- 14.1:
- part3-core/ch16-preset-goal-subagent.md(对应:
28fcda275、21d2433d9、PR #2374)- 16.3:产品提供方(
subagent-codex/subagent-claude-code)改为按 Profile 显式安装并在 host plane 挂载一次(生产dsh-base不再默认携带);工具行backgroundMode: 'one-shot'+ 可选run_in_background,后台走通用 Job 运行时; - 16.6:小结同步更新。
- 16.3:产品提供方(
- part3-core/ch15-capability-seams.md(对应:
219d2a1fb、e00146be7、PR #2252)- 15.1 表格:
ctx.attachments消费方扩展为 LLM 适配器、Web/ACP/MCP 图片入口、Code Mode;ctx.jobs消费方增加tool-subagent(one-shot bg); - 15.7/15.8:补充
AttachmentStore.saveImages()批次准入语义(全成员校验先于写入、整批成功才返回引用)与 Code Mode 图片转发。
- 15.1 表格:
- part4-web/ch17-web-client.md(对应:
4366528a3、PR #2404)- 17.7 Slot 系统:补充 keyed slot 典型用例——
settings.plugin.item以 settings 命名空间为键,api-proxy 服务每个已注册命名空间,configurable标签页按命名空间派发。
- 17.7 Slot 系统:补充 keyed slot 典型用例——
- part5-plugins/ch12-tools.md(对应:
e00146be7、PR #2252)- 12.6 Code Mode:补充含图片的已结算子结果经外层
run_code通用延后为带来源归属的上下文。
- 12.6 Code Mode:补充含图片的已结算子结果经外层
- part5-plugins/ch19-plugin-patterns.md(对应:
4366528a3、PR #2404)- 19.4:新增"给插件自己开一张配置卡"模式——Host 注册命名空间 + 浏览器把卡片注册在
settings.plugin.item(keyed,键 = 命名空间,声明key而非id/order),仓库外插件也可出现在设置页。
- 19.4:新增"给插件自己开一张配置卡"模式——Host 注册命名空间 + 浏览器把卡片注册在
未影响文档的变更及原因
66cd593bf(rename code preset to PTC mode):仅更改设置页「agent preset 选择」菜单的显示文案(两处 UI 文案/语言包),书中未描述该标签,无对应章节描述需改。- Safari textarea 软换行修复(
4edbdd443)、提问卡片可收起(4b25b0e76):均为 Web UI 组件层行为细节;ch17 是架构层(加载/连接/Slot/RPC),不含 composer 组件实测描述,无处可挂、不强改。 - node-pty 1.2 beta(
cc68bbf38)与 Python SDK 原生 PTY 构建脚本、python/development.md增量:书中无 Python SDK / 构建脚本章节(ch2 仅有python/目录一行标注),不涉及路径/API 描述变化。 - 持久 bash 受控提示符(
a8dc6f977):dsh-tool-bash-persistent内部 prompt 协议修复,书中未覆盖该工具的初始化细节,无对应描述需修正。 - 大规模历史分页(
5201b8486):session.history内部实现修复(逐项扫描sourceEventSeqs、不展开参数),分页语义与协议响应不变,书中无分页实现描述。 - Windows CI 超时/预算、python-runtime CI 快照、run-gates 与 lefthook 调整:仓库 CI/测试过程,书中无对应细节描述。
- optional 依赖加载门禁、publishOrder 按安装依赖段排序、browser-only 依赖安装面门禁:发布/构建脚本与门禁(
scripts/release/*、verify-optional-dependency-imports),不属于书籍章节主题。 - pwsh-terminal overlay 修复(
9523dff0f):web E2E 测试 scaffold 修复,非产品行为。 docs/web-ui-guide-polish(c5759d350)、官方 docs 配套改动(scripts/doc-budgets.manifest.json、website/docs.ts):上游官方文档站措辞与文档预算,与本书内容无关。- 版本标注(index.md / preface.md / 附录 C 的
0.1.0-rc.5/rc.6与 commit47f9438):系书籍写作时的既有元信息,按"不动无关内容"原则保留未动(与 2026-08-13 同步的做法一致);本次上游已发布0.1.0-rc.7,如需全书统改版本标注可另作一次独立修订。