Skip to content

Commit 00f4e7b

Browse files
committed
Release 0.7.38: fix Node 22.19 coverage fixture compatibility
Remove the stale relative source map from the patched in-memory Ink fixture. Reproduced the failure on Node 22.19.0 and verified all 1091 unit/component tests with 80.37% measured source coverage after the fix. The 0.7.37 workflow was cancelled before publication. Preserve its tag and publish the replacement from a new version with synchronized release documentation.
1 parent ebe223d commit 00f4e7b

12 files changed

Lines changed: 48 additions & 14 deletions

‎README.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ The [demo guide](docs/demo.md) summarizes DSCODE features, outlines a five-minut
5555

5656
## 🆕 What's new
5757

58-
**0.7.37** — Upgrades the terminal to Harness `0.2.0-rc.2` and Computer Use `0.3.3`, restores native reminder delivery and the `/schedule` catalog, and adds opt-in Atomic Mail MCP setup. Unconfigured or disabled Atomic Mail adds no tools or server instructions to model context. See the [release notes](docs/releases/0.7.37.md).
58+
**0.7.38** — Upgrades the terminal to Harness `0.2.0-rc.2` and Computer Use `0.3.3`, restores native reminder delivery and the `/schedule` catalog, and adds opt-in Atomic Mail MCP setup. Unconfigured or disabled Atomic Mail adds no tools or server instructions to model context. See the [release notes](docs/releases/0.7.38.md).
5959

6060
**0.7.36** — `dscode acp` connects ACP clients to the DSCODE agent preset, configured providers and client tool approvals. Install the npm `latest` launcher and configure your client with command `dscode` and arguments `["acp"]`. See the [ACP guide](docs/acp.md) for inherited protocol limits and the [release notes](docs/releases/0.7.36.md).
6161

@@ -122,7 +122,7 @@ The launcher checks installed bundles and Harness dependencies against the recom
122122

123123
An experimental combined Desktop package adds the DSCODE preset, custom-model and account settings, browser preview, durable session communication, cross-session memory and opt-in scheduling to the official application. **Settings → DSCODE → Schedules** manages tasks and enables delivery while Desktop stays open. Build and local installation instructions are in [Browser use](docs/browser-use.md#install-the-experimental-combined-desktop-package). Native installation, upgrade, removal and reinstallation with scheduling enabled, plus rendered account and scheduling controls, were checked on macOS Desktop 0.2.0-rc.2; qualification limits are covered in [Triggers](docs/triggers.md#experimental-desktop-scheduling). The package also includes an experimental [native Computer Use adapter](docs/computer-use.md); window observation and input still await qualification with macOS Accessibility permission. Durable [time context](docs/session-communication.md#time-context-for-delayed-work) gives DSCODE agents arrival times, relay waits and previous turn endings while keeping ordinary chat clear. Namespaced [Desktop diagnostics](docs/tui-commands.md#experimental-desktop-diagnostics) inspect the selected session, skills and Host MCP entries; matching user guides ship with the package. The [Desktop email inbox](docs/email.md#experimental-desktop-inbox) previews shared local mail, connects IMAP or Gmail OAuth, and adds a selected message to a DSCODE session. Background sync is opt-in; outgoing mail keeps the existing approval and receipt rules. The [Session usage sidebar](docs/session-metrics.md#experimental-desktop-usage) shows DSCODE cost, context, cache, request speed and per-turn estimates. The [Delegation board sidebar](docs/tui-commands.md#experimental-desktop-delegation-board) follows the selected main session’s tasks, dependencies, worktrees and verification evidence. The Desktop plugin is distributed separately from the terminal packages; terminal popups and terminal-only commands keep their existing UI.
124124

125-
The Desktop plugin uses the package name `@toddzheng024/dscode-desktop`. Version 0.7.35 removes bundled [Plugin Hub](docs/plugin-hub.md) UI, discovery tools and runtime dependencies; DSCODE remains listed in the Hub catalog. It targets Harness runtime 0.2.0-rc.2. In official **Plugins → Add plugin**, enter `@toddzheng024/dscode-desktop@0.7.37`, install, then choose **Enable now**. Fully quit and reopen Desktop after updating. Both `preview` and the default `latest` channel receive this verified preview release.
125+
The Desktop plugin uses the package name `@toddzheng024/dscode-desktop`. Version 0.7.35 removes bundled [Plugin Hub](docs/plugin-hub.md) UI, discovery tools and runtime dependencies; DSCODE remains listed in the Hub catalog. It targets Harness runtime 0.2.0-rc.2. In official **Plugins → Add plugin**, enter `@toddzheng024/dscode-desktop@0.7.38`, install, then choose **Enable now**. Fully quit and reopen Desktop after updating. Both `preview` and the default `latest` channel receive this verified preview release.
126126

127127
**Settings → DSCODE** groups setup, Models, Accounts and Schedules at the same level; **Plugins → DSCODE · Community** opens the same page. DSCODE browser tools are scoped to DSCODE sessions. Existing Desktop models/accounts work through the normal picker; optional provider settings use the native credential store. Enable **Show coding view** and **Agent presets**, then choose DSCODE for a new session after fully restarting.
128128

‎README.zh-CN.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ DSCODE 是基于 [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harn
5555

5656
## 🆕 最新变化
5757

58-
**0.7.37** — 终端升级到 Harness `0.2.0-rc.2` 和 Computer Use `0.3.3`,适配原生提醒投递与 `/schedule` 列表,并提供可选的 Atomic Mail MCP 配置。未配置或禁用时,不向模型上下文加入 Atomic Mail 工具和服务器指令。详见[发布说明](docs/releases/0.7.37.md)。
58+
**0.7.38** — 终端升级到 Harness `0.2.0-rc.2` 和 Computer Use `0.3.3`,适配原生提醒投递与 `/schedule` 列表,并提供可选的 Atomic Mail MCP 配置。未配置或禁用时,不向模型上下文加入 Atomic Mail 工具和服务器指令。详见[发布说明](docs/releases/0.7.38.md)。
5959

6060
**0.7.36** — `dscode acp` 让 ACP 客户端使用 DSCODE agent preset、已配置的模型服务和客户端工具审批。安装 npm `latest` 启动器后,将客户端命令配置为 `dscode`,参数为 `["acp"]`。协议支持范围见 [ACP 指南](docs/acp.md),详见[发布说明](docs/releases/0.7.36.md)。
6161

@@ -122,7 +122,7 @@ npm 启动器会核对已安装 bundle 与 Harness 依赖的推荐版本组合
122122

123123
实验性 Desktop 组合包可向官方应用添加 DSCODE 预设、自定义模型与账户设置、浏览器预览、持久化会话通信、跨会话记忆及按需启用的任务调度。**Settings → DSCODE → Schedules** 可管理任务,并在 Desktop 保持运行时投递。构建及本地安装步骤见[浏览器操作](docs/browser-use.md#install-the-experimental-combined-desktop-package)。启用调度后的原生安装、升级、移除和重新安装,以及账户和调度界面的实际交互,已在 macOS Desktop 0.2.0-rc.2 上验证;验证边界见[触发器](docs/triggers.md#experimental-desktop-scheduling)。该包还包含实验性的[原生 Computer Use 接入](docs/computer-use.md);窗口观察和输入操作仍待获得 macOS 辅助功能权限后验证。持久化的[时间上下文](docs/session-communication.md#time-context-for-delayed-work)会向 DSCODE agent 提供消息到达时间、转发等待时长和上一轮结束时间,普通聊天正文保持简洁。带独立命令前缀的 [Desktop 诊断](docs/tui-commands.md#experimental-desktop-diagnostics)可检查所选会话、技能与 Host MCP 条目,匹配版本的使用指南随包提供。[Desktop 邮件收件箱](docs/email.md#experimental-desktop-inbox)可预览共享本地邮件、连接 IMAP 或 Gmail OAuth,并将所选邮件加入 DSCODE 会话。背景同步需手动启用;发信沿用现有审批与回执规则。[Session usage 侧栏](docs/session-metrics.md#experimental-desktop-usage)展示 DSCODE 的费用、上下文、缓存、请求速度及逐回合估算。[Delegation board 侧栏](docs/tui-commands.md#experimental-desktop-delegation-board)展示所选主会话的任务、依赖、worktree 和验证依据。Desktop 插件与终端包分别分发;终端弹窗及终端专属命令继续使用现有界面。
124124

125-
Desktop 插件使用 `@toddzheng024/dscode-desktop` 包名。0.7.35 移除捆绑的 [Plugin Hub](docs/plugin-hub.md) 界面、发现工具和运行依赖,DSCODE 仍在 Hub 目录中展示。适用于 Harness runtime 0.2.0-rc.2。在官方 **Plugins → Add plugin** 中输入 `@toddzheng024/dscode-desktop@0.7.37`,安装后选择 **Enable now**。更新后需完全退出并重新打开 Desktop。`preview` 和默认 `latest` 分发入口均更新到这个经过验证的预览版。
125+
Desktop 插件使用 `@toddzheng024/dscode-desktop` 包名。0.7.35 移除捆绑的 [Plugin Hub](docs/plugin-hub.md) 界面、发现工具和运行依赖,DSCODE 仍在 Hub 目录中展示。适用于 Harness runtime 0.2.0-rc.2。在官方 **Plugins → Add plugin** 中输入 `@toddzheng024/dscode-desktop@0.7.38`,安装后选择 **Enable now**。更新后需完全退出并重新打开 Desktop。`preview` 和默认 `latest` 分发入口均更新到这个经过验证的预览版。
126126

127127
**Settings → DSCODE** 中的使用说明、Models、Accounts、Schedules 保持同级;**Plugins → DSCODE · Community** 打开相同页面。DSCODE 浏览器工具仅用于 DSCODE 会话。已有桌面模型和账户可直接在正常模型选择器中使用,额外提供方配置使用原生凭据存储。启用 **Show coding view** 和 **Agent presets**,完全重启后在新会话选择 DSCODE。
128128

‎docs/CHANGELOG.md‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,9 @@ Per-release notes live in [`docs/releases/`](releases/); the entries below summa
66

77
<!-- Add upcoming changes under Unreleased. -->
88

9-
## [0.7.37] - 2026-10-10
9+
## [0.7.38] - 2026-10-10
10+
11+
The 0.7.37 candidate was cancelled before publication after its Node 22.19.0 coverage check failed. This release includes that upgrade and the test-fixture fix below.
1012

1113
### Changed
1214

@@ -16,6 +18,7 @@ Per-release notes live in [`docs/releases/`](releases/); the entries below summa
1618
- Mount the native session controller and its host dependencies so reminders can resolve live and persisted sessions on Harness 0.2. The optional loopback login server also carries authenticated native Connection routes; no browser frontend is mounted.
1719
- Read `/schedule` from the native reminder catalog instead of historical session events, refresh it while open, and display daily, weekly and cron rules. Storage failures remain visible instead of appearing as an empty list.
1820
- Pin newly introduced Harness packages, including the shared DeepSeek account service required by clean bundle installations. Isolate patched app-boot, Goal and subagent provider packages in verification runtimes; check Ink patches in memory and use a deterministic clock for the OpenRouter timeout regression.
21+
- Remove the stale relative source-map directive from the in-memory Ink test fixture, which Node 22.19.0 cannot resolve against a data URL during coverage collection. The shipped Ink runtime is unaffected.
1922

2023
### Added
2124

‎docs/browser-use.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -646,7 +646,7 @@ and account settings, browser preview, durable session communication, cross-sess
646646
memory and opt-in task scheduling together. Ordinary builds remain private;
647647
the separate [release process](hub-distribution.md#desktop-release-candidate-and-publication)
648648
qualifies a public candidate for 0.2.0-rc.2. The Desktop preview is published on npm as
649-
`@toddzheng024/dscode-desktop@0.7.37`. The package does
649+
`@toddzheng024/dscode-desktop@0.7.38`. The package does
650650
not yet include all DSCODE Host services. Its experimental
651651
[native Computer Use adapter](computer-use.md) has passed helper and lifecycle
652652
checks; window observation, screenshots and input await qualification with

‎docs/hub-distribution.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ A user who already has dsh-hub installed can apply directly, but must use pnpm 1
3737

3838
Install the official Harness Desktop application with embedded runtime
3939
0.2.0-rc.2. In **Plugins → Add plugin**, enter
40-
`@toddzheng024/dscode-desktop@0.7.37`, review and install, then choose
40+
`@toddzheng024/dscode-desktop@0.7.38`, review and install, then choose
4141
**Enable now**. Fully quit and reopen Desktop, enable **Show coding view** and
4242
**Agent presets**, then create a DSCODE session and choose an existing model.
4343
The Desktop preview is qualified on macOS Apple Silicon. See
@@ -46,7 +46,7 @@ for archive checksums, migration and removal, and [Plugin Hub](plugin-hub.md)
4646
for the separation between DSCODE and Hub.
4747

4848
Version 0.7.34 fixes the 0.7.33 activation error “4 entries did not activate”
49-
when Desktop starts without `DSH_HOME`. Update to the current 0.7.37 package and
49+
when Desktop starts without `DSH_HOME`. Update to the current 0.7.38 package and
5050
enable it again; exporting a shell variable is unnecessary. Default Desktop
5151
state uses `~/.dsh`, as resolved by Harness. Publication now verifies installation
5252
and the affected components with that default environment.

‎docs/plugin-hub.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ sessions. Their installation handoff delegates to the official plugin manager;
2626
enabling, configuration and removal stay in **Settings → Plugins**.
2727

2828
Installing or reinstalling 0.7.34 will therefore not remove the bundled Hub.
29-
Update to `@toddzheng024/dscode-desktop@0.7.37` using the [Desktop installation guide](browser-use.md#install-the-experimental-combined-desktop-package).
29+
Update to `@toddzheng024/dscode-desktop@0.7.38` using the [Desktop installation guide](browser-use.md#install-the-experimental-combined-desktop-package).
3030
Fully quit and reopen Desktop after updating; an already running Host may keep
3131
the old plugin modules loaded.
3232

‎docs/releases/0.7.37.md‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# DSCODE 0.7.37
22

3+
Status: unpublished candidate. Its workflow was cancelled before publication after the Node 22.19.0 coverage job exposed a test-fixture source-map error. Superseded by [0.7.38](0.7.38.md).
4+
35
This release upgrades the terminal to Harness 0.2.0-rc.2, restores native reminder integration, and documents optional Atomic Mail MCP support.
46

57
- **Aligned runtime:** the terminal and vendored TUI now use Harness `0.2.0-rc.2`, matching the existing Desktop target. All installed Harness packages have exact override pins, including the newly introduced shared account service. Existing DSCODE runtime patches retain their exact-version guards. The DeepSeek compaction evaluator uses the new header-based authentication interface; this release does not move to the `0.2.1` alpha channel.

‎docs/releases/0.7.38.md‎

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# DSCODE 0.7.38
2+
3+
This release upgrades the terminal to Harness 0.2.0-rc.2, restores native reminder integration, and documents optional Atomic Mail MCP support.
4+
5+
The 0.7.37 candidate was cancelled before npm or Hub publication when its Node 22.19.0 coverage check failed. This version retains the upgrade and removes a stale source-map reference from the in-memory Ink test fixture. The failure was reproduced locally on Node 22.19.0; all 1,091 unit/component tests and coverage checks passed on that exact runtime after the fix. The original tag remains unchanged.
6+
7+
- **Aligned runtime:** the terminal and vendored TUI now use Harness `0.2.0-rc.2`, matching the existing Desktop target. All installed Harness packages have exact override pins, including the newly introduced shared account service. Existing DSCODE runtime patches retain their exact-version guards. The DeepSeek compaction evaluator uses the new header-based authentication interface; this release does not move to the `0.2.1` alpha channel.
8+
- **Native reminders:** the terminal mounts the session controller and its host dependencies so the scheduler can deliver to live sessions and resume persisted sessions while the Host runs. `/schedule` reads the current reminder catalog instead of historical session events, refreshes while open, displays daily, weekly and cron rules, and surfaces read failures. The optional loopback login server also carries authenticated native Connection routes; no browser frontend is mounted. The host services also work with that listener disabled.
9+
- **Computer Use compatibility:** update to `0.3.3`, whose declared compatibility includes the new Harness, and remove the retired Settings shim so the provider handles native configuration updates. The upstream saved-skill restoration limitation remains: after resuming a session, reload the Computer Use skill if its execution tools are absent. The activation tool remains available.
10+
- **Optional Atomic Mail:** the [email guide](../email.md) and disabled example MCP row show how to opt in. Unconfigured or disabled rows start no Atomic Mail process and add no tools or server instructions to model context. Disabling or removing a configured row removes its current tools and instructions; it does not erase previous conversation history. This is a separate MCP integration and does not replace the existing email tools.
11+
- **Reliable verification:** isolated test runtimes now carry the app-boot, Goal and subagent provider packages they exercise. Ink patch tests work in memory and OpenRouter timeout tests use a controlled clock. Fresh installs no longer depend on a previously patched developer tree. Installed-bundle probes include native live and cold-session reminder delivery.
12+
13+
Update with `npm install -g @toddzheng024/dscode@latest`, then run `dscode update` for an existing Hub profile. Fresh installs provision their matching profile on first launch. The Desktop extension remains qualified separately for official Harness 0.2.0-rc.2 on macOS Apple Silicon; its exact release archive is revalidated by the release workflow.
14+
15+
Verification of this change passed a clean `npm ci --ignore-scripts` and `npm run check`: lint, both TypeScript checks, 1,091 unit/component tests, native integration and package checks, and 63 offline evaluation tests. Measured first-party `.mjs` line coverage was 80.37%; the TypeScript terminal is outside that metric. Real Chrome checks passed. The macOS doctor passed preset activation, worktrees, shell persistence, approvals, compaction and session resume; an isolated run with `DSCODE_ACCOUNT_LOGIN=0` also passed live and cold-session reminder delivery. Computer Use helper 0.3.3 passed initialization and its health handshake. Linux arm64 on Node 22.23.3 passed all seven end-to-end stages, including installed bundle execution, failed-upgrade preservation and successful upgrade/rollback. Documentation, lint and tag-version checks are repeated for the version bump, and CI requalifies the exact versioned terminal and Desktop archives before publication.
16+
17+
Real provider inference, live OAuth login, interactive desktop actions and real mail delivery have no automated case in this release. Fixture success establishes runtime and transport behavior, not model quality or those external account flows.

‎docs/verification.md‎

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
Status: living verification record. The maintained gates below include installed terminal imports, real-browser checks and experimental upstream Desktop Host, shared Web UI and macOS Electron probes; dated sections retain the evidence and limits of their original runs.
44

5-
## Terminal Harness 0.2.0-rc.2 upgrade — 2026-10-10 (0.7.37)
5+
## Terminal Harness 0.2.0-rc.2 upgrade — 2026-10-10 (0.7.38)
66

77
The terminal now pins the complete Harness graph to `0.2.0-rc.2`, matching the
88
Desktop target. Computer Use moves to `0.3.3`; its compatibility declaration
@@ -48,6 +48,15 @@ Checks performed during the upgrade:
4848
The test fixtures now isolate app-boot, Goal and subagent providers; Ink patch
4949
tests operate in memory and the OpenRouter startup timeout uses a controlled
5050
clock. These checks no longer rely on a previously provisioned developer install.
51+
The first release candidate exposed an additional Node 22.19.0 coverage-loader
52+
error: the in-memory Ink module retained a relative source-map reference that
53+
cannot resolve against its data URL. The candidate was cancelled before
54+
publication. The fixture now drops that stale map directive; production Ink is
55+
unchanged, and the original failure was reproduced locally on Node 22.19.0.
56+
After the fixture fix, all 1,091 unit/component tests and full-inventory coverage
57+
passed locally on that exact runtime (80.37%). The first candidate's Node 24 and
58+
Linux CI jobs passed; its publish job never ran. Version 0.7.38 requalifies the
59+
replacement archives through the release workflow.
5160

5261
Limits: Computer Use `0.3.3` still reads the old tool-result format when restoring
5362
a previously loaded skill. Reloading the skill restores execution tools; the

0 commit comments

Comments
 (0)