yudshj
|
0f96381169
|
fix(desktop): 打包冒烟检查不再要求 Office 技能提供 path
Office 技能 provider 只提供 resourceBase,从不设置可选字段 path,因此 smoke-runtime.ts 的判定在所有平台上都必然失败。判定改为只检查行为结果:4 个 Office 技能都能列出,且正文非空。
判定抽成 assertOfficeSkillsLoadable,由新增单测和 office-resources.e2e.ts 共用。判定与真实 provider 不一致时,PR 阶段的 E2E 就会失败。
Fixes #7998
|
2026-11-06 08:12:51 +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 |
|
yudshj
|
bfcc6d50d0
|
refactor(office): remove command launchers and shell compatibility changes
|
2026-10-12 12:45:09 +08:00 |
|
yudshj
|
379f9cd47b
|
feat(office): add progressive skills and direct dsoffice commands
|
2026-10-09 19:14:55 +08:00 |
|
kingwl
|
18f00612c6
|
fix(desktop): use shared pnpm in the installed CLI
|
2026-09-30 19:39:54 +08:00 |
|
kingwl
|
98de8c0925
|
refactor(desktop): share bundled primary-runtime pnpm
|
2026-09-30 13:47:40 +08:00 |
|
Yudong Han
|
5e25475857
|
fix(office): use bundled LibreOffice Kit 0.1.0 CLI across deployments (#4902)
* chore(office): upgrade libreoffice kit to 0.0.1-2
* fix(office): guide bounded CLI rendering and preview reuse
* chore(office): consume published LibreOffice Kit 0.0.3
* test(office): mock the complete LibreOffice converter interface
* chore(office): upgrade LibreOffice Kit to 0.0.4
* fix(office): expose bundled LibreOffice Kit 0.1.0 CLI across deployments
* fix(office): inspect Excel visuals only for layout tasks
* fix(office): allow compatible LibreOffice Kit 0.1 updates
* fix(office): stop Excel QA on blank previews and run regressions in CI
* fix(office): end workbook visual QA after an empty preview
|
2026-09-23 08:32:15 +00:00 |
|
07akioni
|
e0b5ab5ebd
|
Merge master into PR #4553 and resolve runtime helper import
|
2026-09-21 13:39:09 +08:00 |
|
07akioni
|
552bf8a869
|
Merge master into desktop Office ASAR fix
|
2026-09-20 14:00:04 +08:00 |
|
imccyu
|
9fd0a5ad52
|
refactor(boot): keep runtime-only profile resolution
|
2026-09-19 13:29:13 +08:00 |
|
07akioni
|
54d46ad4d4
|
fix(desktop): unpack and verify native Office conversion
|
2026-09-18 16:25:29 +08:00 |
|
winewill
|
3d2876f046
|
Run packaged smoke with production profile resolution
|
2026-09-17 21:31:32 +08:00 |
|
winewill
|
5a409fc771
|
fix(desktop): sign all Windows native dependencies before packaging
|
2026-09-17 21:31:31 +08:00 |
|
07akioni
|
bebf88de4f
|
Use Electron Node runtime and replace Windows installations by directory
|
2026-09-11 15:52:05 +08:00 |
|
07akioni
|
8c2fa73ceb
|
refactor(desktop): share profile initialization and plugin management
|
2026-09-10 22:44:52 +08:00 |
|
07akioni
|
e84a4e857e
|
refactor(desktop): run shared Web UI in a thin Electron shell
|
2026-09-10 22:08:33 +08:00 |
|
07akioni
|
8e4d3bab9f
|
feat: 优化打包方式、启动速度
|
2026-09-08 16:39:17 +08:00 |
|