@blue-soda/dsh-remote 0.5.6 → 0.5.8

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 (232) hide show
  1. package/README.md +14 -3
  2. package/cordis.patch.yml +30 -30
  3. package/dist/client.github.js +1 -1
  4. package/dist/client.js +1 -1
  5. package/dist/index.js +1216 -396
  6. package/dist/index.js.map +4 -4
  7. package/dsh-plugin.json +41 -41
  8. package/package.json +165 -165
  9. package/dist/acp.d.ts +0 -75
  10. package/dist/acp.d.ts.map +0 -1
  11. package/dist/acp.js +0 -61
  12. package/dist/acp.js.map +0 -1
  13. package/dist/api-proxy-switch.d.ts +0 -33
  14. package/dist/api-proxy-switch.d.ts.map +0 -1
  15. package/dist/api-proxy-switch.js +0 -109
  16. package/dist/api-proxy-switch.js.map +0 -1
  17. package/dist/atomic-file.d.ts +0 -16
  18. package/dist/atomic-file.d.ts.map +0 -1
  19. package/dist/atomic-file.js +0 -81
  20. package/dist/atomic-file.js.map +0 -1
  21. package/dist/bin/doctor.d.ts +0 -3
  22. package/dist/bin/doctor.d.ts.map +0 -1
  23. package/dist/bin/doctor.js +0 -13
  24. package/dist/bin/doctor.js.map +0 -1
  25. package/dist/cli.d.ts +0 -32
  26. package/dist/cli.d.ts.map +0 -1
  27. package/dist/cli.js +0 -289
  28. package/dist/cli.js.map +0 -1
  29. package/dist/client-runtime.d.ts +0 -375
  30. package/dist/client-runtime.d.ts.map +0 -1
  31. package/dist/client-runtime.js +0 -1768
  32. package/dist/client-runtime.js.map +0 -1
  33. package/dist/client-secure-transport.d.ts +0 -23
  34. package/dist/client-secure-transport.d.ts.map +0 -1
  35. package/dist/client-secure-transport.js +0 -144
  36. package/dist/client-secure-transport.js.map +0 -1
  37. package/dist/client-target-store.d.ts +0 -40
  38. package/dist/client-target-store.d.ts.map +0 -1
  39. package/dist/client-target-store.js +0 -79
  40. package/dist/client-target-store.js.map +0 -1
  41. package/dist/client.d.ts +0 -13
  42. package/dist/client.d.ts.map +0 -1
  43. package/dist/codex/app-server.d.ts +0 -71
  44. package/dist/codex/app-server.d.ts.map +0 -1
  45. package/dist/codex/app-server.js +0 -268
  46. package/dist/codex/app-server.js.map +0 -1
  47. package/dist/codex/codex-image-codec.d.ts +0 -7
  48. package/dist/codex/codex-image-codec.d.ts.map +0 -1
  49. package/dist/codex/codex-image-codec.js +0 -288
  50. package/dist/codex/codex-image-codec.js.map +0 -1
  51. package/dist/codex/domain.d.ts +0 -102
  52. package/dist/codex/domain.d.ts.map +0 -1
  53. package/dist/codex/domain.js +0 -1323
  54. package/dist/codex/domain.js.map +0 -1
  55. package/dist/codex/method-policy.d.ts +0 -338
  56. package/dist/codex/method-policy.d.ts.map +0 -1
  57. package/dist/codex/method-policy.js +0 -141
  58. package/dist/codex/method-policy.js.map +0 -1
  59. package/dist/codex/peer-bridge.d.ts +0 -57
  60. package/dist/codex/peer-bridge.d.ts.map +0 -1
  61. package/dist/codex/peer-bridge.js +0 -299
  62. package/dist/codex/peer-bridge.js.map +0 -1
  63. package/dist/codex/permissions.d.ts +0 -4
  64. package/dist/codex/permissions.d.ts.map +0 -1
  65. package/dist/codex/permissions.js +0 -21
  66. package/dist/codex/permissions.js.map +0 -1
  67. package/dist/codex/session-id.d.ts +0 -10
  68. package/dist/codex/session-id.d.ts.map +0 -1
  69. package/dist/codex/session-id.js +0 -15
  70. package/dist/codex/session-id.js.map +0 -1
  71. package/dist/codex/virtual-harness.d.ts +0 -209
  72. package/dist/codex/virtual-harness.d.ts.map +0 -1
  73. package/dist/codex/virtual-harness.js +0 -2650
  74. package/dist/codex/virtual-harness.js.map +0 -1
  75. package/dist/codex-workspace-bridge.d.ts +0 -108
  76. package/dist/codex-workspace-bridge.d.ts.map +0 -1
  77. package/dist/codex-workspace-bridge.js +0 -502
  78. package/dist/codex-workspace-bridge.js.map +0 -1
  79. package/dist/config.d.ts +0 -99
  80. package/dist/config.d.ts.map +0 -1
  81. package/dist/config.js +0 -127
  82. package/dist/config.js.map +0 -1
  83. package/dist/connection-controller.d.ts +0 -44
  84. package/dist/connection-controller.d.ts.map +0 -1
  85. package/dist/connection-controller.js +0 -185
  86. package/dist/connection-controller.js.map +0 -1
  87. package/dist/control-route.d.ts +0 -34
  88. package/dist/control-route.d.ts.map +0 -1
  89. package/dist/control-route.js +0 -136
  90. package/dist/control-route.js.map +0 -1
  91. package/dist/control-runtime.d.ts +0 -138
  92. package/dist/control-runtime.d.ts.map +0 -1
  93. package/dist/control-runtime.js +0 -543
  94. package/dist/control-runtime.js.map +0 -1
  95. package/dist/control-stream.d.ts +0 -67
  96. package/dist/control-stream.d.ts.map +0 -1
  97. package/dist/control-stream.js +0 -179
  98. package/dist/control-stream.js.map +0 -1
  99. package/dist/defaults.d.ts +0 -9
  100. package/dist/defaults.d.ts.map +0 -1
  101. package/dist/defaults.js +0 -9
  102. package/dist/defaults.js.map +0 -1
  103. package/dist/file-viewer-bridge.d.ts +0 -30
  104. package/dist/file-viewer-bridge.d.ts.map +0 -1
  105. package/dist/file-viewer-bridge.js +0 -128
  106. package/dist/file-viewer-bridge.js.map +0 -1
  107. package/dist/file-viewer-contract.d.ts +0 -5
  108. package/dist/file-viewer-contract.d.ts.map +0 -1
  109. package/dist/file-viewer-contract.js +0 -4
  110. package/dist/file-viewer-contract.js.map +0 -1
  111. package/dist/harness-api-bridge.d.ts +0 -81
  112. package/dist/harness-api-bridge.d.ts.map +0 -1
  113. package/dist/harness-api-bridge.js +0 -862
  114. package/dist/harness-api-bridge.js.map +0 -1
  115. package/dist/harness-api-history.d.ts +0 -3
  116. package/dist/harness-api-history.d.ts.map +0 -1
  117. package/dist/harness-api-history.js +0 -59
  118. package/dist/harness-api-history.js.map +0 -1
  119. package/dist/harness-remote-bridge.d.ts +0 -60
  120. package/dist/harness-remote-bridge.d.ts.map +0 -1
  121. package/dist/harness-remote-bridge.js +0 -540
  122. package/dist/harness-remote-bridge.js.map +0 -1
  123. package/dist/harness-version.d.ts +0 -23
  124. package/dist/harness-version.d.ts.map +0 -1
  125. package/dist/harness-version.js +0 -95
  126. package/dist/harness-version.js.map +0 -1
  127. package/dist/identity-store.d.ts +0 -45
  128. package/dist/identity-store.d.ts.map +0 -1
  129. package/dist/identity-store.js +0 -186
  130. package/dist/identity-store.js.map +0 -1
  131. package/dist/ids.d.ts +0 -2
  132. package/dist/ids.d.ts.map +0 -1
  133. package/dist/ids.js +0 -17
  134. package/dist/ids.js.map +0 -1
  135. package/dist/index.d.ts +0 -78
  136. package/dist/index.d.ts.map +0 -1
  137. package/dist/logging.d.ts +0 -18
  138. package/dist/logging.d.ts.map +0 -1
  139. package/dist/logging.js +0 -30
  140. package/dist/logging.js.map +0 -1
  141. package/dist/loopback-host.d.ts +0 -20
  142. package/dist/loopback-host.d.ts.map +0 -1
  143. package/dist/loopback-host.js +0 -245
  144. package/dist/loopback-host.js.map +0 -1
  145. package/dist/loopback-preview.d.ts +0 -19
  146. package/dist/loopback-preview.d.ts.map +0 -1
  147. package/dist/loopback-preview.js +0 -232
  148. package/dist/loopback-preview.js.map +0 -1
  149. package/dist/native-rtc-helper.d.ts +0 -14
  150. package/dist/native-rtc-helper.d.ts.map +0 -1
  151. package/dist/native-rtc-helper.js +0 -575
  152. package/dist/native-rtc-helper.js.map +0 -1
  153. package/dist/remote-api-proxy.d.ts +0 -17
  154. package/dist/remote-api-proxy.d.ts.map +0 -1
  155. package/dist/remote-api-proxy.js +0 -451
  156. package/dist/remote-api-proxy.js.map +0 -1
  157. package/dist/remote-directory-browser.d.ts +0 -16
  158. package/dist/remote-directory-browser.d.ts.map +0 -1
  159. package/dist/remote-directory-browser.js +0 -48
  160. package/dist/remote-directory-browser.js.map +0 -1
  161. package/dist/remote-file-content-provider.d.ts +0 -48
  162. package/dist/remote-file-content-provider.d.ts.map +0 -1
  163. package/dist/remote-file-content-provider.js +0 -93
  164. package/dist/remote-file-content-provider.js.map +0 -1
  165. package/dist/remote-typert-gateway.d.ts +0 -20
  166. package/dist/remote-typert-gateway.d.ts.map +0 -1
  167. package/dist/remote-typert-gateway.js +0 -334
  168. package/dist/remote-typert-gateway.js.map +0 -1
  169. package/dist/rpc-binary-attachments.d.ts +0 -33
  170. package/dist/rpc-binary-attachments.d.ts.map +0 -1
  171. package/dist/rpc-binary-attachments.js +0 -142
  172. package/dist/rpc-binary-attachments.js.map +0 -1
  173. package/dist/rpc-router.d.ts +0 -31
  174. package/dist/rpc-router.d.ts.map +0 -1
  175. package/dist/rpc-router.js +0 -201
  176. package/dist/rpc-router.js.map +0 -1
  177. package/dist/safe-error.d.ts +0 -8
  178. package/dist/safe-error.d.ts.map +0 -1
  179. package/dist/safe-error.js +0 -20
  180. package/dist/safe-error.js.map +0 -1
  181. package/dist/server-api.d.ts +0 -109
  182. package/dist/server-api.d.ts.map +0 -1
  183. package/dist/server-api.js +0 -520
  184. package/dist/server-api.js.map +0 -1
  185. package/dist/server-connection.d.ts +0 -79
  186. package/dist/server-connection.d.ts.map +0 -1
  187. package/dist/server-connection.js +0 -1023
  188. package/dist/server-connection.js.map +0 -1
  189. package/dist/server-credentials.d.ts +0 -55
  190. package/dist/server-credentials.d.ts.map +0 -1
  191. package/dist/server-credentials.js +0 -108
  192. package/dist/server-credentials.js.map +0 -1
  193. package/dist/service.d.ts +0 -151
  194. package/dist/service.d.ts.map +0 -1
  195. package/dist/service.js +0 -448
  196. package/dist/service.js.map +0 -1
  197. package/dist/session-format-compat.d.ts +0 -3
  198. package/dist/session-format-compat.d.ts.map +0 -1
  199. package/dist/session-format-compat.js +0 -183
  200. package/dist/session-format-compat.js.map +0 -1
  201. package/dist/status-stream.d.ts +0 -48
  202. package/dist/status-stream.d.ts.map +0 -1
  203. package/dist/status-stream.js +0 -133
  204. package/dist/status-stream.js.map +0 -1
  205. package/dist/terminal-policy.d.ts +0 -21
  206. package/dist/terminal-policy.d.ts.map +0 -1
  207. package/dist/terminal-policy.js +0 -68
  208. package/dist/terminal-policy.js.map +0 -1
  209. package/dist/tui-command.d.ts +0 -13
  210. package/dist/tui-command.d.ts.map +0 -1
  211. package/dist/tui-command.js +0 -392
  212. package/dist/tui-command.js.map +0 -1
  213. package/dist/typert-gateway-contract.d.ts +0 -59
  214. package/dist/typert-gateway-contract.d.ts.map +0 -1
  215. package/dist/typert-gateway-contract.js +0 -2
  216. package/dist/typert-gateway-contract.js.map +0 -1
  217. package/dist/typert-gateway-switch.d.ts +0 -85
  218. package/dist/typert-gateway-switch.d.ts.map +0 -1
  219. package/dist/typert-gateway-switch.js +0 -448
  220. package/dist/typert-gateway-switch.js.map +0 -1
  221. package/dist/types.d.ts +0 -20
  222. package/dist/types.d.ts.map +0 -1
  223. package/dist/types.js +0 -2
  224. package/dist/types.js.map +0 -1
  225. package/dist/version.d.ts +0 -12
  226. package/dist/version.d.ts.map +0 -1
  227. package/dist/version.js +0 -12
  228. package/dist/version.js.map +0 -1
  229. package/dist/werift-rtc.d.ts +0 -121
  230. package/dist/werift-rtc.d.ts.map +0 -1
  231. package/dist/werift-rtc.js +0 -490
  232. package/dist/werift-rtc.js.map +0 -1
@@ -1,448 +0,0 @@
1
- import { decodeByteValue } from './rpc-binary-attachments.js';
2
- const REMOTE_COMMAND_METHODS = ['execute', 'list'];
3
- const LOCAL_ONLY_NAMESPACES = new Set(['dynamicCordisRunner']);
4
- /**
5
- * Namespaces the local shell keeps answering even when the peer is gone.
6
- *
7
- * A remote-mode window asks for its settings bootstrap, its plugin registry stream and its account
8
- * read before any remote work happens, and only the local shell can answer those - that is why the
9
- * fallback exists at all. Everything else is remote data, and answering data locally during an
10
- * outage is what makes the native UI cache a local answer as if it came from the remote workspace:
11
- * a session list served that way stays wrong even after the link returns.
12
- */
13
- const LOCAL_FALLBACK_NAMESPACES = new Set(['$events', 'settings', 'credentials', 'dynamicCordisRunner']);
14
- /** Codes that mean the peer is not there right now, as opposed to answering with a refusal. */
15
- const PEER_GONE_CODES = new Set([
16
- 'TRANSPORT_CLOSED',
17
- 'CLIENT_CLOSED',
18
- 'RPC_TIMEOUT',
19
- 'CONNECTION_FAILED',
20
- 'CONNECTION_REPLACED',
21
- 'NOT_CONNECTED',
22
- 'UNAVAILABLE',
23
- 'internal',
24
- ]);
25
- const ALL_REMOTE_COMMANDS = { execute: true, list: true };
26
- /** Keeps the official Gateway object stable while its selected Host changes. */
27
- export class TypertGatewaySwitch {
28
- runtime;
29
- originalInvoke;
30
- localInvoke;
31
- originalStream;
32
- localStream;
33
- originalDispatch;
34
- localDispatch;
35
- originalOpen;
36
- localOpen;
37
- remoteInvoke;
38
- remoteTarget;
39
- remoteSupport = { execute: false, list: false };
40
- target;
41
- installed = false;
42
- /** Defaults to reachable so a caller that never wires this keeps the old behaviour. */
43
- remoteAvailability = () => true;
44
- constructor(gateway) {
45
- this.runtime = gateway;
46
- this.originalInvoke = gateway.invoke;
47
- this.localInvoke = this.originalInvoke.bind(gateway);
48
- this.originalStream = gateway.stream;
49
- this.localStream = gateway.stream?.bind(gateway);
50
- this.originalDispatch = this.runtime.dispatchRpc;
51
- this.localDispatch = this.runtime.dispatchRpc?.bind(gateway);
52
- this.originalOpen = this.runtime.openWireStream;
53
- this.localOpen = createLocalOpen(gateway, this.runtime);
54
- }
55
- /** Original local dispatcher, used by the Host bridge without switch recursion. */
56
- local() {
57
- const dispatch = this.localDispatch ?? (async (endpoint, payload, signal) => {
58
- try {
59
- const request = requestFromCarrier(endpoint, payload, signal);
60
- return { ok: true, value: await this.localInvoke(request) };
61
- }
62
- catch (error) {
63
- return { ok: false, error: this.failure(error) };
64
- }
65
- });
66
- const open = this.localOpen ?? (async (endpoint, payload, signal) => {
67
- if (this.localStream === undefined)
68
- throw new Error('The local Harness Gateway does not support Remote streams.');
69
- return this.localStream(requestFromCarrier(endpoint, payload, signal));
70
- });
71
- return {
72
- invoke: this.localInvoke,
73
- ...(this.localStream === undefined ? {} : { stream: this.localStream }),
74
- dispatch,
75
- open,
76
- failure: error => this.failure(error),
77
- supportsCarrier: this.localDispatch !== undefined && this.localOpen !== undefined,
78
- };
79
- }
80
- supportsCarrier() {
81
- return this.localDispatch !== undefined && this.localOpen !== undefined;
82
- }
83
- status() {
84
- return this.remoteInvoke === undefined
85
- ? { mode: 'local' }
86
- : { mode: 'remote', ...(this.target === undefined ? {} : { target: { ...this.target } }) };
87
- }
88
- install() {
89
- if (this.installed)
90
- return;
91
- this.runtime.invoke = request => this.selectInvoke(request);
92
- // The carriers this switch was installed in front of. A target that owns only part of the endpoint
93
- // space - the command namespace in an rc.2 window, where the ApiProxy switch owns the data plane - must
94
- // pass every other endpoint down to them. Answering one here sends it to the local shell instead of the
95
- // peer: that is how workspaceFiles/readBytes came back in a shape the native schema rejects.
96
- // Keep the receiver: the local dispatcher is an object method that reads its own fields, and calling
97
- // it unbound failed with a missing invokeRpc on an undefined receiver - which broke every local call
98
- // whenever this switch forwarded instead of answering itself.
99
- const previousStream = this.runtime.stream?.bind(this.runtime);
100
- const previousDispatch = this.runtime.dispatchRpc?.bind(this.runtime);
101
- const previousOpen = this.runtime.openWireStream;
102
- // Forwarding is for a window whose data plane belongs to another carrier while the peer is up. With
103
- // no reachable peer the shell must work locally - forwarding there reached a carrier that cannot
104
- // serve it and every local call failed with a missing invokeRpc on an undefined carrier.
105
- const forwards = (endpoint) => (this.remoteTarget === undefined && this.remoteAvailability() && !isLocalOnlyEndpoint(endpoint));
106
- if (previousStream !== undefined) {
107
- this.runtime.stream = request => forwards(endpointOf(request))
108
- ? previousStream(request)
109
- : !this.routesToRemote(endpointOf(request))
110
- ? this.localStream(request)
111
- : this.withLocalFallback(endpointOf(request), () => this.remoteTarget.open(endpointOf(request), { args: request.args }, request.signal ?? new AbortController().signal), () => this.localStream(request));
112
- }
113
- if (previousDispatch !== undefined) {
114
- this.runtime.dispatchRpc = (endpoint, payload, signal) => forwards(endpoint)
115
- ? Promise.resolve(previousDispatch(endpoint, payload, signal)).catch(error => {
116
- // Without a remote target the shell has to work locally, and a failing local call is otherwise
117
- // invisible: the fallback exists precisely so the user can keep working.
118
- console.warn('[dsh-remote] local call failed with no remote target selected', {
119
- endpoint,
120
- code: typeof error === 'object' && error !== null && 'code' in error ? String(error.code) : undefined,
121
- message: error instanceof Error ? error.message : String(error),
122
- });
123
- throw error;
124
- })
125
- : !this.routesToRemote(endpoint)
126
- ? this.localDispatch(endpoint, payload, signal)
127
- : this.withLocalFallback(endpoint, () => Promise.resolve(this.remoteTarget.dispatch(endpoint, payload, signal)), () => this.localDispatch(endpoint, payload, signal)).then(result => normalizeByteResult(endpoint, result));
128
- }
129
- if (previousOpen !== undefined) {
130
- const open = previousOpen;
131
- const rc1 = usesRc1Arity(open);
132
- this.runtime.openWireStream = (...callArgs) => {
133
- const endpoint = callArgs[0];
134
- if (forwards(endpoint)) {
135
- return rc1
136
- ? Reflect.apply(open, this.runtime, callArgs)
137
- : open.call(this.runtime, endpoint, callArgs[1], callArgs[2]);
138
- }
139
- if (!this.routesToRemote(endpoint)) {
140
- return rc1
141
- ? Reflect.apply(open, this.runtime, callArgs)
142
- : open.call(this.runtime, endpoint, callArgs[1], callArgs[2]);
143
- }
144
- const signal = (rc1 ? callArgs[4] : callArgs[2]);
145
- if (!rc1) {
146
- // The legacy carrier returns an iterable, so a rejection cannot be caught and
147
- // the local fallback stays unavailable on that arity.
148
- return this.remoteTarget.open(endpoint, callArgs[1], signal ?? new AbortController().signal);
149
- }
150
- return this.withLocalFallback(endpoint, () => this.remoteTarget.open(endpoint, callArgs[1], signal ?? new AbortController().signal), () => Reflect.apply(open, this.runtime, callArgs));
151
- };
152
- }
153
- this.installed = true;
154
- }
155
- selectRemote(remote, support = ALL_REMOTE_COMMANDS, target) {
156
- if (!this.installed)
157
- throw new Error('The Typert gateway switch is not installed.');
158
- this.remoteInvoke = typeof remote === 'function' ? remote : request => remote.invoke(request);
159
- this.remoteTarget = typeof remote === 'function' ? undefined : remote;
160
- this.remoteSupport = { ...support };
161
- this.target = target === undefined ? undefined : { ...target };
162
- }
163
- selectLocal() {
164
- this.remoteInvoke = undefined;
165
- this.remoteTarget = undefined;
166
- this.remoteSupport = { execute: false, list: false };
167
- this.target = undefined;
168
- }
169
- /**
170
- * The local shell's carriers, for a remote target that owns only part of the
171
- * endpoint space. The Codex virtual Harness owns the CodeX domain; the shell's own
172
- * settings bootstrap, plugin registry and account reads must stay here, or the
173
- * window describes the remote Host instead of this installation.
174
- * @returns the captured local carriers, absent when the running release has none.
175
- */
176
- localCarrier() {
177
- return {
178
- ...(this.localDispatch === undefined ? {} : { dispatch: this.localDispatch }),
179
- ...(this.localOpen === undefined ? {} : { open: this.localOpen }),
180
- };
181
- }
182
- restore() {
183
- if (!this.installed)
184
- return;
185
- this.selectLocal();
186
- this.runtime.invoke = this.originalInvoke;
187
- if (this.originalStream !== undefined)
188
- this.runtime.stream = this.originalStream;
189
- if (this.originalDispatch !== undefined)
190
- this.runtime.dispatchRpc = this.originalDispatch;
191
- if (this.originalOpen !== undefined)
192
- this.runtime.openWireStream = this.originalOpen;
193
- this.installed = false;
194
- }
195
- /**
196
- * Whether the peer a remote target routes to is reachable right now.
197
- *
198
- * A remote-mode boot still needs its own local services — localizations, theme,
199
- * the plugin registry — before any remote work can happen. Routing those to a
200
- * peer that is not connected leaves them unanswered, so the whole shell fails to
201
- * activate: a dropped connection becomes "the application is unavailable" and
202
- * stays that way until the user restarts into local mode. Serve local while the
203
- * peer is away; the live session takes over again as soon as it is reachable.
204
- */
205
- setRemoteAvailability(check) { this.remoteAvailability = check; }
206
- routesToRemote(endpoint) {
207
- return this.remoteTarget !== undefined && !isLocalOnlyEndpoint(endpoint) && this.remoteAvailability();
208
- }
209
- selectInvoke(request) {
210
- if (isLocalOnlyEndpoint(endpointOf(request)))
211
- return this.localInvoke(request);
212
- if (this.remoteTarget !== undefined && this.remoteAvailability()) {
213
- // A remote-mode boot still issues RPCs only the local shell can answer: the
214
- // Desktop asks the local Web server for its locale bootstrap before any remote
215
- // work happens. Sweeping those to the peer failed as "desktop welcome: Web RPC
216
- // failed", the locale plugin failed with it, and 48 entries never activated.
217
- // Serve locally when the peer does not implement the endpoint, or when it went
218
- // away mid-call; a business error still propagates.
219
- return this.remoteTarget.invoke(request)
220
- .then(result => normalizeByteResult(endpointOf(request), result))
221
- .catch(error => {
222
- if (!localFallbackAllowed(endpointOf(request), error))
223
- throw error;
224
- console.warn(`[dsh-remote] serving ${endpointOf(request)} locally: the peer did not answer it`, error);
225
- return this.localInvoke(request);
226
- });
227
- }
228
- if (request.namespace !== 'commands' || !isRemoteCommandMethod(request.method) || this.remoteInvoke === undefined) {
229
- return this.localInvoke(request);
230
- }
231
- if (!this.remoteAvailability())
232
- return this.localInvoke(request);
233
- if (this.remoteSupport[request.method])
234
- return this.remoteInvoke(request);
235
- if (request.method === 'list')
236
- return Promise.resolve([]);
237
- return this.localInvoke(request);
238
- }
239
- /**
240
- * Run a remote call, and answer it locally when the peer turns out not to serve
241
- * that endpoint. A remote-mode boot still issues RPCs only the local shell can
242
- * answer: the Desktop asks the local Web server for its locale bootstrap over the
243
- * remote mux before any remote work happens. Forwarding those swept them to a host
244
- * that does not implement them, the locale plugin failed, and every entry
245
- * depending on it stayed pending. A genuine business error still propagates.
246
- * @param endpoint - endpoint being routed, for the diagnostic warning.
247
- * @param remote - the remote carrier call.
248
- * @param local - the local call used when the peer could not answer.
249
- * @returns the remote or local result.
250
- */
251
- withLocalFallback(endpoint, remote, local) {
252
- return remote().catch(error => {
253
- if (!localFallbackAllowed(endpoint, error))
254
- throw error;
255
- console.warn(`[dsh-remote] serving ${endpoint} locally: the peer did not answer it`, error);
256
- return local();
257
- });
258
- }
259
- failure(error) {
260
- const normalized = this.runtime.wireStream?.failure(error);
261
- if (normalized !== undefined)
262
- return normalized;
263
- const source = error instanceof Error ? error : new Error('The Harness Gateway rejected the request.');
264
- const code = 'code' in source && typeof source.code === 'string' ? source.code : 'internal';
265
- const details = 'details' in source && isRecord(source.details) ? source.details : {};
266
- return { code, message: source.message, details };
267
- }
268
- }
269
- /**
270
- * dsh 0.1.7-rc.1 moved the cancellation signal from the third parameter to the
271
- * fifth; legacy releases keep `(endpoint, payload, signal)`.
272
- * @param open - carrier opener captured from the running release.
273
- * @returns whether the opener follows the rc.1 argument order.
274
- */
275
- function usesRc1Arity(open) {
276
- return open.length >= 5;
277
- }
278
- /** An uplink nobody sends on, so a read-only stream opens without buffering. */
279
- function endedUplink() {
280
- return {
281
- [Symbol.asyncIterator]() {
282
- return { next: () => Promise.resolve({ done: true, value: undefined }) };
283
- },
284
- };
285
- }
286
- /** Controller aborted with the logical stream so the rc.1 carrier owns one lifetime. */
287
- function linkControl(signal) {
288
- const control = new AbortController();
289
- if (signal.aborted)
290
- control.abort(signal.reason);
291
- else
292
- signal.addEventListener('abort', () => control.abort(signal.reason), { once: true });
293
- return control;
294
- }
295
- /**
296
- * Adapt the running release's carrier opener to the plugin's 3-argument
297
- * `(endpoint, payload, signal)` seam without leaking the argument displacement.
298
- * @param gateway - official Gateway whose public `wireStream` is the fallback.
299
- * @param runtime - Gateway object owning the private `openWireStream` dispatcher.
300
- * @returns a local opener that carries the signal to the release's signal slot.
301
- */
302
- function createLocalOpen(gateway, runtime) {
303
- const open = runtime.openWireStream;
304
- if (open !== undefined) {
305
- return usesRc1Arity(open)
306
- ? (endpoint, payload, signal) => open
307
- .call(runtime, endpoint, payload, endedUplink(), undefined, signal, linkControl(signal))
308
- : (endpoint, payload, signal) => open.call(runtime, endpoint, payload, signal);
309
- }
310
- const wire = gateway.wireStream;
311
- if (wire === undefined)
312
- return undefined;
313
- const wireOpen = wire.open;
314
- if (usesRc1Arity(wireOpen)) {
315
- const rc1 = wireOpen;
316
- return (endpoint, payload, signal) => rc1.call(wire, endpoint, payload, endedUplink(), undefined, signal);
317
- }
318
- const legacy = wireOpen;
319
- return (endpoint, payload, signal) => legacy.call(wire, endpoint, payload, signal);
320
- }
321
- function requestFromCarrier(endpoint, payload, signal) {
322
- const segments = endpoint.split('/');
323
- if (segments.length !== 2 || segments.some(segment => segment.length === 0)) {
324
- throw new Error('The Harness Gateway endpoint is invalid.');
325
- }
326
- if (!isRecord(payload) || !isRecord(payload.args)) {
327
- throw new Error('The Harness Gateway payload is invalid.');
328
- }
329
- return { namespace: segments[0], method: segments[1], args: payload.args, signal };
330
- }
331
- function endpointOf(request) {
332
- return `${request.namespace}/${request.method}`;
333
- }
334
- function namespaceOf(endpoint) {
335
- const separator = endpoint.indexOf('/');
336
- return separator > 0 ? endpoint.slice(0, separator) : undefined;
337
- }
338
- function isLocalOnlyEndpoint(endpoint) {
339
- const namespace = namespaceOf(endpoint);
340
- return namespace !== undefined && LOCAL_ONLY_NAMESPACES.has(namespace);
341
- }
342
- /**
343
- * Whether the local shell may answer a call the peer could not.
344
- *
345
- * A refusal means the peer does not implement the endpoint, and the local shell is the right answer
346
- * for the bootstrap calls a window needs. A peer that is *gone* is different: serving its data
347
- * locally hands the UI a plausible wrong answer, so only the bootstrap namespaces may answer then.
348
- * @param endpoint - endpoint being routed.
349
- * @param error - rejection from the remote carrier.
350
- * @returns whether the local shell should answer instead.
351
- */
352
- function localFallbackAllowed(endpoint, error) {
353
- if (!isUnansweredByPeer(error))
354
- return false;
355
- if (!isRecord(error))
356
- return true;
357
- const code = typeof error.code === 'string' ? error.code : '';
358
- if (!PEER_GONE_CODES.has(code))
359
- return true;
360
- const namespace = namespaceOf(endpoint);
361
- return namespace !== undefined && LOCAL_FALLBACK_NAMESPACES.has(namespace);
362
- }
363
- function isRemoteCommandMethod(method) {
364
- return REMOTE_COMMAND_METHODS.includes(method);
365
- }
366
- /**
367
- * Whether the peer cannot answer this call at all, as opposed to answering with a
368
- * refusal. An unimplemented endpoint (a local-only concern the switch forwarded
369
- * anyway) and a connection that dropped mid-call are both permissionless to retry
370
- * locally; a business error such as a denied permission is not.
371
- * @param error - rejection from the remote carrier.
372
- * @returns whether the local shell should answer the call instead.
373
- */ function isUnansweredByPeer(error) {
374
- // A wrapped carrier failure such as "Web RPC failed" often arrives with no code at
375
- // all, and refusing to fall back there would leave the local shell unanswered. The
376
- // warning emitted at the call site keeps the decision visible in DevTools.
377
- if (!isRecord(error))
378
- return error instanceof Error;
379
- const code = typeof error.code === 'string' ? error.code : '';
380
- return code === '' || UNANSWERED_BY_PEER_CODES.has(code);
381
- }
382
- const UNANSWERED_BY_PEER_CODES = new Set([
383
- 'METHOD_NOT_ALLOWED',
384
- 'METHOD_NOT_FOUND',
385
- 'method-not-found',
386
- 'not-implemented',
387
- 'CONNECTION_FAILED',
388
- 'CONNECTION_REPLACED',
389
- 'NOT_CONNECTED',
390
- 'UNAVAILABLE',
391
- // The client's own transport codes: the peer cannot answer a call it never received, so these are
392
- // "unanswered" rather than a refusal - and PEER_GONE_CODES above is what decides whether the local
393
- // shell may answer for it.
394
- 'TRANSPORT_CLOSED',
395
- 'CLIENT_CLOSED',
396
- 'RPC_TIMEOUT',
397
- 'internal',
398
- ]);
399
- function isRecord(value) {
400
- return typeof value === 'object' && value !== null && !Array.isArray(value);
401
- }
402
- /**
403
- * Endpoints whose canonical result carries bytes, which the CodeX projection answers with base64.
404
- *
405
- * The native UI validates \`workspaceFiles/readBytes\` against a generated schema that requires a real
406
- * \`Uint8Array\`, while the CodeX workspace projection returns base64 for its own consumers - reaching that
407
- * schema as \`expected "Uint8Array", path: ["data"]\`, the image-preview failure. Normalising at the local
408
- * carrier's exit keeps the projection's own wire unchanged and only fixes what the local shell receives.
409
- *
410
- * @param endpoint - endpoint the result belongs to.
411
- * @param result - the peer's result.
412
- * @returns the result with byte-valued fields restored to \`Uint8Array\`.
413
- */
414
- /** Shapes only: what a byte field looks like where it crosses a seam (never the content). */
415
- function describeBytes(data) {
416
- return {
417
- dataIsBytes: data instanceof Uint8Array,
418
- dataType: typeof data,
419
- dataKeys: typeof data === 'object' && data !== null ? Object.keys(data).length : 0,
420
- preview: typeof data === 'string' ? data.slice(0, 12) : undefined,
421
- };
422
- }
423
- function normalizeByteResult(endpoint, result) {
424
- if (endpoint !== 'workspaceFiles/readBytes')
425
- return result;
426
- if (typeof result !== 'object' || result === null || Array.isArray(result))
427
- return result;
428
- const value = result.value;
429
- if (typeof value !== 'object' || value === null || Array.isArray(value))
430
- return result;
431
- const data = value.data;
432
- console.warn('[dsh-remote] workspaceFiles/readBytes at the switch exit', describeBytes(data));
433
- if (data instanceof Uint8Array)
434
- return result;
435
- const bytes = decodeByteValue(data);
436
- // Shapes only; never the content itself. This is the seam that faces the local shell.
437
- console.warn('[dsh-remote] workspace probe', {
438
- where: 'switch.exit',
439
- endpoint,
440
- dataType: typeof data,
441
- dataKeys: typeof data === 'object' && data !== null ? Object.keys(data).length : 0,
442
- decoded: bytes !== undefined,
443
- });
444
- if (bytes === undefined)
445
- return result;
446
- return { ...result, value: { ...value, data: bytes } };
447
- }
448
- //# sourceMappingURL=typert-gateway-switch.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"typert-gateway-switch.js","sourceRoot":"","sources":["../src/typert-gateway-switch.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts DELETED
@@ -1,20 +0,0 @@
1
- import type { RemoteMessage } from '@dsh-remote/protocol';
2
- export interface AuthenticatedPeerChannel {
3
- /**
4
- * Attestation supplied by the Noise/control-plane integration. Implementors
5
- * must expose this channel only after both the Noise IK transcript and the
6
- * Server membership for this exact connection have been verified.
7
- */
8
- readonly security: {
9
- protocol: 'Noise_IK_25519_ChaChaPoly_SHA256';
10
- connectionId: string;
11
- membershipId: string;
12
- };
13
- readonly peerDeviceId: string;
14
- readonly peerIdentityKey: string;
15
- readonly mode?: 'LAN' | 'P2P' | 'TURN' | 'Relay';
16
- send(message: RemoteMessage): Promise<void>;
17
- onMessage(handler: (message: RemoteMessage) => void): () => void;
18
- close(code?: string): Promise<void>;
19
- }
20
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEzD,MAAM,WAAW,wBAAwB;IACvC;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE;QACjB,QAAQ,EAAE,kCAAkC,CAAA;QAC5C,YAAY,EAAE,MAAM,CAAA;QACpB,YAAY,EAAE,MAAM,CAAA;KACrB,CAAA;IACD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,CAAA;IAChD,IAAI,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3C,SAAS,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,GAAG,MAAM,IAAI,CAAA;IAChE,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACpC"}
package/dist/types.js DELETED
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
package/dist/types.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
package/dist/version.d.ts DELETED
@@ -1,12 +0,0 @@
1
- /**
2
- * Version of the `ds-harness-remote` distribution.
3
- *
4
- * This is reported to the Server during device registration (`clientVersion`
5
- * in the Device Descriptor) and again in the WebSocket `hello` frame. The
6
- * Harness version is read separately from `host.describe` at runtime.
7
- * Keep it in sync with `packages/plugin/package.json` (`version`).
8
- * If they diverge, `npm scripts` checks in `scripts/verify-version-sync.mjs`
9
- * will fail fast during build/check/test.
10
- */
11
- export declare const PLUGIN_VERSION = "0.4.30";
12
- //# sourceMappingURL=version.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,WAAW,CAAA"}
package/dist/version.js DELETED
@@ -1,12 +0,0 @@
1
- /**
2
- * Version of the `ds-harness-remote` distribution.
3
- *
4
- * This is reported to the Server during device registration (`clientVersion`
5
- * in the Device Descriptor) and again in the WebSocket `hello` frame. The
6
- * Harness version is read separately from `host.describe` at runtime.
7
- * Keep it in sync with `packages/plugin/package.json` (`version`).
8
- * If they diverge, `npm scripts` checks in `scripts/verify-version-sync.mjs`
9
- * will fail fast during build/check/test.
10
- */
11
- export const PLUGIN_VERSION = '0.4.30';
12
- //# sourceMappingURL=version.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,QAAQ,CAAA"}