Commit Graph
369 Commits
Author SHA1 Message Date
winewill ae090f028b Merge pull request #7884 from deepseek-harness/feat/desktop-rollout-website
feat(desktop): add rollout and website publication workflow
2026-11-05 12:18:06 +08:00
winewill 77cd0c8f03 fix(desktop): disclose website installer replacement 2026-11-05 11:57:27 +08:00
winewill e9e835a7d4 fix(desktop): clarify independent website publication 2026-11-05 11:39:30 +08:00
yudshj 9df26413ee refactor(office): Office 技能统一读取包内 assets,移除包外 office-skills 拷贝与 DSH_BUNDLED_OFFICE_SKILLS
- web-app、sdk-app 的 skill-office 不再覆盖 assetRoot;pythonEnvironment 不变
- Desktop 与 Python SDK 打包不再生成 office-skills 资源目录,删除 prepareOfficeSkillAssets 与 skillSource
- Desktop 打包 smoke 校验 4 个 Office 技能可从运行时归档列出并加载
- 同步测试、README、Agent Note,新增升级指南 office-skill-resources
2026-11-04 13:25:24 +00:00
yudshj e90954631e refactor(desktop): primaryRuntime 保持 Host argv 传入,由 desktop-host 写入 DSH_PRIMARY_RUNTIME,不再升级 Host 协议版本
- main.ts / host-process.ts / host-protocol.ts 恢复 master 的 argv 布局与协议版本 4
- desktop-host 在环境快照和 profile 求值前把 argv[4] 写入 DSH_PRIMARY_RUNTIME
- 相关测试、smoke 脚本与 fixture 恢复按构造参数传入 primaryRuntime
- 删除 README 与升级指南中「内置终端继承 DSH_PRIMARY_RUNTIME」的不实说明(子进程会清除 DSH_* 变量)
2026-11-04 18:18:02 +08:00
yudshj d7ae76a92b refactor(office): 渲染图片沿用附件实际媒体类型,收窄 office-kit 冗余接口
- office_render 返回存储规范化后的 mediaType(JPEG/WebP),复用 ImageAttachmentRef 字段并补回归测试
- 删除无生产消费者的 office-kit/locate 公开子路径与 unpackedPath 导出
- tool-office 复用 office-kit 格式与扩展名类型
- 删除新操作结果的 generation 与请求的 priority 字段
- 删除 tool-office 入口无人使用的结果类型重导出
2026-11-04 18:17:59 +08:00
yudshj 012088543a fix(office): PDF 导出后不再渲染,合并 DSH_BUNDLED_PRIMARY_RUNTIME 到 DSH_PRIMARY_RUNTIME
- office 路由技能:PDF 导出写明验收(复制的文件非空且以 `%PDF-` 开头)并在此停止;保留排版类任务主动渲染。office 工具让渲染只差一次调用后,模型常在导出后渲染 result.pdf 验收,e2e「exports PDF」因此失败。
- office-pptx / office-xlsx 删去不提供操作的免责句。
- Desktop、SDK 与 web-app 配置只读 DSH_PRIMARY_RUNTIME,空值视为未设置;SDK 启动器在用户未设置时才填入下载缓存路径。
- e2e 断言附带工具调用诊断;render 检测改用记录的 office 调用,新增 render-context.spec.ts。
- 同步 office 快照、README 与升级指南。
2026-11-04 18:17:58 +08:00
yudshj 50ba635949 feat(office): Office 操作改为常驻的原生 office 工具
- 新包 @deepseek-ai/dsh-tool-office 提供常驻的 office 工具(render / convert / recalculate),由 office-kit 在 Host 中直接调用 Kit 的 JS API;标准模式与 PTC 通过同一个工具调用
- render 的页面图片直接进入工具结果(有数量、像素与字节上限);convert / recalculate 的结果写入 office-kit 按 Session 划分的私有输出目录,由模型用 shell 复制到工作区,fs 与 Host 代码不写用户工作区
- 删除为 shell 执行 Kit CLI 而存在的代码:skill-office 的 node / cli / kitRoot、resolveKitCli、DSH_BUNDLED_OFFICE_CLI / DSH_BUNDLED_OFFICE_NODE / DSH_BUNDLED_RUNTIME_ROOT 与 Electron 下的独立 Node 检查;打包 smoke 改为经 office-kit 真实渲染、转换与重算
- office 由 web-app 的 standard / ptc 预设与 sdk-app 挂载,minimal 不挂载;操作技能正文与目录描述指向 office 工具
- 新增 Agent Note,部分取代 progressive-office-skills 的 shell 执行决定;同步 README、子系统页、catalog 与升级指南(含已保存预设的迁移步骤)

本 PR 的 snapshot 统一在这个提交里重新生成,前 4 个提交中的 snapshot 不一定和那一步的代码对应。
2026-11-04 18:17:58 +08:00
yudshj a220e017b5 refactor(office): 合并为 office-kit,Kit 缺失时降级而非加载失败
- Kit CLI 由 office-kit/locate 在 Host 中定位(含 ASAR 映射与可选 root 越界检查),删除 Desktop 壳的 office-cli 与诊断文件;生产版 Desktop 由壳通过 DSH_BUNDLED_RUNTIME_ROOT 显式传入 Kit 根目录,开发版与 Web 不检查
- office-to-pdf 与 office-kit-resolver 合并为 @deepseek-ai/dsh-office-kit,由同一包定位 Kit 并提供转换服务
- Kit 缺失时 provider 照常注册,转换请求以 OfficeKitError unavailable 拒绝,之后安装 Kit 无需重载
- 类型统一使用 OfficeKit 前缀(OfficeKitRequest/Result/Priority/Key),同步消费方、文档、升级指南与 catalog
- 处理 ds-review-bot 意见,并更新 unknown 断言基线

本 PR 的 snapshot 统一在这个提交里用 keyless refresh 重新生成,前 3 个提交中的 snapshot 不一定和那一步的代码对应。
2026-11-04 18:17:57 +08:00
yudshj ee06bf3f9b fix(office): 升级 LibreOffice Kit 到 0.2.3,Kit CLI 定位失败时隔离并保留技能
- 将 Kit 引擎包解析提取为 office-engine-resolver,并与 master 的发布配置对齐
- LibreOffice Kit 升级到 0.2.3 正式版
- Desktop 的 Office CLI 改由 skill-office 解析 Kit,去掉 desktop-host 对 Kit 的依赖
- Kit 缺失时给出可操作错误;Office CLI 定位失败时隔离错误并保留 Office 技能
- 按 Kit 0.2.3 的 helper 授予 macOS JIT 权限,并按新 Host 签名转发夹具参数
2026-11-04 18:17:57 +08:00
yudshj 498d436db5 fix(office): 技能文件缺失时不再阻止 Desktop Host 启动,Office 改由 Desktop profile 挂载
- skill-office 在技能文件缺失或元数据解析失败时降级为持久失败,不再阻止 Desktop Host 启动
- Office 改由 Desktop profile 的 yaml 挂载,载体路径由 Desktop 壳通过 Host 环境传入
- 升级 LibreOffice Kit 到 rc.4,移除 Desktop Host 的引擎钩子,runtimeArchivePath 内联到 cli.ts 并删除 office-engine.ts
- 按平台原生路径和当前 Host 参数布局更新 web-app 与 desktop-host 测试夹具
2026-11-04 18:17:57 +08:00
winewill 9c17f9c020 fix(desktop): preserve rollout routing and website recovery 2026-11-04 17:43:19 +08:00
winewill 7cc43b47c1 feat(desktop): add rollout and website publication workflow 2026-11-04 17:29:11 +08:00
winewill 0d03fb3ca3 Merge master into desktop channel version policy 2026-11-04 15:30:38 +08:00
winewill f823eb9c60 Merge pull request #7864 from deepseek-harness/feat/desktop-staging-percentage
feat(desktop): 支持发布表单配置更新灰度比例
2026-11-04 15:23:47 +08:00
winewill 08afd883d7 docs(desktop): scope build numbering to its version mode 2026-11-04 15:14:58 +08:00
winewill 90ff03beb7 Merge pull request #7777 from deepseek-harness/fix/desktop-artifact-zip-mtime
fix(desktop): 保留 Actions 安装包 ZIP 中的文件修改时间
2026-11-04 15:10:19 +08:00
winewill 1ffe1a71db Merge branch 'codex/desktop-artifact-parent-refresh' into fix/desktop-channel-version-policy
# Conflicts:
#	apps/desktop/packaging/README.i18n.yaml
2026-11-04 14:42:06 +08:00
winewill 16743ca088 docs(desktop): document archive tool failure diagnostics 2026-11-04 14:38:26 +08:00
winewill e1cd73e4de fix(desktop): type omitted rollout percentage explicitly 2026-11-04 14:35:43 +08:00
winewill 001bc22978 feat(desktop): configure staged rollout during publication 2026-11-04 14:34:45 +08:00
winewill 6bdaebb3ea Merge branch 'codex/desktop-artifact-parent-refresh' into fix/desktop-channel-version-policy 2026-11-04 14:29:02 +08:00
winewill 6447accb5f docs(desktop): clarify retained archive naming and timestamps 2026-11-04 14:28:46 +08:00
winewill e0e2c63a9c fix(desktop): bridge workflow modes for older sources 2026-11-04 13:57:19 +08:00
winewill d65fd521b5 fix(desktop): clarify workflow version mode names 2026-11-04 13:51:39 +08:00
winewill 4656d7bf5a Merge branch 'codex/desktop-artifact-parent-refresh' into fix/desktop-channel-version-policy 2026-11-04 13:38:31 +08:00
winewill c5219dcfb2 fix(desktop): validate archive settings before retained files 2026-11-04 13:38:16 +08:00
winewill fa302c8343 Merge pull request #7636 from deepseek-harness/build/desktop-publish-recovery
feat(desktop): 官网安装包发布恢复与 GitHub 产物归档拆分
2026-11-04 13:17:10 +08:00
winewill 83e1d6bcc4 Merge archive review fixes into channel version policy 2026-11-04 12:58:55 +08:00
winewill e2e7264585 fix(desktop): isolate archive tests and clarify retained timestamps 2026-11-04 12:58:15 +08:00
winewill 3952e9a08b Merge publication documentation review fixes into channel policy 2026-11-04 12:43:17 +08:00
winewill fb69466d62 Merge publication documentation review fixes 2026-11-04 12:42:48 +08:00
winewill 287a77525b docs(desktop): specify publication output failure boundaries 2026-11-04 12:42:10 +08:00
winewill 1c9cbf5a7e Merge publication review closeout into channel version policy 2026-11-04 11:54:43 +08:00
winewill eebc65428b Merge publication review closeout into artifact timestamp fix 2026-11-04 11:54:15 +08:00
winewill b8fd57ad43 fix(desktop): clarify publication retry limits and route evidence 2026-11-04 11:52:59 +08:00
winewill 152d0294c2 fix(desktop): decouple update channels from version suffixes 2026-11-04 11:06:11 +08:00
winewill 6ad048912e Merge current publication recovery into artifact timestamp fix
# Conflicts:
#	apps/desktop/packaging/README.i18n.yaml
#	apps/desktop/packaging/README.md
#	apps/desktop/packaging/README.zh.md
#	scripts/macos-package-workflow.spec.ts
#	scripts/windows-package-workflow.spec.ts
2026-11-04 11:05:13 +08:00
creatixchu 41beadfa2a fix(release): verify helper producers and preserve rerun artifacts 2026-11-03 17:09:19 +08:00
winewill df37050b48 Fail visibly when website preparation outputs are missing 2026-11-03 16:09:48 +08:00
winewill b941eded7c Retain completion evidence and refresh repaired website metadata 2026-11-03 15:39:11 +08:00
winewill 797b8b4455 Preserve installer filenames in fixed website downloads 2026-11-03 15:27:24 +08:00
winewill 8ecdc76b41 Merge master and align desktop publication recovery 2026-11-03 15:20:56 +08:00
creatixchu 8577f42832 fix(release): declare dependency-free packaging settings reader 2026-11-03 15:08:12 +08:00
creatixchu aa035e6845 feat(release): reuse CUA helper builds with matching source bytes 2026-11-03 15:05:26 +08:00
winewill a4135f1f2f fix(desktop): use the system ZIP writer and verify archive failures 2026-11-03 13:23:18 +08:00
winewill 3c46127816 Merge remote-tracking branch 'origin/master' into feat/desktop-update-channels 2026-11-03 13:20:42 +08:00
winewill 912e0383fb fix(desktop): preserve modification times in installer artifacts 2026-11-03 12:54:24 +08:00
winewill d2bd3f3893 feat(desktop): rename stable update channel consistently 2026-11-02 14:27:21 +08:00
winewill 70bfd4d516 fix(desktop): share website destination and clarify manual recovery 2026-10-30 18:39:22 +08:00