dsh-deeppilot 0.9.14 → 0.9.15

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/README.md CHANGED
@@ -32,6 +32,11 @@ Host on your own computer and does not replace or modify the DSH Web UI.
32
32
  - Connect over the LAN (TLS with a Host-issued certificate pinned during
33
33
  pairing) or the optional embedded Tailscale Funnel.
34
34
  - Receive live notifications and optional APNs notifications while offline.
35
+ - Quiet scheduled runs (DSH 0.2.2+): write a rule into a scheduled task's
36
+ prompt, such as "if everything is normal, don't notify me". The agent can
37
+ then skip that run's "task completed" notification with the
38
+ `deeppilot_skip_completion_notice` tool. Approvals, questions and errors
39
+ still notify, and tasks without such a rule notify on every run as before.
35
40
  - Self-update hint: the settings page footer shows the installed plugin
36
41
  version, with an inline "new version" link to the matching GitHub
37
42
  release when one exists (background check, stable releases only, no
@@ -65,9 +70,8 @@ dsh plugin --profile web add dsh-deeppilot
65
70
  dsh web
66
71
  ```
67
72
 
68
- After DSH restarts, open **Settings → DeepPilot**, enable the connection, show
69
- the pairing QR code, and scan it in the DeepPilot app. Below the QR code the same
70
- panel shows one copyable piece of pairing info (address, single-use code and
73
+ After DSH restarts, open **Settings → DeepPilot**, turn on **Allow phone connections**,
74
+ and click **Add phone** beside **Paired devices**, then scan the QR code in the app. The same panel also shows one copyable piece of pairing info (address, single-use code and
71
75
  certificate fingerprint) that can be pasted into the app in one step — useful for
72
76
  Simulator or when the camera is unavailable. Switching between the LAN and
73
77
  public address issues a matching new QR code and string immediately, with the
@@ -135,7 +139,15 @@ stored in the host registry and survive iPhone reconnects or changes to the
135
139
  system-reported name; saving an empty value restores the iPhone-reported
136
140
  default.
137
141
 
138
- The settings page's **Testing & troubleshooting** group has a `debug` toggle.
142
+ Each device's **More actions** control contains its fingerprint, rename action,
143
+ and deletion action; deletion still requires confirmation. Connection options,
144
+ connection help, diagnostic tools, and system information start collapsed.
145
+ Desktop secondary buttons are 28px high; custom action touch targets remain at
146
+ least 44px. **Add phone** uses DSH's built-in small outlined `Button`; all
147
+ toggles use its `Switch`. Native controls keep the host's appearance and sizing.
148
+ See [settings UI and validation](docs/SETTINGS_UI.md).
149
+
150
+ The settings page's **Diagnostic tools** group has a `debug` toggle.
139
151
  Turning it on prints per-frame and push diagnostics to the DSH host's terminal
140
152
  output (for example, the actual capability bits sent in `s2c.welcome`); it
141
153
  never prints pairing tokens, APNs tokens, or message content. The toggle is
package/README.zh-CN.md CHANGED
@@ -28,6 +28,9 @@
28
28
  - 局域网连接全程 TLS:插件自签证书,App 按配对二维码中的指纹固定信任;
29
29
  也可选用内嵌 Tailscale Funnel 远程连接;
30
30
  - 接收在线通知,以及可选的离线 APNs 推送;
31
+ - 计划任务按需提醒(DSH 0.2.2 起):在任务提示词里写明规则,例如"一切正常就不用提醒我",
32
+ Agent 即可通过 `deeppilot_skip_completion_notice` 工具跳过这一轮的「任务完成」通知;
33
+ 审批、提问和出错照常提醒,没写规则的任务照旧每轮提醒;
31
34
  - 更新提示:设置页底部显示当前插件版本,并在有新版本时附加一个指向
32
35
  对应 GitHub Release 的链接(后台静默检查,仅比较稳定版,不引入第
33
36
  三方依赖)。
@@ -56,8 +59,8 @@ dsh plugin --profile web add dsh-deeppilot
56
59
  dsh web
57
60
  ```
58
61
 
59
- DSH 重启后,打开 **设置 → DeepPilot**,启用连接并显示配对二维码,然后在
60
- DeepPilot App 中扫码。二维码下方同时显示一段可复制的「配对信息」(含地址、一次性配对码
62
+ DSH 重启后,打开 **设置 → DeepPilot**,开启“允许手机连接”,在“已配对设备”右侧
63
+ 点击“添加手机”,然后在 DeepPilot App 中扫码。配对面板中还显示一段可复制的「配对信息」(含地址、一次性配对码
61
64
  与证书指纹),在 App 里粘贴一次即可完成配对,适合模拟器或相机不可用时使用;在「内网 /
62
65
  公网」之间切换会立即为所选地址生成新的二维码与配对信息,面板保持展开。
63
66
 
@@ -114,7 +117,11 @@ DeepPilot 设置页提供“每个公网来源的连接上限”,默认 `8`,
114
117
  自定义名称;名称会保存在主机设备注册表中,即使 iPhone 重连或上报了新的系统名称
115
118
  也不会被覆盖。留空保存可恢复 iPhone 上报的默认名称。
116
119
 
117
- 设置页的“测试与故障排查”分组下有一个 `debug` 开关,打开后会在 DSH host 的
120
+ 设备行的“更多操作”可查看指纹、重命名或删除设备;删除仍需再次确认。
121
+ 连接选项、连接帮助、诊断工具和系统信息默认收起。桌面次要操作按钮高 28px,
122
+ 自有操作的触屏点击区域至少 44px。“添加手机”直接使用 DSH 内置 `Button` 的小号描边样式,所有开关使用内置 `Switch`;这些原生控件的外观与尺寸均沿用宿主。布局与验收方式见 [设置页说明](docs/SETTINGS_UI.md)。
123
+
124
+ 设置页的“诊断工具”分组下有一个 `debug` 开关,打开后会在 DSH host 的
118
125
  终端输出里打印逐帧与推送等诊断信息(例如 `s2c.welcome` 里实际发出的能力位),
119
126
  不会打印配对令牌、APNs token 或消息内容。该开关按连接快照,已建立的连接需要
120
127
  重连一次才按新值工作。
@@ -5,6 +5,39 @@
5
5
  > move the lower bound, at each `0.x` minor boundary, or when a host inside the
6
6
  > range breaks at runtime.
7
7
 
8
+ ## UI integration check — native settings controls (2026-11-05)
9
+
10
+ - **Runtime surface:** `@deepseek-ai/dsh-client-ui-primitives` is an implicit
11
+ browser baseline module. The installed frontend bundles for the supported
12
+ floor `0.2.1-rc.5` and local host `0.2.2-rc.1` both seed the module and export
13
+ `Switch`; the general settings page uses the same component.
14
+ - **Decision:** four DeepPilot settings switches use the host component with
15
+ `checked`, `disabled`, `label`, and `onChange(next)`. No switch CSS override,
16
+ runtime dependency, or explicit client injection is added. The exact floor
17
+ version is a development-only type/fixture dependency; the production bundle
18
+ keeps its host-module require. Compatibility declarations stay unchanged.
19
+ - **Scope:** frontend-only. Host activation metadata, production dependencies,
20
+ and the phone protocol are unchanged; this source/module-table check does
21
+ not claim phone integration or a published release.
22
+ - **Switch migration verification:** typecheck and build pass; the production bundle requires
23
+ the host primitives module. Unit tests: 721 pass, zero fail, one skip, one
24
+ existing TODO (a first run hit an unrelated push-test temporary-directory
25
+ cleanup race; the full rerun passed). Browser E2E: 21 pass, including official
26
+ switch style comparison, keyboard/mouse changes, disabled states, and config
27
+ writes. The real `0.2.2-rc.1` host at `127.0.0.1:3080` was reloaded: DeepPilot
28
+ renders the same switch/thumb classes as general settings, with a 36×20px
29
+ track and 16px thumb, and no custom pseudo-elements. Live network switches
30
+ were inspected without changing their values.
31
+ - **Add phone follow-up:** the same module supplies `Button` on both audited
32
+ frontend versions. The pairing toggle now uses `variant: 'outline'` and
33
+ `size: 'sm'` with a leading SVG icon; only its wrapper aligns it to the right.
34
+ Plugin button, font, focus, and touch-size overrides do not reach this native
35
+ control. Typecheck/build and unit tests pass (721 pass, zero fail, one skip,
36
+ one existing TODO); 22 browser E2E tests pass, including native button style
37
+ comparison and Enter/Space pairing toggles. The reloaded real rc.1 host
38
+ renders the official button/outline/sm classes at H28/R8 with 12px text.
39
+ No real pairing grant was issued during visual inspection.
40
+
8
41
  ## Audit record — `dsh-v0.2.2-rc.1` (rebuild of alpha.3, no runtime change)
9
42
 
10
43
  - **Release (2026-11-04):** `dsh-v0.2.2-rc.1`, now npm `next`; `latest` stays
@@ -188,6 +188,21 @@
188
188
  暂存流程与批准步骤已写入第二、三节与 `AGENTS.md`;工作流末尾核对在暂存模式下
189
189
  的标红问题本轮未改,留待下次发布前决定是否检测 staged 后按成功处理。
190
190
 
191
+ 12. `0.9.14` 的实际发布结果(2026-11-05):`release/0.9.14` 快进推到 `main`
192
+ (`40fe063..9ff31ba`),该提交的 CI(运行号 `41953217573`)与 CodeQL
193
+ (`41953216405`)均绿;附注标签 `v0.9.14` 指向
194
+ `9ff31ba16a50a7707d8de18e0a72cc166fb03f61`。`publish.yml` 运行 `41953700019`
195
+ (`latest`)**整次为绿**:末尾核对重试 12 次(约 3.5 分钟)后,暂存版本在此期间
196
+ 获批,核对通过——批准落在重试窗口内时不会标红,批准晚于窗口仍会按第 11 条标红。
197
+ 注册表 `latest = 0.9.14`;来源证明类型为 `https://slsa.dev/provenance/v1`、
198
+ `gitCommit` 为该提交、工作流引用 `refs/tags/v0.9.14`;69 个条目、解包
199
+ 131,580,166 字节,与本地 `npm pack --dry-run` 一致(压缩包 SHA1 因在 CI 重新打包
200
+ 而与本地预演不同)。随后在全新隔离 `DSH_HOME` 中从 npm 安装
201
+ `dsh-deeppilot@0.9.14`(真实目录,不是 link,无 peer 警告),用真实
202
+ `0.2.2-rc.1` 宿主启动:`--dump-config` 退出码 0、无跳过,插件自有端口
203
+ `/phone/health` 返回 200,`serverVersion` 为 `0.9.14`、`protocolVersion` 2、
204
+ `dataPlane: true`;GitHub Release 在这一步通过后才公开并标记 Latest。
205
+
191
206
  ## 五、官方资料
192
207
 
193
208
  1. [npm 可信发布配置与限制](https://docs.npmjs.com/trusted-publishers/)