@michengai/dsh-automation 0.1.62 → 0.1.63

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -6,6 +6,12 @@ Upcoming changes and recent published versions are listed below. Git tags and Gi
6
6
 
7
7
  ## Unreleased
8
8
 
9
+ ## 0.1.63 - 2026-10-12
10
+
11
+ - Fix Web startup on DSH `0.2.1-alpha.2` while retaining compatibility with the previously supported Host versions.
12
+ - Preserve the Host’s trusted-address configuration and register scheduled-task requests in the automation plugin’s own scope.
13
+ - Restart DSH and refresh the page after upgrading.
14
+
9
15
  ## 0.1.62 - 2026-10-12
10
16
 
11
17
  - Support DSH `0.2.1-alpha.2` while retaining all existing supported versions.
@@ -6,6 +6,12 @@
6
6
 
7
7
  ## 未发布
8
8
 
9
+ ## 0.1.63 - 2026-10-12
10
+
11
+ - 修复 DSH `0.2.1-alpha.2` 下的 Web 启动失败,继续兼容此前支持的宿主版本。
12
+ - 保留宿主的可信地址配置,定时任务请求在自动化插件自身作用域注册。
13
+ - 升级后请重启 DSH 并刷新页面。
14
+
9
15
  ## 0.1.62 - 2026-10-12
10
16
 
11
17
  - 支持 DSH `0.2.1-alpha.2`,继续兼容既有已支持版本。
package/README.md CHANGED
@@ -73,10 +73,10 @@ For a desktop workbench, download [DSH Codex Desktop](https://github.com/Micheng
73
73
 
74
74
  ## Prerequisites
75
75
 
76
- - The current source uses DSH `0.2.0-rc.2` for development and real Host compatibility tests, and declares support through `0.2.0-rc.2`. Back up automation storage and sessions in the Profile before upgrading the Host. `0.1.7` and `0.2.0` write V4 sessions, and V4 sessions cannot be read after downgrading.
77
- - Official DSH peerDependencies are exactly `0.1.2-rc.1 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.5-rc.3 || 0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2`. The `0.1.6` line is absent because it will not get a release candidate; hosts still on `0.1.6-alpha.1` or `0.1.6-alpha.2` need `0.1.7-rc.1` or later for the next plugin release. `@deepseek-ai/dsh-agent-presets` and `@deepseek-ai/dsh-agent-preset-registry` are not peers: the host install gate checks every `@deepseek-ai/dsh-*` peer against the running version and ignores `optional`. The old package has no `0.1.7` or `0.2.0` release, and the renamed package does not exist on older hosts. Scheduled tasks still use the host `agentPresets` service. Development dependencies are pinned to `0.2.0-rc.2`. Use one consistent official package version within each Host.
76
+ - The current source uses DSH `0.2.0-rc.2` for development and real Host compatibility tests, and declares support through `0.2.1-alpha.2`. Back up automation storage and sessions in the Profile before upgrading the Host. `0.1.7` and `0.2.0` write V4 sessions, and V4 sessions cannot be read after downgrading.
77
+ - Official DSH peerDependencies are exactly `0.1.2-rc.1 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.5-rc.3 || 0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-alpha.2`. The `0.1.6` line is absent because it will not get a release candidate; hosts still on `0.1.6-alpha.1` or `0.1.6-alpha.2` need `0.1.7-rc.1` or later for the next plugin release. `@deepseek-ai/dsh-agent-presets` and `@deepseek-ai/dsh-agent-preset-registry` are not peers: the host install gate checks every `@deepseek-ai/dsh-*` peer against the running version and ignores `optional`. The old package has no `0.1.7` or `0.2.0` release, and the renamed package does not exist on older hosts. Scheduled tasks still use the host `agentPresets` service. Development dependencies are pinned to `0.2.0-rc.2`. Use one consistent official package version within each Host.
78
78
  - Other versions are outside the declared compatibility range. Installers may warn, and strict peer validation rejects them. Extend and pass the version matrix before adding a new rc.
79
- - The Connection patch replaces the Web bundle's configured injection list with `[webServer, webRuntime]`; Loader still merges dependencies declared by the plugin source. Custom Hosts with additional configured injections must retain these two entries and their extra dependencies in a later Profile patch. This patch does not automatically merge other bundles' lists.
79
+ - The automation bundle does not override the official Connection entry. Each Host keeps its own startup dependencies, trusted-host expressions, and custom configuration; automation registers its RPC channel in its own plugin scope.
80
80
  - A working DeepSeek Harness Web installation with `dsh` available in PowerShell.
81
81
  - Examples use the `web` profile; replace it with the target profile.
82
82
  - Source installation and development require Node.js 22.19+. npm installation does not require running `npm install` in an arbitrary directory.
package/README.zh-CN.md CHANGED
@@ -73,10 +73,10 @@
73
73
 
74
74
  ## 前置条件
75
75
 
76
- - 当前源码以 DSH `0.2.0-rc.2` 为开发和真实宿主测试基线,并声明支持到 `0.2.0-rc.2`。升级宿主前备份 Profile 中的自动化存储和会话目录。`0.1.7` 和 `0.2.0` 写入 V4 会话,V4 会话不支持降级读取。
77
- - 官方 DSH peerDependencies 精确限定为 `0.1.2-rc.1 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.5-rc.3 || 0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2`。`0.1.6` 这条线不会再有候选版,所以不在名单里;仍停在 `0.1.6-alpha.1`、`0.1.6-alpha.2` 的宿主,安装下一版前需要升到 `0.1.7-rc.1` 或更新。`@deepseek-ai/dsh-agent-presets` 和 `@deepseek-ai/dsh-agent-preset-registry` 都不写入 peer:宿主安装门会拿每一个 `@deepseek-ai/dsh-*` peer 去对当前版本,并且不看 `optional`。旧包没有 `0.1.7` 或 `0.2.0` 发布版,改名后的包在旧宿主上也不存在。定时任务仍使用宿主的 `agentPresets` 服务。开发依赖固定为 `0.2.0-rc.2`。同一宿主中的官方包应使用一致版本。
76
+ - 当前源码以 DSH `0.2.0-rc.2` 为开发和真实宿主测试基线,并声明支持到 `0.2.1-alpha.2`。升级宿主前备份 Profile 中的自动化存储和会话目录。`0.1.7` 和 `0.2.0` 写入 V4 会话,V4 会话不支持降级读取。
77
+ - 官方 DSH peerDependencies 精确限定为 `0.1.2-rc.1 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.5-rc.3 || 0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-alpha.2`。`0.1.6` 这条线不会再有候选版,所以不在名单里;仍停在 `0.1.6-alpha.1`、`0.1.6-alpha.2` 的宿主,安装下一版前需要升到 `0.1.7-rc.1` 或更新。`@deepseek-ai/dsh-agent-presets` 和 `@deepseek-ai/dsh-agent-preset-registry` 都不写入 peer:宿主安装门会拿每一个 `@deepseek-ai/dsh-*` peer 去对当前版本,并且不看 `optional`。旧包没有 `0.1.7` 或 `0.2.0` 发布版,改名后的包在旧宿主上也不存在。定时任务仍使用宿主的 `agentPresets` 服务。开发依赖固定为 `0.2.0-rc.2`。同一宿主中的官方包应使用一致版本。
78
78
  - 其他版本不在声明兼容范围内;安装器可能提示 peer 警告,启用严格 peer 校验时会失败。支持新 rc 前需扩展版本矩阵并通过验证。
79
- - Connection 补丁替换 Web bundle 的配置注入列表为 `[webServer, webRuntime]`,Loader 仍会合并插件源码声明的依赖。自定义宿主若增加了其他配置注入,需在后置 Profile 补丁中保留这两项并补齐自定义依赖;本补丁不自动合并其他 bundle 的列表。
79
+ - 自动化 bundle 不覆盖官方 Connection 条目,各版宿主保留自己的启动依赖、可信地址表达式和自定义配置;自动化在自身插件作用域注册 RPC 路由。
80
80
  - 已可正常运行 DeepSeek Harness Web,且可在 PowerShell 中使用 `dsh`。
81
81
  - 以下示例使用 `web` profile;请替换为实际目标 profile。
82
82
  - 从源码安装或二次开发需要 Node.js 22.19+;仅从 npm 安装无需在任意目录执行 `npm install`。
package/cordis.patch.yml CHANGED
@@ -1,11 +1,5 @@
1
1
  # 一次安装同时挂载 Host 服务并发布 Web 客户端。
2
- # 新版 Connection 的独立 RPC 注册在自身作用域读取 webServer,需显式注入。
3
- # 此列表替换官方 Web bundle 的 [webRuntime];插件源码声明的依赖仍由 Loader 合并。
4
- - id: connection
5
- name: '@deepseek-ai/dsh-client-connection'
6
- inject:
7
- - webServer
8
- - webRuntime
2
+ # 不覆盖官方 Connection;各版宿主自行管理启动服务和可信地址配置。
9
3
  - insert:
10
4
  - id: dsh-automation
11
5
  name: '@michengai/dsh-automation'
package/lib/index.js CHANGED
@@ -22999,7 +22999,19 @@ async function snapshotValue(service, payload, signal) {
22999
22999
  };
23000
23000
  }
23001
23001
  function registerAutomationRpc(ctx, service) {
23002
- return ctx.connection.rpc.handle("/dsh-automation", async (endpoint, rawPayload, signal) => {
23002
+ const connection = ctx.connection;
23003
+ let prototype = connection;
23004
+ let rpc;
23005
+ while (prototype !== null) {
23006
+ const descriptor = Object.getOwnPropertyDescriptor(prototype, "rpc");
23007
+ if (descriptor !== void 0) {
23008
+ rpc = descriptor.get === void 0 ? connection.rpc : descriptor.get.call(connection);
23009
+ break;
23010
+ }
23011
+ prototype = Object.getPrototypeOf(prototype);
23012
+ }
23013
+ rpc ??= connection.rpc;
23014
+ return rpc.handle("/dsh-automation", async (endpoint, rawPayload, signal) => {
23003
23015
  try {
23004
23016
  const payload = record2(rawPayload, "payload");
23005
23017
  switch (endpoint) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@michengai/dsh-automation",
3
- "version": "0.1.62",
3
+ "version": "0.1.63",
4
4
  "description": "DSH Automation — 在独立 DSH Session 中按计划执行和管理编码任务 · Schedule and manage coding tasks in isolated DSH sessions",
5
5
  "type": "module",
6
6
  "packageManager": "pnpm@11.22.0",
@@ -63,7 +63,7 @@
63
63
  "typecheck": "tsc --noEmit -p tsconfig.json",
64
64
  "test": "node --import ./tests/register-dsh-stubs.mjs --import tsx --test tests/*.test.ts",
65
65
  "check": "pnpm typecheck && pnpm test && pnpm test:host && pnpm build",
66
- "test:host": "node --import tsx --test tests/host-compatibility.test.mjs",
66
+ "test:host": "node --import tsx --test tests/host-compatibility.test.mjs tests/connection-loader.test.mjs",
67
67
  "test:composition": "node --import tsx scripts/verify-sidebar-composition.mjs",
68
68
  "test:matrix": "pnpm build && node scripts/test-version-matrix.mjs"
69
69
  },
@@ -73,7 +73,7 @@
73
73
  "zod": "^4.1.5"
74
74
  },
75
75
  "peerDependencies": {
76
- "@deepseek-ai/cordis": ">=4.0.1 <5.0.0",
76
+ "@deepseek-ai/cordis": ">=4.0.1 <5.0.0 || 4.0.5-alpha.1",
77
77
  "@deepseek-ai/dsh-agent": "0.1.2-rc.1 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.5-rc.3 || 0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-alpha.2",
78
78
  "@deepseek-ai/dsh-agent-default-model": "0.1.2-rc.1 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.5-rc.3 || 0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-alpha.2",
79
79
  "@deepseek-ai/dsh-client-connection": "0.1.2-rc.1 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.5-rc.3 || 0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-alpha.2",
@@ -89,7 +89,7 @@
89
89
  "@deepseek-ai/dsh-tools": "0.1.2-rc.1 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.5-rc.3 || 0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-alpha.2",
90
90
  "@deepseek-ai/dsh-user-approval": "0.1.2-rc.1 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.5-rc.3 || 0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-alpha.2",
91
91
  "@deepseek-ai/dsh-workspace": "0.1.2-rc.1 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.5-rc.3 || 0.1.7-rc.1 || 0.1.7-rc.2 || 0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-alpha.2",
92
- "@deepseek-ai/schemastery": ">=3.18.1 <4.0.0",
92
+ "@deepseek-ai/schemastery": ">=3.18.1 <4.0.0 || 3.18.5-alpha.1",
93
93
  "react": "^18.2.0"
94
94
  },
95
95
  "peerDependenciesMeta": {