dsh-zen-remote 2.3.11 → 2.4.0

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.
Files changed (244) hide show
  1. package/CHANGELOG.md +39 -78
  2. package/README.md +94 -84
  3. package/README.zh-CN.md +90 -81
  4. package/bin/zen-remote.mjs +5 -0
  5. package/docs/interface.md +6 -6
  6. package/docs/remote-access.en.md +6 -4
  7. package/docs/remote-access.md +6 -4
  8. package/dsh-push.mjs +96 -10
  9. package/lib/adapters/dsh-better-sidebar/index.js +7 -3
  10. package/lib/adapters/dsh-better-sidebar/index.js.map +1 -1
  11. package/lib/admin-routes.js +10 -2
  12. package/lib/admin-routes.js.map +1 -1
  13. package/lib/cli/args.js +251 -0
  14. package/lib/cli/args.js.map +1 -0
  15. package/lib/cli/bootstrap.js +449 -0
  16. package/lib/cli/bootstrap.js.map +1 -0
  17. package/lib/cli/command-setup.js +484 -0
  18. package/lib/cli/command-setup.js.map +1 -0
  19. package/lib/cli/commands-client.js +359 -0
  20. package/lib/cli/commands-client.js.map +1 -0
  21. package/lib/cli/commands-host.js +1108 -0
  22. package/lib/cli/commands-host.js.map +1 -0
  23. package/lib/cli/commands-status.js +279 -0
  24. package/lib/cli/commands-status.js.map +1 -0
  25. package/lib/cli/config-writer.js +334 -0
  26. package/lib/cli/config-writer.js.map +1 -0
  27. package/lib/cli/context.js +10 -0
  28. package/lib/cli/context.js.map +1 -0
  29. package/lib/cli/i18n.js +620 -0
  30. package/lib/cli/i18n.js.map +1 -0
  31. package/lib/cli/ipc-client.js +160 -0
  32. package/lib/cli/ipc-client.js.map +1 -0
  33. package/lib/cli/ipc-server.js +464 -0
  34. package/lib/cli/ipc-server.js.map +1 -0
  35. package/lib/cli/main.js +245 -0
  36. package/lib/cli/main.js.map +1 -0
  37. package/lib/cli/qr-terminal.js +48 -0
  38. package/lib/cli/qr-terminal.js.map +1 -0
  39. package/lib/client-data/qr.js +286 -0
  40. package/lib/client-data/qr.js.map +1 -0
  41. package/lib/client-routes.js +308 -25
  42. package/lib/client-routes.js.map +1 -1
  43. package/lib/client.js +1013 -229
  44. package/lib/config.js +50 -12
  45. package/lib/config.js.map +1 -1
  46. package/lib/debug-report.js +28 -1
  47. package/lib/debug-report.js.map +1 -1
  48. package/lib/fetch-route-intercept.js +334 -26
  49. package/lib/fetch-route-intercept.js.map +1 -1
  50. package/lib/index.js +564 -363
  51. package/lib/index.js.map +1 -1
  52. package/lib/intercept.js +1833 -280
  53. package/lib/intercept.js.map +1 -1
  54. package/lib/lan-gate-server.cjs +36 -10
  55. package/lib/merge-streams.js +103 -11
  56. package/lib/merge-streams.js.map +1 -1
  57. package/lib/plugin-route-intercept.js +93 -63
  58. package/lib/plugin-route-intercept.js.map +1 -1
  59. package/lib/relay-access.js +8 -1
  60. package/lib/relay-access.js.map +1 -1
  61. package/lib/relay-client.js +133 -4
  62. package/lib/relay-client.js.map +1 -1
  63. package/lib/relay-pool.js +275 -0
  64. package/lib/relay-pool.js.map +1 -0
  65. package/lib/relay-server.js +269 -17
  66. package/lib/relay-server.js.map +1 -1
  67. package/lib/restart-fields.js +6 -4
  68. package/lib/restart-fields.js.map +1 -1
  69. package/lib/share-store.js +65 -27
  70. package/lib/share-store.js.map +1 -1
  71. package/lib/state-store.js +400 -0
  72. package/lib/state-store.js.map +1 -0
  73. package/lib/types/adapters/dsh-better-sidebar/index.d.ts +3 -2
  74. package/lib/types/adapters/dsh-better-sidebar/index.d.ts.map +1 -1
  75. package/lib/types/admin-routes.d.ts.map +1 -1
  76. package/lib/types/cli/args.d.ts +78 -0
  77. package/lib/types/cli/args.d.ts.map +1 -0
  78. package/lib/types/cli/bootstrap.d.ts +170 -0
  79. package/lib/types/cli/bootstrap.d.ts.map +1 -0
  80. package/lib/types/cli/command-setup.d.ts +72 -0
  81. package/lib/types/cli/command-setup.d.ts.map +1 -0
  82. package/lib/types/cli/commands-client.d.ts +36 -0
  83. package/lib/types/cli/commands-client.d.ts.map +1 -0
  84. package/lib/types/cli/commands-host.d.ts +82 -0
  85. package/lib/types/cli/commands-host.d.ts.map +1 -0
  86. package/lib/types/cli/commands-status.d.ts +46 -0
  87. package/lib/types/cli/commands-status.d.ts.map +1 -0
  88. package/lib/types/cli/config-writer.d.ts +92 -0
  89. package/lib/types/cli/config-writer.d.ts.map +1 -0
  90. package/lib/types/cli/context.d.ts +39 -0
  91. package/lib/types/cli/context.d.ts.map +1 -0
  92. package/lib/types/cli/i18n.d.ts +32 -0
  93. package/lib/types/cli/i18n.d.ts.map +1 -0
  94. package/lib/types/cli/ipc-client.d.ts +83 -0
  95. package/lib/types/cli/ipc-client.d.ts.map +1 -0
  96. package/lib/types/cli/ipc-server.d.ts +113 -0
  97. package/lib/types/cli/ipc-server.d.ts.map +1 -0
  98. package/lib/types/cli/main.d.ts +57 -0
  99. package/lib/types/cli/main.d.ts.map +1 -0
  100. package/lib/types/cli/qr-terminal.d.ts +17 -0
  101. package/lib/types/cli/qr-terminal.d.ts.map +1 -0
  102. package/lib/types/client/RemoteStatusIcon.d.ts.map +1 -1
  103. package/lib/types/client/current-session-report.d.ts +4 -0
  104. package/lib/types/client/current-session-report.d.ts.map +1 -1
  105. package/lib/types/client/effects/model-group-side.d.ts.map +1 -1
  106. package/lib/types/client/effects/remote-session.d.ts.map +1 -1
  107. package/lib/types/client/locales.d.ts +47 -3
  108. package/lib/types/client/locales.d.ts.map +1 -1
  109. package/lib/types/client/settings/SettingsSection.d.ts.map +1 -1
  110. package/lib/types/client/settings/settings-css.d.ts +1 -1
  111. package/lib/types/client/settings/settings-css.d.ts.map +1 -1
  112. package/lib/types/client/styles/remote-session.css.d.ts +1 -1
  113. package/lib/types/client/styles/remote-session.css.d.ts.map +1 -1
  114. package/lib/types/client/wizard/GatewayWizard.d.ts.map +1 -1
  115. package/lib/types/client/wizard/cards/ProxyCard.d.ts.map +1 -1
  116. package/lib/types/client/wizard/wizard-css.d.ts +1 -1
  117. package/lib/types/client/wizard/wizard-css.d.ts.map +1 -1
  118. package/lib/types/client-data/model-group-side.d.ts +23 -2
  119. package/lib/types/client-data/model-group-side.d.ts.map +1 -1
  120. package/lib/types/client-data/remote-status.d.ts +47 -1
  121. package/lib/types/client-data/remote-status.d.ts.map +1 -1
  122. package/lib/types/client-data/settings-form.d.ts +85 -1
  123. package/lib/types/client-data/settings-form.d.ts.map +1 -1
  124. package/lib/types/client-data/wizard.d.ts +56 -1
  125. package/lib/types/client-data/wizard.d.ts.map +1 -1
  126. package/lib/types/client-routes.d.ts +25 -1
  127. package/lib/types/client-routes.d.ts.map +1 -1
  128. package/lib/types/config.d.ts +40 -14
  129. package/lib/types/config.d.ts.map +1 -1
  130. package/lib/types/debug-report.d.ts.map +1 -1
  131. package/lib/types/fetch-route-intercept.d.ts +66 -8
  132. package/lib/types/fetch-route-intercept.d.ts.map +1 -1
  133. package/lib/types/index.d.ts +9 -2
  134. package/lib/types/index.d.ts.map +1 -1
  135. package/lib/types/intercept.d.ts +72 -10
  136. package/lib/types/intercept.d.ts.map +1 -1
  137. package/lib/types/merge-streams.d.ts +79 -1
  138. package/lib/types/merge-streams.d.ts.map +1 -1
  139. package/lib/types/plugin-route-intercept.d.ts +25 -9
  140. package/lib/types/plugin-route-intercept.d.ts.map +1 -1
  141. package/lib/types/relay-access.d.ts +3 -1
  142. package/lib/types/relay-access.d.ts.map +1 -1
  143. package/lib/types/relay-client.d.ts +23 -2
  144. package/lib/types/relay-client.d.ts.map +1 -1
  145. package/lib/types/relay-pool.d.ts +148 -0
  146. package/lib/types/relay-pool.d.ts.map +1 -0
  147. package/lib/types/relay-server.d.ts +30 -3
  148. package/lib/types/relay-server.d.ts.map +1 -1
  149. package/lib/types/restart-fields.d.ts +5 -5
  150. package/lib/types/restart-fields.d.ts.map +1 -1
  151. package/lib/types/share-store.d.ts.map +1 -1
  152. package/lib/types/state-store.d.ts +179 -0
  153. package/lib/types/state-store.d.ts.map +1 -0
  154. package/lib/types/upload-limits.d.ts +15 -0
  155. package/lib/types/upload-limits.d.ts.map +1 -1
  156. package/lib/types/virtual-id.d.ts +21 -0
  157. package/lib/types/virtual-id.d.ts.map +1 -1
  158. package/lib/types/wizard/probe.d.ts.map +1 -1
  159. package/lib/types/wizard/proxy-snippets.d.ts +3 -0
  160. package/lib/types/wizard/proxy-snippets.d.ts.map +1 -1
  161. package/lib/types/wizard/routes.d.ts +1 -0
  162. package/lib/types/wizard/routes.d.ts.map +1 -1
  163. package/lib/types/wizard/status.d.ts +9 -0
  164. package/lib/types/wizard/status.d.ts.map +1 -1
  165. package/lib/types/wizard/verify.d.ts +3 -0
  166. package/lib/types/wizard/verify.d.ts.map +1 -1
  167. package/lib/upload-limits.js +15 -0
  168. package/lib/upload-limits.js.map +1 -1
  169. package/lib/virtual-id.js +60 -0
  170. package/lib/virtual-id.js.map +1 -1
  171. package/lib/wizard/probe.js +46 -1
  172. package/lib/wizard/probe.js.map +1 -1
  173. package/lib/wizard/proxy-snippets.js +14 -1
  174. package/lib/wizard/proxy-snippets.js.map +1 -1
  175. package/lib/wizard/routes.js +23 -4
  176. package/lib/wizard/routes.js.map +1 -1
  177. package/lib/wizard/status.js +21 -0
  178. package/lib/wizard/status.js.map +1 -1
  179. package/lib/wizard/verify.js +31 -8
  180. package/lib/wizard/verify.js.map +1 -1
  181. package/package.json +8 -4
  182. package/pwa/icons/badge-96.png +0 -0
  183. package/pwa/icons/badge.svg +1 -0
  184. package/pwa/manifest.json +2 -1
  185. package/pwa/sw.js +3 -1
  186. package/scripts/check-debug-report.mjs +41 -1
  187. package/scripts/check-settings-form.mjs +14 -3
  188. package/scripts/check-settings-view.mjs +247 -0
  189. package/scripts/check-wizard-ui.mjs +37 -0
  190. package/src/adapters/dsh-better-sidebar/index.ts +7 -3
  191. package/src/admin-routes.ts +10 -2
  192. package/src/cli/args.ts +289 -0
  193. package/src/cli/bootstrap.ts +569 -0
  194. package/src/cli/command-setup.ts +540 -0
  195. package/src/cli/commands-client.ts +369 -0
  196. package/src/cli/commands-host.ts +1127 -0
  197. package/src/cli/commands-status.ts +296 -0
  198. package/src/cli/config-writer.ts +354 -0
  199. package/src/cli/context.ts +38 -0
  200. package/src/cli/i18n.ts +645 -0
  201. package/src/cli/ipc-client.ts +216 -0
  202. package/src/cli/ipc-server.ts +531 -0
  203. package/src/cli/main.ts +285 -0
  204. package/src/cli/qr-terminal.ts +49 -0
  205. package/src/client/RemoteStatusIcon.tsx +4 -1
  206. package/src/client/current-session-report.ts +28 -4
  207. package/src/client/effects/model-group-side.ts +19 -5
  208. package/src/client/effects/remote-session.ts +26 -6
  209. package/src/client/locales.ts +96 -6
  210. package/src/client/settings/SettingsSection.tsx +287 -92
  211. package/src/client/settings/settings-css.ts +18 -0
  212. package/src/client/styles/remote-session.css.ts +15 -1
  213. package/src/client/wizard/GatewayWizard.tsx +470 -109
  214. package/src/client/wizard/cards/ProxyCard.tsx +2 -1
  215. package/src/client/wizard/wizard-css.ts +23 -0
  216. package/src/client-data/model-group-side.ts +37 -10
  217. package/src/client-data/remote-status.ts +112 -17
  218. package/src/client-data/settings-form.ts +164 -8
  219. package/src/client-data/wizard.ts +112 -2
  220. package/src/client-routes.ts +334 -26
  221. package/src/config.ts +62 -16
  222. package/src/debug-report.ts +27 -1
  223. package/src/fetch-route-intercept.ts +381 -32
  224. package/src/index.ts +566 -367
  225. package/src/intercept.ts +1866 -286
  226. package/src/merge-streams.ts +155 -10
  227. package/src/plugin-route-intercept.ts +120 -71
  228. package/src/relay-access.ts +14 -3
  229. package/src/relay-client.ts +163 -5
  230. package/src/relay-pool.ts +387 -0
  231. package/src/relay-server.ts +312 -16
  232. package/src/restart-fields.ts +6 -4
  233. package/src/share-store.ts +59 -26
  234. package/src/state-store.ts +428 -0
  235. package/src/upload-limits.ts +16 -0
  236. package/src/virtual-id.ts +57 -0
  237. package/src/wizard/probe.ts +54 -2
  238. package/src/wizard/proxy-snippets.ts +17 -2
  239. package/src/wizard/routes.ts +24 -5
  240. package/src/wizard/status.ts +28 -0
  241. package/src/wizard/verify.ts +33 -11
  242. package/AGENTS.md +0 -185
  243. package/docs/adr/0001-plugin-bridge-forwards-plugin-routes.md +0 -15
  244. package/docs/adr/0002-relay-emulates-websocket.md +0 -8
@@ -1 +1 @@
1
- {"version":3,"file":"wizard.d.ts","sourceRoot":"","sources":["../../../src/client-data/wizard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wizard.d.ts","sourceRoot":"","sources":["../../../src/client-data/wizard.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,7 @@ import type { CurrentSessionRead, InterceptDiagnostics } from './intercept.js';
31
31
  import type { PluginRouteInterceptDiagnostics } from './plugin-route-intercept.js';
32
32
  import type { BridgeStatus } from './plugin-bridge.js';
33
33
  import type { RelayClient } from './relay-client.js';
34
+ import type { RelayPool } from './relay-pool.js';
34
35
  /** Prefix all client routes live under (one webServer prefix registration). */
35
36
  export declare const CLIENT_ROUTE_PREFIX = "/_dsh/zen-remote/client";
36
37
  /** POST `{serverUrl, code, name}`: redeem a desktop pairing code. */
@@ -84,6 +85,12 @@ export declare const CLIENT_UNSHARE_ROUTE = "/_dsh/zen-remote/client/unshare";
84
85
  * means a readable signal says nothing is open; the sink stores the value
85
86
  * and re-judges the mergers immediately. */
86
87
  export declare const CLIENT_CURRENT_SESSION_ROUTE = "/_dsh/zen-remote/client/current-session";
88
+ /** POST `{entryId?: string, all?: boolean}` (MS-5): remove one paired server
89
+ * by its entry id, or every paired server at once (`all: true`). The paired
90
+ * list lives in `zen-remote-state.json`; this route goes through the pool so
91
+ * the live clients stop with their records. Pool-mode only — a mount without
92
+ * a pool has no paired list to edit and answers the unknown-path 404. */
93
+ export declare const CLIENT_UNPAIR_ROUTE = "/_dsh/zen-remote/client/unpair";
87
94
  /** Prefix of the plain-HTTP relay routes (T41b):
88
95
  * `GET ${CLIENT_HTTP_ROUTE_PREFIX}<route>?<query>` relays one intercepted
89
96
  * `/api/<route>` call (the fetch wrapper's rewrites land here) to the
@@ -113,6 +120,21 @@ export interface ClientHandlerOptions {
113
120
  * never connected, so the settings page still gets a fresh answer while
114
121
  * the startup `connect()` is still unpaired. */
115
122
  getRelayClient?: () => RelayClient | undefined;
123
+ /** MS-5 POOL mode: the multi-server relay pool. When present it REPLACES
124
+ * the row-driven single-client facts everywhere: the paired list (not the
125
+ * row's serverUrl/deviceToken) is the truth, claim pairs straight into the
126
+ * pool (the token never reaches the browser), unpair/reconnect address
127
+ * pool entries, and status / remote-status report the whole list (the
128
+ * top level keeps the FIRST entry's fields so the existing page keeps
129
+ * rendering). The single-`getRelayClient` form above stays exactly as it
130
+ * was for the old wiring and the tests. */
131
+ pool?: RelayPool;
132
+ /** MS-5: the PB-2 bridge verdict for ONE pool entry, computed PER CALL off
133
+ * that entry's own handshake table and connection state — per-server
134
+ * isolation for the status / remote-status bodies. Undefined (old tests,
135
+ * the unwired host mount): every per-server `pluginBridge` / per-server
136
+ * `bridgedPlugins` list reads `[]`. */
137
+ getPluginBridgeStatusForServer?: (serverId: string | undefined, client: RelayClient) => BridgeStatus[];
116
138
  /** The typert interception's diagnostics (T23b-1), read live per request.
117
139
  * Shapes, counters and failure codes only — never a token. Undefined when
118
140
  * this composition never even attempted an install (no typertGateway). */
@@ -147,7 +169,9 @@ export interface ClientHandlerOptions {
147
169
  * mount's remoteStatusOnly wall 404s the route before this matters, and
148
170
  * a client handler WITHOUT the sink answers the same 404 (no sink, no
149
171
  * route). */
150
- onCurrentSession?: (read: CurrentSessionRead) => void;
172
+ onCurrentSession?: (read: CurrentSessionRead, reportedLang?: 'zh' | 'en') => void;
173
+ /** Language for route error messages (`'zh'` default, `'en'` English). */
174
+ lang?: 'zh' | 'en' | (() => 'zh' | 'en') | undefined;
151
175
  /** CU-3, the debug-report route's inputs — all optional; the route answers
152
176
  * its 404-shaped refusal without them (an unwired composition must not
153
177
  * pretend to have diagnostics). Wired on BOTH role mounts.
@@ -1 +1 @@
1
- {"version":3,"file":"client-routes.d.ts","sourceRoot":"","sources":["../../src/client-routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client-routes.d.ts","sourceRoot":"","sources":["../../src/client-routes.ts"],"names":[],"mappings":"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"}
@@ -32,9 +32,11 @@ import z from '@deepseek-ai/schemastery';
32
32
  export type ConfigSource = 'env' | 'row' | 'file' | 'default';
33
33
  /** The effective configuration one resolved value set, defaults included. */
34
34
  export interface ZenRemoteConfig {
35
- /** Which half of the plugin runs in this DSH process; anything the layers
36
- * leave unresolved means `'host'` (see {@link resolveRole}). */
37
- role: 'host' | 'client';
35
+ /** Which half of the plugin runs in this DSH process. `'host'` serves the
36
+ * gateway and never dials out; `'client'` dials one server and serves no
37
+ * gateway; `'peer'` (MS Phase 2) does both. Anything the layers leave
38
+ * unresolved means `'host'` (see {@link resolveRole}). */
39
+ role: 'host' | 'client' | 'peer';
38
40
  /** Port the gateway child listens on. */
39
41
  port: number;
40
42
  /** Bind address of the gateway child. */
@@ -60,6 +62,12 @@ export interface ZenRemoteConfig {
60
62
  pushTurnEnd: boolean;
61
63
  /** Register the model-facing `push_notify` tool. */
62
64
  pushTool: boolean;
65
+ /** Master switch for session notifications: when false, disables all push
66
+ * listeners and does not register push_notify. */
67
+ pushEnabled: boolean;
68
+ /** Include the source session name on the first line of push notification
69
+ * bodies. */
70
+ pushSessionName: boolean;
63
71
  /** Server display name, at most {@link SERVER_NAME_MAX} characters. */
64
72
  serverName: string;
65
73
  /** Idle-sleep window of a remote-enabled session: after this many hours
@@ -127,18 +135,32 @@ export declare function resolveConfig(row: unknown, file: Record<string, unknown
127
135
  */
128
136
  export declare function readFileConfig(env?: NodeJS.ProcessEnv): Record<string, unknown>;
129
137
  /**
130
- * The normalized role behind a row's `role` knob. Anything but the exact
131
- * string `'client'` means host, so a typo degrades to the full plugin rather
132
- * than silently dropping the gateway and push halves. The value is read
133
- * through {@link unwrapVolatile} first: since T17 every row field arrives as
134
- * a `{ get() }` live reference, and comparing the wrapper itself against
135
- * `'client'` would always answer host (T17b). Resolution-order note:
136
- * {@link resolveConfig} validates each layer against the two-member enum
137
- * first, so an invalid row role can still be rescued by the file layer; this
138
- * function answers the final merged value. Kept on the main entry's export
139
- * surface for test/role-wiring.test.cjs.
138
+ * The normalized role behind a row's `role` knob. Only the exact strings
139
+ * `'client'` and `'peer'` mean those roles — everything else degrades to
140
+ * host, so a typo runs the full plugin rather than silently dropping the
141
+ * gateway and push halves. The value is read through {@link unwrapVolatile}
142
+ * first: since T17 every row field arrives as a `{ get() }` live reference,
143
+ * and comparing the wrapper itself against a role string would always answer
144
+ * host (T17b). Resolution-order note: {@link resolveConfig} validates each
145
+ * layer against the enum first, so an invalid row role can still be rescued
146
+ * by the file layer; this function answers the final merged value. Kept on
147
+ * the main entry's export surface for test/role-wiring.test.cjs.
140
148
  */
141
- export declare function resolveRole(row: unknown): 'host' | 'client';
149
+ export declare function resolveRole(row: unknown): 'host' | 'client' | 'peer';
150
+ /**
151
+ * Whether the role serves remote access to OTHER machines: host and peer do
152
+ * (the gateway, relay and push halves mount), a pure client does not. The
153
+ * role-gate the wiring reads INSTEAD of a `=== 'host'` compare, so a peer
154
+ * deploy gets the serving halves without every call site growing a third
155
+ * branch (MS Phase 2 wires it through).
156
+ */
157
+ export declare function servesRole(role: 'host' | 'client' | 'peer'): boolean;
158
+ /**
159
+ * Whether the role dials OUT to paired servers: client and peer do (the
160
+ * relay client / pool), a pure host has nothing to dial. {@link servesRole}'s
161
+ * counterpart.
162
+ */
163
+ export declare function connectsRole(role: 'host' | 'client' | 'peer'): boolean;
142
164
  /**
143
165
  * The DSH loader's config schema for the plugin row: what the settings form
144
166
  * renders and what it hands `apply()`. Every field is `z.any()` on purpose —
@@ -185,6 +207,8 @@ export declare const Config: z<Schemastery.ObjectS<NoInfer<{
185
207
  pushSummary: z<any, any, "volatile">;
186
208
  pushTurnEnd: z<any, any, "volatile">;
187
209
  pushTool: z<any, any, "volatile">;
210
+ pushEnabled: z<any, any, "volatile">;
211
+ pushSessionName: z<any, any, "volatile">;
188
212
  serverName: z<any, any, "volatile">;
189
213
  idleHours: z<any, any, "volatile">;
190
214
  autoShareNewSessions: z<any, any, "volatile">;
@@ -215,6 +239,8 @@ export declare const Config: z<Schemastery.ObjectS<NoInfer<{
215
239
  pushSummary: z<any, any, "volatile">;
216
240
  pushTurnEnd: z<any, any, "volatile">;
217
241
  pushTool: z<any, any, "volatile">;
242
+ pushEnabled: z<any, any, "volatile">;
243
+ pushSessionName: z<any, any, "volatile">;
218
244
  serverName: z<any, any, "volatile">;
219
245
  idleHours: z<any, any, "volatile">;
220
246
  autoShareNewSessions: z<any, any, "volatile">;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAKH,OAAO,CAAC,MAAM,0BAA0B,CAAA;AAExC,mEAAmE;AACnE,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,CAAA;AAK7D,6EAA6E;AAC7E,MAAM,WAAW,eAAe;IAC9B;oEACgE;IAChE,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAA;IACvB,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAA;IACZ,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAA;IACZ;qEACiE;IACjE,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,yDAAyD;IACzD,SAAS,EAAE,MAAM,CAAA;IACjB,sEAAsE;IACtE,cAAc,EAAE,MAAM,CAAA;IACtB,+EAA+E;IAC/E,YAAY,EAAE,MAAM,CAAA;IACpB,2EAA2E;IAC3E,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAA;IAC1B,sEAAsE;IACtE,UAAU,EAAE,MAAM,CAAA;IAClB,+EAA+E;IAC/E,cAAc,EAAE,MAAM,CAAA;IACtB,0EAA0E;IAC1E,WAAW,EAAE,OAAO,CAAA;IACpB,2EAA2E;IAC3E,WAAW,EAAE,OAAO,CAAA;IACpB,oDAAoD;IACpD,QAAQ,EAAE,OAAO,CAAA;IACjB,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAA;IAClB;;kDAE8C;IAC9C,SAAS,EAAE,MAAM,CAAA;IACjB,wEAAwE;IACxE,oBAAoB,EAAE,OAAO,CAAA;IAC7B;;;;mEAI+D;IAC/D,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5C;;;;4EAIwE;IACxE,WAAW,EAAE,KAAK,GAAG,OAAO,GAAG,UAAU,GAAG,aAAa,CAAA;IACzD;wCACoC;IACpC,aAAa,EAAE,MAAM,CAAA;IACrB,+DAA+D;IAC/D,gBAAgB,EAAE,MAAM,CAAA;IACxB,sEAAsE;IACtE,gBAAgB,EAAE,MAAM,CAAA;IACxB;+DAC2D;IAC3D,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAMD,iEAAiE;AACjE,eAAO,MAAM,QAAQ,EAAE,eAuBtB,CAAA;AAOD;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAKtD;AA4ED,wBAAgB,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAEzD;AAqLD;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB;IACD,MAAM,EAAE,eAAe,CAAA;IACvB,OAAO,EAAE,MAAM,CAAC,MAAM,eAAe,EAAE,YAAY,CAAC,CAAA;CACrD,CA6BA;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAQ5F;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,QAAQ,CAE3D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAyCjB,CAAA"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAKH,OAAO,CAAC,MAAM,0BAA0B,CAAA;AAExC,mEAAmE;AACnE,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,CAAA;AAK7D,6EAA6E;AAC7E,MAAM,WAAW,eAAe;IAC9B;;;8DAG0D;IAC1D,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAA;IAChC,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAA;IACZ,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAA;IACZ;qEACiE;IACjE,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,yDAAyD;IACzD,SAAS,EAAE,MAAM,CAAA;IACjB,sEAAsE;IACtE,cAAc,EAAE,MAAM,CAAA;IACtB,+EAA+E;IAC/E,YAAY,EAAE,MAAM,CAAA;IACpB,2EAA2E;IAC3E,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAA;IAC1B,sEAAsE;IACtE,UAAU,EAAE,MAAM,CAAA;IAClB,+EAA+E;IAC/E,cAAc,EAAE,MAAM,CAAA;IACtB,0EAA0E;IAC1E,WAAW,EAAE,OAAO,CAAA;IACpB,2EAA2E;IAC3E,WAAW,EAAE,OAAO,CAAA;IACpB,oDAAoD;IACpD,QAAQ,EAAE,OAAO,CAAA;IACjB;sDACkD;IAClD,WAAW,EAAE,OAAO,CAAA;IACpB;iBACa;IACb,eAAe,EAAE,OAAO,CAAA;IACxB,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAA;IAClB;;kDAE8C;IAC9C,SAAS,EAAE,MAAM,CAAA;IACjB,wEAAwE;IACxE,oBAAoB,EAAE,OAAO,CAAA;IAC7B;;;;mEAI+D;IAC/D,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5C;;;;4EAIwE;IACxE,WAAW,EAAE,KAAK,GAAG,OAAO,GAAG,UAAU,GAAG,aAAa,CAAA;IACzD;wCACoC;IACpC,aAAa,EAAE,MAAM,CAAA;IACrB,+DAA+D;IAC/D,gBAAgB,EAAE,MAAM,CAAA;IACxB,sEAAsE;IACtE,gBAAgB,EAAE,MAAM,CAAA;IACxB;+DAC2D;IAC3D,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAMD,iEAAiE;AACjE,eAAO,MAAM,QAAQ,EAAE,eAyBtB,CAAA;AAOD;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAKtD;AA4ED,wBAAgB,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAEzD;AA2LD;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB;IACD,MAAM,EAAE,eAAe,CAAA;IACvB,OAAO,EAAE,MAAM,CAAC,MAAM,eAAe,EAAE,YAAY,CAAC,CAAA;CACrD,CA+BA;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAQ5F;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,CAKpE;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAEpE;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAEtE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aA8CjB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"debug-report.d.ts","sourceRoot":"","sources":["../../src/debug-report.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAEjD,gEAAgE;AAChE,MAAM,WAAW,oBAAoB;IACnC,wEAAwE;IACxE,WAAW,EAAE,MAAM,CAAA;IACnB,qEAAqE;IACrE,aAAa,EAAE,MAAM,CAAA;IACrB,oDAAoD;IACpD,UAAU,EAAE,MAAM,CAAA;IAClB,iEAAiE;IACjE,QAAQ,EAAE,MAAM,CAAA;IAChB,wDAAwD;IACxD,IAAI,EAAE,MAAM,CAAA;IACZ,wEAAwE;IACxE,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;2EAC2E;AAC3E,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,oBAAoB,CAAA;IAC1B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACtC;mDAC+C;IAC/C,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC;kDAC8C;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACxC,6CAA6C;IAC7C,IAAI,EAAE,SAAS,YAAY,EAAE,CAAA;IAC7B,kEAAkE;IAClE,IAAI,EAAE,MAAM,CAAA;CACb;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA+BpF"}
1
+ {"version":3,"file":"debug-report.d.ts","sourceRoot":"","sources":["../../src/debug-report.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAEjD,gEAAgE;AAChE,MAAM,WAAW,oBAAoB;IACnC,wEAAwE;IACxE,WAAW,EAAE,MAAM,CAAA;IACnB,qEAAqE;IACrE,aAAa,EAAE,MAAM,CAAA;IACrB,oDAAoD;IACpD,UAAU,EAAE,MAAM,CAAA;IAClB,iEAAiE;IACjE,QAAQ,EAAE,MAAM,CAAA;IAChB,wDAAwD;IACxD,IAAI,EAAE,MAAM,CAAA;IACZ,wEAAwE;IACxE,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;2EAC2E;AAC3E,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,oBAAoB,CAAA;IAC1B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACtC;mDAC+C;IAC/C,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC;kDAC8C;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACxC,6CAA6C;IAC7C,IAAI,EAAE,SAAS,YAAY,EAAE,CAAA;IAC7B,kEAAkE;IAClE,IAAI,EAAE,MAAM,CAAA;CACb;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAyDpF"}
@@ -46,12 +46,28 @@
46
46
  * and ours goes inert instead (the same posture as intercept.ts).
47
47
  */
48
48
  import type { RelayClient } from './relay-client.js';
49
+ import { MAX_FILE_MEDIA_BYTES } from './upload-limits.js';
49
50
  /** The host's upload route, verbatim from its registration (RT
50
51
  * dsh-client-file-upload lib/index.js:73). */
51
52
  export declare const FILE_UPLOAD_PATH = "/api/session/uploadFileBinary";
52
53
  /** The host's session-log export route (RT dsh-session-log-export
53
54
  * lib/index.js:488). */
54
55
  export declare const SESSION_EXPORT_PATH = "/api/session.export";
56
+ /** The host's media route (P55-2): how a Markdown image `![a](path)` in a
57
+ * session body actually loads — the renderer resolves the path against the
58
+ * session cwd into an ABSOLUTE server path and the browser's `<img>` asks
59
+ * for `/api/file?path=<encoded>` natively (no `window.fetch`, no
60
+ * `sessionId`), landing in this very table (RT
61
+ * dsh-api-session-controller lib/types/media-references.js:
62
+ * `registerFetchRoute({ path: '/api/file', methods: ['GET','HEAD'],
63
+ * requestBody: 'buffered', … })`). */
64
+ export declare const FILE_MEDIA_PATH = "/api/file";
65
+ /** The byte cap one forwarded file may answer with — defined once in
66
+ * src/upload-limits.ts (the one home of every MiB-scale ceiling, per the
67
+ * upload unification and scripts/check-upload-limits.mjs), re-exported
68
+ * here for the consumers the route narrative belongs to. */
69
+ export { MAX_FILE_MEDIA_BYTES };
70
+ export type FetchRouteLang = 'zh' | 'en';
55
71
  /** Verdict of {@link checkFetchRouteShape}. STRUCTURAL only: `ok` answers
56
72
  * "is this a connection service with a fetch-route table at all"; each
57
73
  * route's entry findings travel as `notes` — present/absent/misshaped — and
@@ -100,15 +116,20 @@ export declare function shouldFallbackInstall(state: {
100
116
  * Check the RAW connection service instance against the shape the wrap
101
117
  * depends on. Pure inspection — nothing is mutated, so a failed check
102
118
  * leaves every route exactly as it was. Only the structural facts refuse;
103
- * the two entries' facts are described in `notes` (they attach lazily).
119
+ * the entries' facts are described in `notes` (they attach lazily).
120
+ *
121
+ * `probeFileMedia` (P55-2) adds the `/api/file` entry's note and — load-
122
+ * bearing for the legacy probe-count pins — its table READ. It defaults to
123
+ * false so a caller without a `resolveRemoteFileScope` (every pre-P55-2
124
+ * call site and test) touches exactly the two routes it always did.
104
125
  */
105
- export declare function checkFetchRouteShape(connection: unknown): FetchRouteShapeCheck;
126
+ export declare function checkFetchRouteShape(connection: unknown, probeFileMedia?: boolean): FetchRouteShapeCheck;
106
127
  /** One refusal the wrappers answered, in the diagnostics ring. */
107
128
  export interface FetchRouteFailureRecord {
108
129
  /** ISO timestamp of the moment the refusal was answered. */
109
130
  time: string;
110
131
  /** Which wrapper answered it. */
111
- route: 'upload' | 'export';
132
+ route: 'upload' | 'export' | 'file';
112
133
  code: string;
113
134
  }
114
135
  /** What the client status route surfaces about this interception: flags,
@@ -143,17 +164,51 @@ export interface FetchRouteInterceptDiagnostics {
143
164
  exportBlocked: number;
144
165
  /** The most recent refusals, oldest first, capped. */
145
166
  recentFailures: FetchRouteFailureRecord[];
167
+ /** The media entry currently holds our wrapper. */
168
+ fileWrapped?: boolean;
169
+ /** The media entry was absent at last check and the attach retry is still
170
+ * running. */
171
+ filePending?: boolean;
172
+ /** The media entry was present but misshaped — attach refused for THIS
173
+ * route only; the reason is stable diagnostics text. */
174
+ fileAttachRefused?: string | undefined;
175
+ /** Every media request that entered the wrapper, passthroughs included. */
176
+ fileCalls?: number;
177
+ /** Media requests served through the relay. */
178
+ fileForwarded?: number;
179
+ /** Media requests refused (offline, mismatch, relay/remote errors,
180
+ * oversize). */
181
+ fileRefused?: number;
146
182
  }
147
183
  export interface InstallFetchRouteInterceptOptions {
148
184
  /** The RAW connection service instance
149
185
  * (`ctx.connection[symbols.original]`) — the one whose `fetchRoutes` Map
150
186
  * the shared handler reads per request. */
151
187
  connection: object;
152
- /** The client relay client (T23a) the uploads travel through. */
153
- relay: RelayClient;
154
- /** The CURRENT handshake's server id, read live per call; `undefined`
155
- * makes every remote upload a `remote-offline`. */
156
- getServerId: () => string | undefined;
188
+ /** SINGLE-SERVER mode: the client relay client (T23a) the uploads travel
189
+ * through. Required together with {@link getServerId} unless
190
+ * {@link getRelayForServer} is given (MS-5's pool wiring). */
191
+ relay?: RelayClient;
192
+ /** SINGLE-SERVER mode: the CURRENT handshake's server id, read live per
193
+ * call; `undefined` makes every remote upload a `remote-offline`. */
194
+ getServerId?: () => string | undefined;
195
+ /** MS-4: the relay client serving ONE paired server, looked up by the
196
+ * virtual id's serverId half per upload (the connection pool's
197
+ * `getByServerId`). When given, routing reads it alone: `undefined` (a
198
+ * server the pool does not hold) answers `remote-mismatch`, a held client
199
+ * that is not online `remote-offline`. Absent — the single-server wiring —
200
+ * the upload goes through `relay` exactly when the id belongs to
201
+ * `getServerId()`, with the original verdict order. */
202
+ getRelayForServer?: (serverId: string) => RelayClient | undefined;
203
+ /** P55-2: the intercept handle's session-attribution answer (live, so the
204
+ * wiring forwards `interceptHandle?.resolveRemoteFileScope`). Its PRESENCE
205
+ * is the media mount's switch: without it, `/api/file` is never probed,
206
+ * wrapped, or counted — the pre-P55-2 behavior, byte for byte (the
207
+ * legacy probe-count pins depend on this). */
208
+ resolveRemoteFileScope?: (path: string) => {
209
+ serverId: string;
210
+ sessionId: string;
211
+ } | undefined;
157
212
  /** Progress logging, wired to the context logger by index.ts. */
158
213
  log?: (format: string, ...args: unknown[]) => void;
159
214
  /** The lazy-attach retry cadence (T51-fix): how often the table is
@@ -161,6 +216,9 @@ export interface InstallFetchRouteInterceptOptions {
161
216
  * before giving up. Defaults 3000 ms × 10; tests shrink both. */
162
217
  attachRetryMs?: number;
163
218
  attachAttempts?: number;
219
+ /** Language for error messages (`'zh'` default, `'en'` English). Accepts a
220
+ * getter for live resolution. */
221
+ lang?: FetchRouteLang | (() => FetchRouteLang) | undefined;
164
222
  }
165
223
  export interface FetchRouteInterceptHandle {
166
224
  /** Restore every attached entry — each ONLY while it still holds our
@@ -1 +1 @@
1
- {"version":3,"file":"fetch-route-intercept.d.ts","sourceRoot":"","sources":["../../src/fetch-route-intercept.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetch-route-intercept.d.ts","sourceRoot":"","sources":["../../src/fetch-route-intercept.ts"],"names":[],"mappings":"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"}
@@ -22,11 +22,12 @@ declare module '@deepseek-ai/cordis' {
22
22
  }
23
23
  }
24
24
  import type { AdminAdmission } from './admin-routes.js';
25
+ import type { RelayPool } from './relay-pool.js';
25
26
  import type { RelayClient } from './relay-client.js';
26
27
  import type { BridgeRegistry } from './plugin-bridge.js';
27
28
  import { DEFAULT_MAX_UPLOAD_BYTES } from './upload-limits.js';
28
29
  export type { BridgeDeclaration, ZenRemoteService } from './plugin-bridge.js';
29
- export { Config, resolveRole } from './config.js';
30
+ export { Config, resolveRole, servesRole, connectsRole } from './config.js';
30
31
  export { sameOriginPost } from './http.js';
31
32
  /** Exact route the phone composer POSTs one file body to. */
32
33
  export declare const UPLOAD_ROUTE = "/_dsh/mobile-nav/upload";
@@ -37,8 +38,14 @@ export declare const CLIENT_CONFIG_ROUTE = "/_dsh/mobile-nav/client-config";
37
38
  /** Workspace-relative directory uploads land in (also the `@` prefix the composer inserts). */
38
39
  export declare const UPLOAD_DIR = ".dsh-uploads";
39
40
  export { DEFAULT_MAX_UPLOAD_BYTES };
40
- /** The live client-role relay client, if one was built. */
41
+ /** The live client-role relay client, if one was built. MS-5: the wiring no
42
+ * longer builds one — the relay POOL below replaced it — so this stays
43
+ * undefined in production compositions; the getter (and the client-routes
44
+ * option of the same shape) remain for the single-client contract's old
45
+ * consumers and tests. */
41
46
  export declare function getRelayClient(): RelayClient | undefined;
47
+ /** The live client-role relay pool, if one was built. */
48
+ export declare function getRelayPool(): RelayPool | undefined;
42
49
  /** The live bridge registry, if a plugin row is currently applied. */
43
50
  export declare function getBridgeRegistry(): BridgeRegistry | undefined;
44
51
  /** Host half config. Every field below arrives through the loader as a
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAMH,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAIhE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAWlD,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,MAAM;QACd,wBAAwB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,IAAI,CAAA;KAClD;CACF;AAUD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAKvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AA+BpD,OAAO,KAAK,EAAqB,cAAc,EAAqD,MAAM,oBAAoB,CAAA;AAI9H,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAK7D,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAO7E,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAS1C,6DAA6D;AAC7D,eAAO,MAAM,YAAY,4BAA4B,CAAA;AA8BrD;;kEAEkE;AAClE,eAAO,MAAM,mBAAmB,mCAAmC,CAAA;AAEnE,+FAA+F;AAC/F,eAAO,MAAM,UAAU,iBAAiB,CAAA;AAMxC,OAAO,EAAE,wBAAwB,EAAE,CAAA;AAiBnC,2DAA2D;AAC3D,wBAAgB,cAAc,IAAI,WAAW,GAAG,SAAS,CAExD;AAaD,sEAAsE;AACtE,wBAAgB,iBAAiB,IAAI,cAAc,GAAG,SAAS,CAE9D;AAED;;;;;8DAK8D;AAC9D,MAAM,WAAW,eAAe;IAC9B;;;;qEAIiE;IACjE,IAAI,CAAC,EAAE,OAAO,CAAA;IACd;iEAC6D;IAC7D,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB;;;uDAGmD;IACnD,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB;;;;;;;+DAO2D;IAC3D,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B;wCACoC;IACpC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B;wEACoE;IACpE,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAC9B;AAED;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAGhH;AA6BD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAKnE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAgBlD;AA+ID;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,YAAY,CAChC,GAAG,EAAE,OAAO,EACZ,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,cAAc,EACnB,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,cAAc,EAChD,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GAClD,OAAO,CAAC,IAAI,CAAC,CA0Cf;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,GAAE,eAAoB,GAAG,IAAI,CA25CtE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -79,8 +79,10 @@
79
79
  * generation (client face: pumpEvents aborts on answer failures).
80
80
  */
81
81
  import type { RelayClient, RelayClock } from './relay-client.js';
82
+ import type { RelayPool } from './relay-pool.js';
82
83
  import type { GatewayShapeCheck } from './intercept-shape.js';
83
84
  import { type ResultAttachment } from './invoke-binary.js';
85
+ import type { MergerLang } from './merge-streams.js';
84
86
  /** The session-locating argument fields, as registered per method. Identical
85
87
  * in name and meaning to relay-access.ts's `SessionField`; a field named
86
88
  * without a dot is TOP-LEVEL. `request.workspaceId` locates a remote create
@@ -166,6 +168,19 @@ export declare const REMOTE_READ_METHODS: ReadonlySet<string>;
166
168
  /** Whether `endpoint` (a client-table method) is a remote WRITE: anything
167
169
  * the read whitelist does not name (T34-fix). */
168
170
  export declare function isRemoteWrite(endpoint: string): boolean;
171
+ /**
172
+ * Stream endpoints whose caller-supplied `uplink` iterable and
173
+ * `uplinkWindow` travel to the relay instead of being half-closed locally
174
+ * with `releaseUplink`. DSH 0.2.2+ replaced `terminal/follow|write|resize`
175
+ * with the duplex `terminal/attach` stream (`TerminalInput` write/resize
176
+ * commands ride the uplink; `ack` frames ride the downlink). The relay
177
+ * client's pump (relay-client.ts) is the other half: it forwards the host's
178
+ * frames through the server's `/v1/stream-uplink` channel and releases the
179
+ * host inbox itself when the stream ends — the interceptor only hands the
180
+ * iterable over, it never half-closes a member of this set.
181
+ */
182
+ export declare const REMOTE_UPLINK_STREAM_METHODS: ReadonlySet<string>;
183
+ export type InterceptLang = MergerLang;
169
184
  /**
170
185
  * T58/T62: the vocabulary of the current-session signal. The value travels
171
186
  * from the BROWSER — the only place the host's persisted selection
@@ -286,12 +301,21 @@ export interface InstallInterceptOptions {
286
301
  /** The RAW gateway instance (`ctx.typertGateway[symbols.original]`), not
287
302
  * the cordis proxy — own properties on the proxy are ignored by everyone. */
288
303
  raw: object;
289
- /** The client relay client (T23a) the calls travel through. */
290
- relay: RelayClient;
291
- /** The CURRENT handshake's server id, read live per call; `undefined`
292
- * (never handshook) makes every remote call a `remote-offline` — a
293
- * different fact from pointing at the wrong server (`remote-mismatch`). */
294
- getServerId: () => string | undefined;
304
+ /** SINGLE-SERVER mode (the original wiring, kept for compatibility): the
305
+ * one client relay client the calls travel through. Either this +
306
+ * {@link getServerId}, or {@link pool} — never required together. */
307
+ relay?: RelayClient;
308
+ /** SINGLE-SERVER mode: the CURRENT handshake's server id, read live per
309
+ * call; `undefined` (never handshook) makes every remote call a
310
+ * `remote-offline` — a different fact from pointing at the wrong server
311
+ * (`remote-mismatch`). */
312
+ getServerId?: () => string | undefined;
313
+ /** MS-3 POOL mode: the multi-server relay pool (up to
314
+ * `MAX_PAIRED_SERVERS` paired servers). When present it replaces the
315
+ * single-relay routing: every call/stream/event routes by the virtual
316
+ * id's `serverId` to the matching pool entry, and the three global reads
317
+ * plus the model catalog merge ALL paired servers in pairing order. */
318
+ pool?: RelayPool;
295
319
  /** Progress logging, wired to the context logger by index.ts. */
296
320
  log?: (format: string, ...args: unknown[]) => void;
297
321
  /** Clock/timers for the merged streams' reopen backoff (CP4); defaults to
@@ -309,10 +333,15 @@ export interface InstallInterceptOptions {
309
333
  /** PB-25b: the inventory slot factory — one slot per merged global stream
310
334
  * (only the workspace merger ever reports; the control merger has no
311
335
  * session inventory). The wiring unions the live slots' shares into the
312
- * set the plugin-route rewrite reads. Absent: no shares are ever reported
313
- * and the plugin-route value scan stays exactly the request-local
314
- * behavior. */
315
- createSessionInventorySlot?: () => SessionInventorySlot;
336
+ * set the plugin-route rewrite consults. MS-3: the factory receives the
337
+ * slot's `serverId`, so a pool wiring can keep per-server inventories
338
+ * (the plain single-server wiring can ignore the argument). Absent: no
339
+ * shares are ever reported and the plugin-route value scan stays exactly
340
+ * the request-local behavior. */
341
+ createSessionInventorySlot?: (serverId?: string) => SessionInventorySlot;
342
+ /** Language for error messages and sidebar group suffixes (`'zh'` default,
343
+ * `'en'` English). Accepts a getter for live resolution. */
344
+ lang?: InterceptLang | (() => InterceptLang) | undefined;
316
345
  }
317
346
  export interface InterceptHandle {
318
347
  /** Remove both own properties, restoring exactly what was installed over
@@ -343,6 +372,23 @@ export interface InterceptHandle {
343
372
  * entries are dropped; a batch with nothing left is a no-op. Reaches every
344
373
  * live merged `$events` stream, and the pending slot when none is open. */
345
374
  nudgeSummarySync(ids: readonly string[]): void;
375
+ /** MS-3 (pool mode only meaningful, harmless otherwise): the pool's entry
376
+ * set or any entry's identity moved — the wiring forwards the pool's
377
+ * `onServerRemoved` / `onStateChange` callbacks here. Every live merged
378
+ * stream re-scans `pool.entries()` NOW: slots for removed entries leave
379
+ * (only THAT server's shown groups and pending events are torn down),
380
+ * slots for new entries start, and renames re-title the groups. */
381
+ notePoolEvent(): void;
382
+ /** P55-2: resolve which remote session (serverId + real sessionId) should
383
+ * serve a path-only `/api/file?path=...` request, or `undefined` when the
384
+ * local route should handle it. Read by the fetch-route wrap (its media
385
+ * mount only exists while the wiring hands THIS handle's method over), so
386
+ * a Markdown image of a remote session's reply loads from the server's
387
+ * disk instead of 404ing on the sub-client's own. */
388
+ resolveRemoteFileScope(path: string): {
389
+ serverId: string;
390
+ sessionId: string;
391
+ } | undefined;
346
392
  }
347
393
  /** Rewrite one stream frame's session ids to virtual form. */
348
394
  export declare function rewriteFrame(endpoint: string, frame: unknown, serverId: string): unknown;
@@ -423,6 +469,22 @@ export interface SessionSummarySync {
423
469
  * records the verdict but does not re-gate, so it stays usable in tests
424
470
  * that install over deliberately odd shapes.
425
471
  */
472
+ /**
473
+ * P55-2: whether `filePath` lives at or under `cwd` — the /api/file
474
+ * attribution test. Both paths are compared backslash-folded to `/` (a
475
+ * server-Windows cwd meets a server-Windows image path, and the Markdown
476
+ * renderer may hand either separator over), trailing separators of `cwd`
477
+ * are dropped, and the match is exact-or-subpath (`cwd + '/'` prefix — a
478
+ * directory merely PREFIXED by the cwd string is not a match). Windows
479
+ * drive-rooted pairs compare case-insensitively WHOLE (`C:\Users` vs
480
+ * `c:\users` — the drive letter is the visible case hazard, but NTFS is
481
+ * case-insensitive end to end, and a missed match costs a permanently
482
+ * broken image while an over-match needs two same-server cwds differing
483
+ * only by case); everything else stays case-sensitive (POSIX is).
484
+ * Deliberately NOT node:path — the two ends may run on different platforms,
485
+ * so the rule is pure string arithmetic over the server's paths.
486
+ */
487
+ export declare function pathMatchesCwd(filePath: string, cwd: string): boolean;
426
488
  export declare function installIntercept(options: InstallInterceptOptions): InterceptHandle;
427
489
  export interface SelfCheckOptions {
428
490
  /** How long the probe may wait for its first frame; default 5000 ms. */
@@ -1 +1 @@
1
- {"version":3,"file":"intercept.d.ts","sourceRoot":"","sources":["../../src/intercept.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"intercept.d.ts","sourceRoot":"","sources":["../../src/intercept.ts"],"names":[],"mappings":"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"}