@the-open-engine/zeroshot 6.29.0 → 6.30.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 (347) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/cli/index.js +2 -4
  3. package/lib/agent-cli-provider/adapters/codex.d.ts.map +1 -1
  4. package/lib/agent-cli-provider/adapters/codex.js +0 -1
  5. package/lib/agent-cli-provider/adapters/codex.js.map +1 -1
  6. package/lib/agent-cli-provider/contract-actions.d.ts +1 -1
  7. package/lib/agent-cli-provider/contract-actions.d.ts.map +1 -1
  8. package/lib/agent-cli-provider/contract-actions.js +5 -5
  9. package/lib/agent-cli-provider/contract-actions.js.map +1 -1
  10. package/lib/agent-cli-provider/contract-invoke.d.ts +1 -1
  11. package/lib/agent-cli-provider/contract-invoke.d.ts.map +1 -1
  12. package/lib/agent-cli-provider/contract-invoke.js +2 -2
  13. package/lib/agent-cli-provider/contract-invoke.js.map +1 -1
  14. package/lib/agent-cli-provider/contract-support.d.ts +1 -1
  15. package/lib/agent-cli-provider/contract-support.d.ts.map +1 -1
  16. package/lib/agent-cli-provider/contract-support.js +2 -2
  17. package/lib/agent-cli-provider/contract-support.js.map +1 -1
  18. package/lib/agent-cli-provider/contract.d.ts +1 -0
  19. package/lib/agent-cli-provider/contract.d.ts.map +1 -1
  20. package/lib/agent-cli-provider/contract.js +1 -1
  21. package/lib/agent-cli-provider/contract.js.map +1 -1
  22. package/lib/agent-cli-provider/index.d.ts +1 -1
  23. package/lib/agent-cli-provider/index.d.ts.map +1 -1
  24. package/lib/agent-cli-provider/index.js +2 -1
  25. package/lib/agent-cli-provider/index.js.map +1 -1
  26. package/lib/agent-cli-provider/provider-registry.d.ts +1 -0
  27. package/lib/agent-cli-provider/provider-registry.d.ts.map +1 -1
  28. package/lib/agent-cli-provider/provider-registry.js +4 -0
  29. package/lib/agent-cli-provider/provider-registry.js.map +1 -1
  30. package/lib/agent-cli-provider/single-agent-runtime.d.ts +3 -3
  31. package/lib/agent-cli-provider/single-agent-runtime.d.ts.map +1 -1
  32. package/lib/agent-cli-provider/single-agent-runtime.js +22 -48
  33. package/lib/agent-cli-provider/single-agent-runtime.js.map +1 -1
  34. package/lib/cluster/client.cjs +30 -7
  35. package/lib/cluster/client.d.cts +52 -0
  36. package/lib/cluster/client.d.mts +52 -0
  37. package/lib/cluster/client.d.ts +4 -6
  38. package/lib/cluster/client.mjs +32 -9
  39. package/lib/cluster/connection-state.cjs +25 -0
  40. package/lib/cluster/connection-state.d.cts +13 -0
  41. package/lib/cluster/connection-state.d.mts +13 -0
  42. package/lib/cluster/connection-state.d.ts +13 -0
  43. package/lib/cluster/connection-state.mjs +21 -0
  44. package/lib/{target/hosted-run/contracts.js → cluster/connection-types.cjs} +0 -1
  45. package/lib/cluster/connection-types.d.cts +33 -0
  46. package/lib/cluster/connection-types.d.mts +33 -0
  47. package/lib/cluster/connection-types.d.ts +33 -0
  48. package/lib/cluster/connection-types.mjs +1 -0
  49. package/lib/cluster/connection.cjs +18 -46
  50. package/lib/cluster/connection.d.cts +26 -0
  51. package/lib/cluster/connection.d.mts +26 -0
  52. package/lib/cluster/connection.d.ts +7 -25
  53. package/lib/cluster/connection.mjs +12 -42
  54. package/lib/cluster/errors.cjs +9 -1
  55. package/lib/cluster/errors.d.cts +29 -0
  56. package/lib/cluster/errors.d.mts +29 -0
  57. package/lib/cluster/errors.d.ts +4 -0
  58. package/lib/cluster/errors.mjs +7 -0
  59. package/lib/cluster/frames.d.cts +12 -0
  60. package/lib/cluster/frames.d.mts +12 -0
  61. package/lib/cluster/generated/protocol-schema.d.cts +1 -0
  62. package/lib/cluster/generated/protocol-schema.d.mts +1 -0
  63. package/lib/cluster/generated/protocol.d.cts +781 -0
  64. package/lib/cluster/generated/protocol.d.mts +781 -0
  65. package/lib/cluster/index.cjs +2 -2
  66. package/lib/cluster/index.d.cts +13 -0
  67. package/lib/cluster/index.d.mts +13 -0
  68. package/lib/cluster/index.d.ts +3 -3
  69. package/lib/cluster/index.mjs +2 -2
  70. package/lib/cluster/json-source.cjs +1 -0
  71. package/lib/cluster/json-source.d.cts +5 -0
  72. package/lib/cluster/json-source.d.mts +5 -0
  73. package/lib/cluster/json-source.d.ts +1 -0
  74. package/lib/cluster/json-source.mjs +1 -0
  75. package/lib/cluster/payload-value.cjs +1 -0
  76. package/lib/cluster/payload-value.d.cts +8 -0
  77. package/lib/cluster/payload-value.d.mts +8 -0
  78. package/lib/cluster/payload-value.d.ts +1 -0
  79. package/lib/cluster/payload-value.mjs +1 -0
  80. package/lib/cluster/queue.d.cts +15 -0
  81. package/lib/cluster/queue.d.mts +15 -0
  82. package/lib/cluster/socket.cjs +8 -0
  83. package/lib/cluster/socket.d.cts +13 -0
  84. package/lib/cluster/socket.d.mts +13 -0
  85. package/lib/cluster/socket.d.ts +2 -0
  86. package/lib/cluster/socket.mjs +7 -0
  87. package/lib/cluster/subscriptions.d.cts +73 -0
  88. package/lib/cluster/subscriptions.d.mts +73 -0
  89. package/lib/cluster/subscriptions.d.ts +5 -1
  90. package/lib/cluster/validators.cjs +1 -0
  91. package/lib/cluster/validators.d.cts +7 -0
  92. package/lib/cluster/validators.d.mts +7 -0
  93. package/lib/cluster/validators.d.ts +1 -0
  94. package/lib/cluster/validators.mjs +1 -0
  95. package/lib/cluster-worker/engine-adapter-common.js +37 -0
  96. package/lib/cluster-worker/engine-adapter.js +24 -30
  97. package/lib/cluster-worker/engine-start.js +59 -0
  98. package/lib/cluster-worker/index.js +49 -67
  99. package/lib/cluster-worker/profiles.js +1 -42
  100. package/lib/cluster-worker/runtime-dependencies.js +49 -0
  101. package/lib/cluster-worker/runtime-support.js +2 -34
  102. package/lib/cluster-worker/terminal-normalizer.js +9 -10
  103. package/lib/hosted-session/authority.cjs +61 -0
  104. package/lib/hosted-session/authority.d.cts +3 -0
  105. package/lib/hosted-session/authority.d.mts +3 -0
  106. package/lib/hosted-session/authority.d.ts +3 -0
  107. package/lib/hosted-session/authority.mjs +57 -0
  108. package/lib/hosted-session/coordinator.cjs +78 -51
  109. package/lib/hosted-session/coordinator.d.cts +11 -0
  110. package/lib/hosted-session/coordinator.d.mts +11 -0
  111. package/lib/hosted-session/coordinator.d.ts +4 -2
  112. package/lib/hosted-session/coordinator.mjs +75 -51
  113. package/lib/hosted-session/errors.cjs +25 -0
  114. package/lib/hosted-session/errors.d.cts +10 -0
  115. package/lib/hosted-session/errors.d.mts +10 -0
  116. package/lib/hosted-session/errors.d.ts +10 -0
  117. package/lib/hosted-session/errors.mjs +19 -0
  118. package/lib/hosted-session/index.cjs +4 -1
  119. package/lib/hosted-session/index.d.cts +2 -0
  120. package/lib/hosted-session/index.d.mts +2 -0
  121. package/lib/hosted-session/index.d.ts +2 -2
  122. package/lib/hosted-session/index.mjs +1 -1
  123. package/lib/hosted-session/reconnecting-watch.cjs +131 -0
  124. package/lib/hosted-session/reconnecting-watch.d.cts +13 -0
  125. package/lib/hosted-session/reconnecting-watch.d.mts +13 -0
  126. package/lib/hosted-session/reconnecting-watch.d.ts +13 -0
  127. package/lib/hosted-session/reconnecting-watch.mjs +127 -0
  128. package/lib/hosted-session/types.d.cts +32 -0
  129. package/lib/hosted-session/types.d.mts +32 -0
  130. package/lib/hosted-session/types.d.ts +19 -7
  131. package/lib/hosted-target/access-url.cjs +44 -0
  132. package/lib/hosted-target/access-url.d.cts +2 -0
  133. package/lib/hosted-target/access-url.d.mts +2 -0
  134. package/lib/hosted-target/access-url.d.ts +2 -0
  135. package/lib/hosted-target/access-url.mjs +41 -0
  136. package/lib/hosted-target/adapter-request.cjs +12 -0
  137. package/lib/hosted-target/adapter-request.d.cts +17 -0
  138. package/lib/hosted-target/adapter-request.d.mts +17 -0
  139. package/lib/hosted-target/adapter-request.d.ts +17 -0
  140. package/lib/hosted-target/adapter-request.mjs +9 -0
  141. package/lib/hosted-target/adapter-types.cjs +2 -0
  142. package/lib/hosted-target/adapter-types.d.cts +27 -0
  143. package/lib/hosted-target/adapter-types.d.mts +27 -0
  144. package/lib/hosted-target/adapter-types.d.ts +27 -0
  145. package/lib/hosted-target/adapter-types.mjs +1 -0
  146. package/lib/hosted-target/bounds.cjs +10 -0
  147. package/lib/hosted-target/bounds.d.cts +7 -0
  148. package/lib/hosted-target/bounds.d.mts +7 -0
  149. package/lib/hosted-target/bounds.d.ts +7 -0
  150. package/lib/hosted-target/bounds.mjs +7 -0
  151. package/lib/hosted-target/capsule-error-response.cjs +76 -0
  152. package/lib/hosted-target/capsule-error-response.d.cts +2 -0
  153. package/lib/hosted-target/capsule-error-response.d.mts +2 -0
  154. package/lib/hosted-target/capsule-error-response.d.ts +2 -0
  155. package/lib/hosted-target/capsule-error-response.mjs +73 -0
  156. package/lib/hosted-target/errors.cjs +88 -0
  157. package/lib/hosted-target/errors.d.cts +36 -0
  158. package/lib/hosted-target/errors.d.mts +36 -0
  159. package/lib/hosted-target/errors.d.ts +36 -0
  160. package/lib/hosted-target/errors.mjs +75 -0
  161. package/lib/hosted-target/index.cjs +16 -0
  162. package/lib/hosted-target/index.d.cts +3 -0
  163. package/lib/hosted-target/index.d.mts +3 -0
  164. package/lib/hosted-target/index.d.ts +3 -0
  165. package/lib/hosted-target/index.mjs +2 -0
  166. package/lib/hosted-target/response-validation.cjs +169 -0
  167. package/lib/hosted-target/response-validation.d.cts +5 -0
  168. package/lib/hosted-target/response-validation.d.mts +5 -0
  169. package/lib/hosted-target/response-validation.d.ts +5 -0
  170. package/lib/hosted-target/response-validation.mjs +163 -0
  171. package/lib/hosted-target/retry-executor.cjs +51 -0
  172. package/lib/hosted-target/retry-executor.d.cts +8 -0
  173. package/lib/hosted-target/retry-executor.d.mts +8 -0
  174. package/lib/hosted-target/retry-executor.d.ts +8 -0
  175. package/lib/hosted-target/retry-executor.mjs +48 -0
  176. package/lib/hosted-target/retry.cjs +78 -0
  177. package/lib/hosted-target/retry.d.cts +9 -0
  178. package/lib/hosted-target/retry.d.mts +9 -0
  179. package/lib/hosted-target/retry.d.ts +9 -0
  180. package/lib/hosted-target/retry.mjs +73 -0
  181. package/lib/hosted-target/target-adapter.cjs +10 -0
  182. package/lib/hosted-target/target-adapter.d.cts +3 -0
  183. package/lib/hosted-target/target-adapter.d.mts +3 -0
  184. package/lib/hosted-target/target-adapter.d.ts +3 -0
  185. package/lib/hosted-target/target-adapter.mjs +7 -0
  186. package/lib/hosted-target/types.cjs +4 -0
  187. package/lib/hosted-target/types.d.cts +50 -0
  188. package/lib/hosted-target/types.d.mts +50 -0
  189. package/lib/hosted-target/types.d.ts +50 -0
  190. package/lib/hosted-target/types.mjs +1 -0
  191. package/lib/hosted-target/zero-cloud-v1-adapter.cjs +185 -0
  192. package/lib/hosted-target/zero-cloud-v1-adapter.d.cts +13 -0
  193. package/lib/hosted-target/zero-cloud-v1-adapter.d.mts +13 -0
  194. package/lib/hosted-target/zero-cloud-v1-adapter.d.ts +13 -0
  195. package/lib/hosted-target/zero-cloud-v1-adapter.mjs +181 -0
  196. package/lib/start-cluster.js +3 -3
  197. package/lib/target/bounded-response.cjs +51 -0
  198. package/lib/target/bounded-response.d.cts +1 -0
  199. package/lib/target/bounded-response.d.mts +1 -0
  200. package/lib/target/bounded-response.d.ts +1 -0
  201. package/lib/target/bounded-response.js +51 -0
  202. package/lib/target/bounded-response.mjs +48 -0
  203. package/lib/target/credential-lock.js +1 -3
  204. package/lib/target/credential-store.js +9 -4
  205. package/lib/target/device-flow.cjs +213 -0
  206. package/lib/target/device-flow.d.cts +54 -0
  207. package/lib/target/device-flow.d.mts +54 -0
  208. package/lib/target/device-flow.d.ts +26 -14
  209. package/lib/target/device-flow.js +162 -58
  210. package/lib/target/device-flow.mjs +203 -0
  211. package/lib/target/discovery-errors.cjs +10 -0
  212. package/lib/target/discovery-errors.d.cts +3 -0
  213. package/lib/target/discovery-errors.d.mts +3 -0
  214. package/lib/target/discovery-errors.d.ts +3 -0
  215. package/lib/target/discovery-errors.js +10 -0
  216. package/lib/target/discovery-errors.mjs +6 -0
  217. package/lib/target/discovery-sections.cjs +191 -0
  218. package/lib/target/discovery-sections.d.cts +52 -0
  219. package/lib/target/discovery-sections.d.mts +52 -0
  220. package/lib/target/discovery-sections.d.ts +52 -0
  221. package/lib/target/discovery-sections.js +191 -0
  222. package/lib/target/discovery-sections.mjs +179 -0
  223. package/lib/target/discovery-validation.cjs +109 -0
  224. package/lib/target/discovery-validation.d.cts +28 -0
  225. package/lib/target/discovery-validation.d.mts +28 -0
  226. package/lib/target/discovery-validation.d.ts +28 -0
  227. package/lib/target/discovery-validation.js +109 -0
  228. package/lib/target/discovery-validation.mjs +99 -0
  229. package/lib/target/discovery.cjs +112 -0
  230. package/lib/target/discovery.d.cts +74 -0
  231. package/lib/target/discovery.d.mts +74 -0
  232. package/lib/target/discovery.d.ts +67 -5
  233. package/lib/target/discovery.js +94 -79
  234. package/lib/target/discovery.mjs +105 -0
  235. package/lib/target/index.d.ts +6 -6
  236. package/lib/target/index.js +36 -36
  237. package/lib/target/oauth-http.d.ts +2 -0
  238. package/lib/target/oauth-http.js +25 -0
  239. package/lib/target/refresh-exchange.d.ts +11 -0
  240. package/lib/target/refresh-exchange.js +24 -0
  241. package/lib/target/refresh-revocation.d.ts +8 -0
  242. package/lib/target/refresh-revocation.js +19 -0
  243. package/lib/target/route-template.cjs +85 -0
  244. package/lib/target/route-template.d.cts +7 -0
  245. package/lib/target/route-template.d.mts +7 -0
  246. package/lib/target/route-template.d.ts +7 -0
  247. package/lib/target/route-template.js +85 -0
  248. package/lib/target/route-template.mjs +81 -0
  249. package/lib/target/session-errors.d.ts +4 -0
  250. package/lib/target/session-errors.js +12 -0
  251. package/lib/target/session-verification.d.ts +10 -0
  252. package/lib/target/session-verification.js +42 -0
  253. package/lib/target/target-registry.d.ts +7 -3
  254. package/lib/target/target-registry.js +41 -10
  255. package/lib/target/target-session-manager.d.ts +48 -0
  256. package/lib/target/target-session-manager.js +226 -0
  257. package/lib/target/target-session.d.ts +39 -32
  258. package/lib/target/target-session.js +63 -151
  259. package/lib/target/token-response.cjs +51 -0
  260. package/lib/target/token-response.d.cts +7 -0
  261. package/lib/target/token-response.d.mts +7 -0
  262. package/lib/target/token-response.d.ts +7 -0
  263. package/lib/target/token-response.js +51 -0
  264. package/lib/target/token-response.mjs +48 -0
  265. package/package.json +14 -7
  266. package/protocol/openengine-cluster/v1/worker.schema.json +171 -9
  267. package/scripts/build-cluster.js +23 -3
  268. package/scripts/opcore-introduced-check.js +0 -2
  269. package/src/agent-cli-provider/adapters/codex.ts +0 -1
  270. package/src/agent-cli-provider/contract-actions.ts +9 -5
  271. package/src/agent-cli-provider/contract-invoke.ts +3 -2
  272. package/src/agent-cli-provider/contract-support.ts +12 -6
  273. package/src/agent-cli-provider/contract.ts +6 -1
  274. package/src/agent-cli-provider/index.ts +1 -0
  275. package/src/agent-cli-provider/provider-registry.ts +4 -0
  276. package/src/agent-cli-provider/single-agent-runtime.ts +32 -45
  277. package/src/cluster/client.ts +42 -15
  278. package/src/cluster/connection-state.ts +33 -0
  279. package/src/cluster/connection-types.ts +28 -0
  280. package/src/cluster/connection.ts +37 -68
  281. package/src/cluster/errors.ts +5 -0
  282. package/src/cluster/index.ts +3 -1
  283. package/src/cluster/json-source.ts +1 -0
  284. package/src/cluster/payload-value.ts +1 -0
  285. package/src/cluster/socket.ts +13 -0
  286. package/src/cluster/subscriptions.ts +7 -2
  287. package/src/cluster/validators.ts +1 -0
  288. package/src/cluster/ws.d.ts +1 -1
  289. package/src/hosted-session/authority.ts +77 -0
  290. package/src/hosted-session/coordinator.ts +113 -56
  291. package/src/hosted-session/errors.ts +21 -0
  292. package/src/hosted-session/index.ts +14 -2
  293. package/src/hosted-session/reconnecting-watch.ts +148 -0
  294. package/src/hosted-session/types.ts +22 -8
  295. package/src/hosted-target/access-url.ts +46 -0
  296. package/src/hosted-target/adapter-request.ts +28 -0
  297. package/src/hosted-target/adapter-types.ts +39 -0
  298. package/src/hosted-target/bounds.ts +1 -0
  299. package/src/hosted-target/capsule-error-response.ts +107 -0
  300. package/src/hosted-target/errors.ts +36 -35
  301. package/src/hosted-target/index.ts +10 -23
  302. package/src/hosted-target/response-validation.ts +170 -62
  303. package/src/hosted-target/retry-executor.ts +62 -0
  304. package/src/hosted-target/retry.ts +47 -11
  305. package/src/hosted-target/target-adapter.ts +12 -8
  306. package/src/hosted-target/types.ts +19 -18
  307. package/src/hosted-target/zero-cloud-v1-adapter.ts +229 -316
  308. package/src/isolation-manager.js +1 -16
  309. package/src/target/bounded-response.ts +68 -0
  310. package/src/target/credential-lock.ts +1 -3
  311. package/src/target/credential-store.ts +14 -10
  312. package/src/target/device-flow.ts +209 -85
  313. package/src/target/discovery-errors.ts +6 -0
  314. package/src/target/discovery-sections.ts +251 -0
  315. package/src/target/discovery-validation.ts +144 -0
  316. package/src/target/discovery.ts +163 -97
  317. package/src/target/index.ts +15 -11
  318. package/src/target/oauth-http.ts +27 -0
  319. package/src/target/refresh-exchange.ts +36 -0
  320. package/src/target/refresh-revocation.ts +29 -0
  321. package/src/target/route-template.ts +105 -0
  322. package/src/target/session-errors.ts +9 -0
  323. package/src/target/session-verification.ts +51 -0
  324. package/src/target/target-registry.ts +60 -27
  325. package/src/target/target-session-manager.ts +285 -0
  326. package/src/target/target-session.ts +105 -226
  327. package/src/target/token-response.ts +62 -0
  328. package/docker/zeroshot-oecp/Cargo.toml +0 -12
  329. package/docker/zeroshot-oecp/Dockerfile +0 -65
  330. package/docker/zeroshot-oecp/src/main.rs +0 -32
  331. package/lib/target/bounded-json.d.ts +0 -6
  332. package/lib/target/bounded-json.js +0 -43
  333. package/lib/target/hosted-run/client.d.ts +0 -26
  334. package/lib/target/hosted-run/client.js +0 -158
  335. package/lib/target/hosted-run/commands.d.ts +0 -4
  336. package/lib/target/hosted-run/commands.js +0 -113
  337. package/lib/target/hosted-run/contracts.d.ts +0 -49
  338. package/lib/target/hosted-run/input.d.ts +0 -5
  339. package/lib/target/hosted-run/input.js +0 -200
  340. package/lib/target/hosted-run.d.ts +0 -4
  341. package/lib/target/hosted-run.js +0 -12
  342. package/src/target/bounded-json.ts +0 -48
  343. package/src/target/hosted-run/client.ts +0 -198
  344. package/src/target/hosted-run/commands.ts +0 -140
  345. package/src/target/hosted-run/contracts.ts +0 -53
  346. package/src/target/hosted-run/input.ts +0 -199
  347. package/src/target/hosted-run.ts +0 -8
@@ -11,26 +11,21 @@ const provider_registry_1 = require("./provider-registry");
11
11
  const MODEL_LEVELS = ['level1', 'level2', 'level3'];
12
12
  const REASONING_EFFORTS = ['low', 'medium', 'high', 'xhigh', 'max'];
13
13
  const LEGACY_ISOLATED_PROVIDER_SETTINGS_ENV = 'ZEROSHOT_ISOLATED_PROVIDER_SETTINGS_JSON';
14
- const settingsModule = require('../../lib/settings');
15
14
  const providerDetectionModule = require('../../lib/provider-detection');
16
- const claudeAuthModule = require('../../lib/settings/claude-auth');
17
- const loadSettingsFn = moduleFunction(settingsModule, 'loadSettings');
18
- const getClaudeCommandFn = moduleFunction(settingsModule, 'getClaudeCommand');
19
15
  const commandExistsFn = moduleFunction(providerDetectionModule, 'commandExists');
20
16
  const getHelpOutputFn = moduleFunction(providerDetectionModule, 'getHelpOutput');
21
17
  const getVersionOutputFn = moduleFunction(providerDetectionModule, 'getVersionOutput');
22
- const resolveClaudeAuthFn = moduleFunction(claudeAuthModule, 'resolveClaudeAuth');
23
- function prepareSingleAgentProviderCommand(input) {
18
+ function prepareSingleAgentProviderCommand(input, runtimeSettings) {
24
19
  rejectCallerSuppliedModelProvenance(input);
25
20
  const baseOptions = input.options ?? {};
26
- const settings = loadRuntimeSettings();
21
+ const settings = runtimeSettings ?? loadRuntimeSettings();
27
22
  const adapter = adapterForRuntimeInput(input.provider, settings);
28
23
  const providerSettings = runtimeProviderSettings(settings, adapter.id, baseOptions.cwd ?? process.cwd());
29
24
  const requestedWebSearch = baseOptions.structuredOutputRecovery
30
25
  ? recoveryWebSearchOption(adapter)
31
26
  : (baseOptions.webSearch ?? providerSettings.webSearch);
32
27
  assertWebSearchDeclared(adapter.id, requestedWebSearch);
33
- const cliFeatures = resolveRuntimeCliFeatures(adapter.id, baseOptions.cliFeatures, requestedWebSearch === true);
28
+ const cliFeatures = resolveRuntimeCliFeatures(adapter.id, baseOptions.cliFeatures, requestedWebSearch === true, settings);
34
29
  const authEnv = baseOptions.authEnv ?? resolveRuntimeAuthEnv(adapter.id, settings);
35
30
  const options = buildRuntimeOptions(baseOptions, adapter, providerSettings, {
36
31
  cliFeatures,
@@ -59,12 +54,12 @@ function buildRuntimeCommand(adapter, context, options) {
59
54
  }
60
55
  return recoveryAdapter.buildStructuredOutputRecoveryCommand(context, options);
61
56
  }
62
- function detectRuntimeProviderCliFeatures(provider) {
63
- return probeRuntimeProviderCli(provider).capabilities;
57
+ function detectRuntimeProviderCliFeatures(provider, runtimeSettings) {
58
+ return probeRuntimeProviderCli(provider, undefined, runtimeSettings).capabilities;
64
59
  }
65
- function resolveRuntimeCliFeatures(provider, overrides, webSearchRequested) {
60
+ function resolveRuntimeCliFeatures(provider, overrides, webSearchRequested, runtimeSettings) {
66
61
  if (provider === 'gateway') {
67
- const detected = detectRuntimeProviderCliFeatures(provider);
62
+ const detected = detectRuntimeProviderCliFeatures(provider, runtimeSettings);
68
63
  return {
69
64
  ...detected,
70
65
  ...overrides,
@@ -73,16 +68,16 @@ function resolveRuntimeCliFeatures(provider, overrides, webSearchRequested) {
73
68
  };
74
69
  }
75
70
  if ((0, provider_registry_1.getProviderRegistryEntry)(provider).invoke.lane === 'acp-stdio') {
76
- const detected = detectRuntimeProviderCliFeatures(provider);
71
+ const detected = detectRuntimeProviderCliFeatures(provider, runtimeSettings);
77
72
  if (overrides === undefined)
78
73
  return detected;
79
74
  return mergeAcpFailClosedCliFeatures(detected, overrides);
80
75
  }
81
76
  if (overrides === undefined)
82
- return detectRuntimeProviderCliFeatures(provider);
77
+ return detectRuntimeProviderCliFeatures(provider, runtimeSettings);
83
78
  if (!webSearchRequested)
84
79
  return overrides;
85
- const detected = detectRuntimeProviderCliFeatures(provider);
80
+ const detected = detectRuntimeProviderCliFeatures(provider, runtimeSettings);
86
81
  return {
87
82
  ...overrides,
88
83
  supportsResume: 'supportsResume' in detected &&
@@ -110,13 +105,14 @@ function mergeAcpFailClosedCliFeatures(detected, overrides) {
110
105
  supportsTerminalTools: false,
111
106
  };
112
107
  }
113
- function probeRuntimeProviderCli(provider, evidence) {
108
+ function probeRuntimeProviderCli(provider, evidence, runtimeSettings) {
114
109
  const adapter = (0, adapters_1.getProviderAdapter)(provider);
115
110
  if (adapter.id === 'gateway') {
116
- return probeGatewayProvider(adapter);
111
+ return probeGatewayProvider(adapter, runtimeSettings);
117
112
  }
118
113
  const requested = (0, provider_registry_1.getProviderRegistryEntry)(adapter.id).settingsFields.includes('webSearch')
119
- ? runtimeProviderSettings(loadRuntimeSettings(), adapter.id, process.cwd()).webSearch === true
114
+ ? runtimeProviderSettings(runtimeSettings ?? loadRuntimeSettings(), adapter.id, process.cwd())
115
+ .webSearch === true
120
116
  : false;
121
117
  const helpCommand = runtimeHelpCommand(adapter.id);
122
118
  const commandAvailable = evidence === undefined
@@ -248,7 +244,9 @@ function modelSpecFromResolved(resolved) {
248
244
  function resolveRuntimeAuthEnv(provider, settings) {
249
245
  if (provider !== 'claude')
250
246
  return {};
251
- return stringRecordFromUnknown(resolveClaudeAuthFn(settings), 'resolveClaudeAuth');
247
+ const claudeAuthModule = require('../../lib/settings/claude-auth');
248
+ const resolveClaudeAuth = moduleFunction(claudeAuthModule, 'resolveClaudeAuth');
249
+ return stringRecordFromUnknown(resolveClaudeAuth(settings), 'resolveClaudeAuth');
252
250
  }
253
251
  function adapterForRuntimeInput(provider, settings) {
254
252
  const configured = provider ?? optionalString(settings.defaultProvider, 'settings.defaultProvider');
@@ -274,15 +272,12 @@ function runtimeProviderSettings(settings, provider, cwd) {
274
272
  return defaultLevel === undefined ? base : { ...base, defaultLevel };
275
273
  }
276
274
  function runtimeHelpCommand(provider) {
277
- if (provider === 'claude') {
278
- return commandPartsFromUnknown(getClaudeCommandFn(), 'getClaudeCommand');
279
- }
280
275
  return (0, provider_registry_1.resolveProviderCommand)(provider);
281
276
  }
282
- function probeGatewayProvider(adapter) {
277
+ function probeGatewayProvider(adapter, runtimeSettings) {
283
278
  const capabilities = attestedCliFeatures(adapter, '', '');
284
279
  try {
285
- const settings = loadRuntimeSettings();
280
+ const settings = runtimeSettings ?? loadRuntimeSettings();
286
281
  const providerSettings = runtimeProviderSettings(settings, 'gateway', process.cwd());
287
282
  (0, gateway_tools_1.resolveGatewayConfiguration)(providerSettings.gateway, 'settings.providerSettings.gateway', process.cwd());
288
283
  return {
@@ -332,7 +327,9 @@ function loadRuntimeSettings() {
332
327
  if (Object.prototype.hasOwnProperty.call(process.env, LEGACY_ISOLATED_PROVIDER_SETTINGS_ENV)) {
333
328
  throw new Error(`${LEGACY_ISOLATED_PROVIDER_SETTINGS_ENV} is not a trusted settings channel; use the settings file.`);
334
329
  }
335
- return requiredRecord(loadSettingsFn(), 'loadSettings');
330
+ const settingsModule = require('../../lib/settings');
331
+ const loadSettings = moduleFunction(settingsModule, 'loadSettings');
332
+ return requiredRecord(loadSettings(), 'loadSettings');
336
333
  }
337
334
  function rejectCallerSuppliedModelProvenance(input) {
338
335
  if (Object.prototype.hasOwnProperty.call(input, 'modelSpecSource')) {
@@ -349,13 +346,6 @@ function moduleFunction(moduleValue, field) {
349
346
  function isUnknownFunction(value) {
350
347
  return typeof value === 'function';
351
348
  }
352
- function commandPartsFromUnknown(value, field) {
353
- const record = requiredRecord(value, field);
354
- return {
355
- command: requiredStringValue(record.command, `${field}.command`),
356
- args: stringArray(record.args, `${field}.args`),
357
- };
358
- }
359
349
  function levelOverridesFromUnknown(value, field) {
360
350
  if (value === undefined)
361
351
  return {};
@@ -427,11 +417,6 @@ function optionalString(value, field) {
427
417
  return value;
428
418
  throw new Error(`${field} must be a string.`);
429
419
  }
430
- function requiredStringValue(value, field) {
431
- if (typeof value === 'string' && value.length > 0)
432
- return value;
433
- throw new Error(`${field} must be a non-empty string.`);
434
- }
435
420
  function optionalRecord(value, field) {
436
421
  if (value === undefined || value === null)
437
422
  return undefined;
@@ -454,17 +439,6 @@ function stringRecordFromUnknown(value, field) {
454
439
  }
455
440
  return result;
456
441
  }
457
- function stringArray(value, field) {
458
- if (!Array.isArray(value))
459
- throw new Error(`${field} must be an array.`);
460
- const result = [];
461
- for (const item of value) {
462
- if (typeof item !== 'string')
463
- throw new Error(`${field} entries must be strings.`);
464
- result.push(item);
465
- }
466
- return result;
467
- }
468
442
  function stringResult(value) {
469
443
  if (typeof value === 'string')
470
444
  return value;
@@ -1 +1 @@
1
- {"version":3,"file":"single-agent-runtime.js","sourceRoot":"","sources":["../../src/agent-cli-provider/single-agent-runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"single-agent-runtime.js","sourceRoot":"","sources":["../../src/agent-cli-provider/single-agent-runtime.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ClusterClient = void 0;
4
4
  exports.connect = connect;
5
5
  exports.connectInitialized = connectInitialized;
6
+ /// <reference path="./ws.d.ts" />
6
7
  const protocol_js_1 = require("./generated/protocol.cjs");
7
8
  const connection_js_1 = require("./connection.cjs");
8
9
  const socket_js_1 = require("./socket.cjs");
@@ -82,10 +83,7 @@ class ClusterClient {
82
83
  exports.ClusterClient = ClusterClient;
83
84
  async function defaultWebSocketFactory(url, protocols, options) {
84
85
  const globalWebSocket = globalThis.WebSocket;
85
- if (globalWebSocket) {
86
- if (options?.headers && Object.keys(options.headers).length > 0) {
87
- throw new errors_js_1.ClusterConfigError('WebSocket upgrade headers require the ws library; the browser WebSocket API cannot carry request headers', 'HEADERS_UNSUPPORTED');
88
- }
86
+ if (globalWebSocket && (!options?.headers || Object.keys(options.headers).length === 0)) {
89
87
  return new globalWebSocket(url, protocols);
90
88
  }
91
89
  try {
@@ -114,6 +112,7 @@ async function waitForOpen(socket, signal) {
114
112
  await new Promise((resolve, reject) => {
115
113
  let settled = false;
116
114
  const removers = [];
115
+ let upgradeFailure;
117
116
  const settle = (fn) => {
118
117
  if (settled)
119
118
  return;
@@ -124,10 +123,34 @@ async function waitForOpen(socket, signal) {
124
123
  fn();
125
124
  };
126
125
  const onAbort = () => settle(() => reject(new DOMException('connect aborted locally; the server may still have committed this request', 'AbortError')));
127
- removers.push((0, socket_js_1.addSocketListener)(socket, 'open', () => settle(resolve)), (0, socket_js_1.addSocketListener)(socket, 'error', (error) => settle(() => reject(new errors_js_1.ClusterTransportError('WebSocket failed to open', 'OPEN_FAILED', { cause: error })))), (0, socket_js_1.addSocketListener)(socket, 'close', () => settle(() => reject(new errors_js_1.ClusterTransportError('WebSocket closed before opening', 'OPEN_FAILED')))));
126
+ const onUnexpectedResponse = (...args) => {
127
+ const response = args.find((value) => value !== null && typeof value === 'object' && 'statusCode' in value);
128
+ const status = response?.statusCode;
129
+ upgradeFailure = typeof status === 'number'
130
+ ? new errors_js_1.ClusterUpgradeError(status)
131
+ : new errors_js_1.ClusterTransportError('WebSocket upgrade rejected', 'UPGRADE_REJECTED');
132
+ response?.resume?.();
133
+ if (socket.terminate) {
134
+ socket.terminate();
135
+ }
136
+ else {
137
+ settle(() => reject(upgradeFailure));
138
+ }
139
+ };
140
+ removers.push((0, socket_js_1.addSocketListener)(socket, 'open', () => settle(resolve)), (0, socket_js_1.addSocketListener)(socket, 'error', (error) => settle(() => reject(upgradeFailure ??
141
+ new errors_js_1.ClusterTransportError('WebSocket failed to open', 'OPEN_FAILED', { cause: error })))), (0, socket_js_1.addSocketListener)(socket, 'close', () => settle(() => reject(upgradeFailure ??
142
+ new errors_js_1.ClusterTransportError('WebSocket closed before opening', 'OPEN_FAILED')))), (0, socket_js_1.addSocketEmitterListener)(socket, 'unexpected-response', onUnexpectedResponse));
128
143
  signal?.addEventListener('abort', onAbort, { once: true });
129
144
  });
130
145
  }
146
+ async function disposeFailedSocket(socket) {
147
+ if (socket.readyState === 0 && socket.terminate) {
148
+ socket.terminate();
149
+ }
150
+ else {
151
+ await socket.close();
152
+ }
153
+ }
131
154
  async function connect(url, options = {}) {
132
155
  const factory = options.webSocketFactory ?? defaultWebSocketFactory;
133
156
  let socket;
@@ -141,7 +164,7 @@ async function connect(url, options = {}) {
141
164
  catch (error) {
142
165
  if (socket) {
143
166
  try {
144
- await socket.close();
167
+ await disposeFailedSocket(socket);
145
168
  }
146
169
  catch { /* preserve the construction error */ }
147
170
  }
@@ -162,7 +185,7 @@ async function connectInitialized(url, options = {}) {
162
185
  catch (error) {
163
186
  if (socket) {
164
187
  try {
165
- await socket.close();
188
+ await disposeFailedSocket(socket);
166
189
  }
167
190
  catch { /* preserve the construction error */ }
168
191
  }
@@ -0,0 +1,52 @@
1
+ import type { AgentAttachParams, AgentAttachResult, ApplyParams, ApplyResult, DeleteParams, DeleteResult, GetParams, GetResult, InitializeParams, InitializeResult, LogsParams, LogsResult, PlanParams, PlanResult, ResubmitParams, ResubmitResult, RetryParams, RetryResult, StopParams, StopResult, UpdateParams, UpdateResult, WatchParams } from './generated/protocol.js';
2
+ import { Connection } from './connection.js';
3
+ import type { CallOptions } from './connection.js';
4
+ import type { WebSocketLike } from './socket.js';
5
+ import { AgentAttachSubscriptionStream, LogsSubscriptionStream } from './subscriptions.js';
6
+ import type { WatchSubscription } from './subscriptions.js';
7
+ export type { WatchSubscription } from './subscriptions.js';
8
+ export interface WebSocketFactoryOptions {
9
+ readonly headers?: Readonly<Record<string, string>>;
10
+ }
11
+ export interface ConnectOptions {
12
+ readonly protocols?: string | readonly string[];
13
+ readonly webSocketFactory?: (url: string, protocols?: string | readonly string[], options?: WebSocketFactoryOptions) => WebSocketLike | Promise<WebSocketLike>;
14
+ readonly signal?: AbortSignal;
15
+ readonly initialize?: InitializeParams;
16
+ readonly headers?: Readonly<Record<string, string>>;
17
+ }
18
+ export interface LogsSubscription {
19
+ readonly result: LogsResult;
20
+ readonly stream: LogsSubscriptionStream;
21
+ }
22
+ export interface AgentAttachSubscription {
23
+ readonly result: AgentAttachResult;
24
+ readonly stream: AgentAttachSubscriptionStream;
25
+ }
26
+ export interface CoherentWatchSubscription extends WatchSubscription {
27
+ readonly snapshot: GetResult;
28
+ }
29
+ export interface ConnectInitializedResult {
30
+ readonly connection: Connection;
31
+ readonly client: ClusterClient;
32
+ readonly initializeResult: InitializeResult;
33
+ }
34
+ export declare class ClusterClient {
35
+ readonly connection: Connection;
36
+ constructor(connection: Connection);
37
+ initialize(params?: InitializeParams, options?: CallOptions): Promise<InitializeResult>;
38
+ plan(params: PlanParams, options?: CallOptions): Promise<PlanResult>;
39
+ apply(params: ApplyParams, options?: CallOptions): Promise<ApplyResult>;
40
+ update(params: UpdateParams, options?: CallOptions): Promise<UpdateResult>;
41
+ stop(params: StopParams, options?: CallOptions): Promise<StopResult>;
42
+ retry(params: RetryParams, options?: CallOptions): Promise<RetryResult>;
43
+ resubmit(params: ResubmitParams, options?: CallOptions): Promise<ResubmitResult>;
44
+ delete(params: DeleteParams, options?: CallOptions): Promise<DeleteResult>;
45
+ get(params?: GetParams, options?: CallOptions): Promise<GetResult>;
46
+ watch(params?: WatchParams, options?: CallOptions): Promise<WatchSubscription>;
47
+ watchColdStart(params?: Omit<WatchParams, 'fromCursor'>, options?: CallOptions): Promise<CoherentWatchSubscription>;
48
+ logs(params?: LogsParams, options?: CallOptions): Promise<LogsSubscription>;
49
+ agentAttach(params: AgentAttachParams, options?: CallOptions): Promise<AgentAttachSubscription>;
50
+ }
51
+ export declare function connect(url: string, options?: ConnectOptions): Promise<Connection>;
52
+ export declare function connectInitialized(url: string, options?: ConnectOptions): Promise<ConnectInitializedResult>;
@@ -0,0 +1,52 @@
1
+ import type { AgentAttachParams, AgentAttachResult, ApplyParams, ApplyResult, DeleteParams, DeleteResult, GetParams, GetResult, InitializeParams, InitializeResult, LogsParams, LogsResult, PlanParams, PlanResult, ResubmitParams, ResubmitResult, RetryParams, RetryResult, StopParams, StopResult, UpdateParams, UpdateResult, WatchParams } from './generated/protocol.js';
2
+ import { Connection } from './connection.js';
3
+ import type { CallOptions } from './connection.js';
4
+ import type { WebSocketLike } from './socket.js';
5
+ import { AgentAttachSubscriptionStream, LogsSubscriptionStream } from './subscriptions.js';
6
+ import type { WatchSubscription } from './subscriptions.js';
7
+ export type { WatchSubscription } from './subscriptions.js';
8
+ export interface WebSocketFactoryOptions {
9
+ readonly headers?: Readonly<Record<string, string>>;
10
+ }
11
+ export interface ConnectOptions {
12
+ readonly protocols?: string | readonly string[];
13
+ readonly webSocketFactory?: (url: string, protocols?: string | readonly string[], options?: WebSocketFactoryOptions) => WebSocketLike | Promise<WebSocketLike>;
14
+ readonly signal?: AbortSignal;
15
+ readonly initialize?: InitializeParams;
16
+ readonly headers?: Readonly<Record<string, string>>;
17
+ }
18
+ export interface LogsSubscription {
19
+ readonly result: LogsResult;
20
+ readonly stream: LogsSubscriptionStream;
21
+ }
22
+ export interface AgentAttachSubscription {
23
+ readonly result: AgentAttachResult;
24
+ readonly stream: AgentAttachSubscriptionStream;
25
+ }
26
+ export interface CoherentWatchSubscription extends WatchSubscription {
27
+ readonly snapshot: GetResult;
28
+ }
29
+ export interface ConnectInitializedResult {
30
+ readonly connection: Connection;
31
+ readonly client: ClusterClient;
32
+ readonly initializeResult: InitializeResult;
33
+ }
34
+ export declare class ClusterClient {
35
+ readonly connection: Connection;
36
+ constructor(connection: Connection);
37
+ initialize(params?: InitializeParams, options?: CallOptions): Promise<InitializeResult>;
38
+ plan(params: PlanParams, options?: CallOptions): Promise<PlanResult>;
39
+ apply(params: ApplyParams, options?: CallOptions): Promise<ApplyResult>;
40
+ update(params: UpdateParams, options?: CallOptions): Promise<UpdateResult>;
41
+ stop(params: StopParams, options?: CallOptions): Promise<StopResult>;
42
+ retry(params: RetryParams, options?: CallOptions): Promise<RetryResult>;
43
+ resubmit(params: ResubmitParams, options?: CallOptions): Promise<ResubmitResult>;
44
+ delete(params: DeleteParams, options?: CallOptions): Promise<DeleteResult>;
45
+ get(params?: GetParams, options?: CallOptions): Promise<GetResult>;
46
+ watch(params?: WatchParams, options?: CallOptions): Promise<WatchSubscription>;
47
+ watchColdStart(params?: Omit<WatchParams, 'fromCursor'>, options?: CallOptions): Promise<CoherentWatchSubscription>;
48
+ logs(params?: LogsParams, options?: CallOptions): Promise<LogsSubscription>;
49
+ agentAttach(params: AgentAttachParams, options?: CallOptions): Promise<AgentAttachSubscription>;
50
+ }
51
+ export declare function connect(url: string, options?: ConnectOptions): Promise<Connection>;
52
+ export declare function connectInitialized(url: string, options?: ConnectOptions): Promise<ConnectInitializedResult>;
@@ -1,8 +1,10 @@
1
- import type { AgentAttachParams, AgentAttachResult, ApplyParams, ApplyResult, DeleteParams, DeleteResult, GetParams, GetResult, InitializeParams, InitializeResult, LogsParams, LogsResult, PlanParams, PlanResult, ResubmitParams, ResubmitResult, RetryParams, RetryResult, StopParams, StopResult, UpdateParams, UpdateResult, WatchParams, WatchResult } from './generated/protocol.js';
1
+ import type { AgentAttachParams, AgentAttachResult, ApplyParams, ApplyResult, DeleteParams, DeleteResult, GetParams, GetResult, InitializeParams, InitializeResult, LogsParams, LogsResult, PlanParams, PlanResult, ResubmitParams, ResubmitResult, RetryParams, RetryResult, StopParams, StopResult, UpdateParams, UpdateResult, WatchParams } from './generated/protocol.js';
2
2
  import { Connection } from './connection.js';
3
3
  import type { CallOptions } from './connection.js';
4
4
  import type { WebSocketLike } from './socket.js';
5
- import { AgentAttachSubscriptionStream, LogsSubscriptionStream, WatchSubscriptionStream } from './subscriptions.js';
5
+ import { AgentAttachSubscriptionStream, LogsSubscriptionStream } from './subscriptions.js';
6
+ import type { WatchSubscription } from './subscriptions.js';
7
+ export type { WatchSubscription } from './subscriptions.js';
6
8
  export interface WebSocketFactoryOptions {
7
9
  readonly headers?: Readonly<Record<string, string>>;
8
10
  }
@@ -13,10 +15,6 @@ export interface ConnectOptions {
13
15
  readonly initialize?: InitializeParams;
14
16
  readonly headers?: Readonly<Record<string, string>>;
15
17
  }
16
- export interface WatchSubscription {
17
- readonly result: WatchResult;
18
- readonly stream: WatchSubscriptionStream;
19
- }
20
18
  export interface LogsSubscription {
21
19
  readonly result: LogsResult;
22
20
  readonly stream: LogsSubscriptionStream;
@@ -1,7 +1,8 @@
1
+ /// <reference path="./ws.d.ts" />
1
2
  import { PROTOCOL_VERSION } from './generated/protocol.mjs';
2
3
  import { Connection } from './connection.mjs';
3
- import { addSocketListener } from './socket.mjs';
4
- import { ClusterConfigError, ClusterProtocolError, ClusterTransportError } from './errors.mjs';
4
+ import { addSocketEmitterListener, addSocketListener } from './socket.mjs';
5
+ import { ClusterConfigError, ClusterProtocolError, ClusterTransportError, ClusterUpgradeError } from './errors.mjs';
5
6
  import { AgentAttachSubscriptionStream, LogsSubscriptionStream, WatchSubscriptionStream, } from './subscriptions.mjs';
6
7
  export class ClusterClient {
7
8
  connection;
@@ -76,10 +77,7 @@ export class ClusterClient {
76
77
  }
77
78
  async function defaultWebSocketFactory(url, protocols, options) {
78
79
  const globalWebSocket = globalThis.WebSocket;
79
- if (globalWebSocket) {
80
- if (options?.headers && Object.keys(options.headers).length > 0) {
81
- throw new ClusterConfigError('WebSocket upgrade headers require the ws library; the browser WebSocket API cannot carry request headers', 'HEADERS_UNSUPPORTED');
82
- }
80
+ if (globalWebSocket && (!options?.headers || Object.keys(options.headers).length === 0)) {
83
81
  return new globalWebSocket(url, protocols);
84
82
  }
85
83
  try {
@@ -108,6 +106,7 @@ async function waitForOpen(socket, signal) {
108
106
  await new Promise((resolve, reject) => {
109
107
  let settled = false;
110
108
  const removers = [];
109
+ let upgradeFailure;
111
110
  const settle = (fn) => {
112
111
  if (settled)
113
112
  return;
@@ -118,10 +117,34 @@ async function waitForOpen(socket, signal) {
118
117
  fn();
119
118
  };
120
119
  const onAbort = () => settle(() => reject(new DOMException('connect aborted locally; the server may still have committed this request', 'AbortError')));
121
- removers.push(addSocketListener(socket, 'open', () => settle(resolve)), addSocketListener(socket, 'error', (error) => settle(() => reject(new ClusterTransportError('WebSocket failed to open', 'OPEN_FAILED', { cause: error })))), addSocketListener(socket, 'close', () => settle(() => reject(new ClusterTransportError('WebSocket closed before opening', 'OPEN_FAILED')))));
120
+ const onUnexpectedResponse = (...args) => {
121
+ const response = args.find((value) => value !== null && typeof value === 'object' && 'statusCode' in value);
122
+ const status = response?.statusCode;
123
+ upgradeFailure = typeof status === 'number'
124
+ ? new ClusterUpgradeError(status)
125
+ : new ClusterTransportError('WebSocket upgrade rejected', 'UPGRADE_REJECTED');
126
+ response?.resume?.();
127
+ if (socket.terminate) {
128
+ socket.terminate();
129
+ }
130
+ else {
131
+ settle(() => reject(upgradeFailure));
132
+ }
133
+ };
134
+ removers.push(addSocketListener(socket, 'open', () => settle(resolve)), addSocketListener(socket, 'error', (error) => settle(() => reject(upgradeFailure ??
135
+ new ClusterTransportError('WebSocket failed to open', 'OPEN_FAILED', { cause: error })))), addSocketListener(socket, 'close', () => settle(() => reject(upgradeFailure ??
136
+ new ClusterTransportError('WebSocket closed before opening', 'OPEN_FAILED')))), addSocketEmitterListener(socket, 'unexpected-response', onUnexpectedResponse));
122
137
  signal?.addEventListener('abort', onAbort, { once: true });
123
138
  });
124
139
  }
140
+ async function disposeFailedSocket(socket) {
141
+ if (socket.readyState === 0 && socket.terminate) {
142
+ socket.terminate();
143
+ }
144
+ else {
145
+ await socket.close();
146
+ }
147
+ }
125
148
  export async function connect(url, options = {}) {
126
149
  const factory = options.webSocketFactory ?? defaultWebSocketFactory;
127
150
  let socket;
@@ -135,7 +158,7 @@ export async function connect(url, options = {}) {
135
158
  catch (error) {
136
159
  if (socket) {
137
160
  try {
138
- await socket.close();
161
+ await disposeFailedSocket(socket);
139
162
  }
140
163
  catch { /* preserve the construction error */ }
141
164
  }
@@ -156,7 +179,7 @@ export async function connectInitialized(url, options = {}) {
156
179
  catch (error) {
157
180
  if (socket) {
158
181
  try {
159
- await socket.close();
182
+ await disposeFailedSocket(socket);
160
183
  }
161
184
  catch { /* preserve the construction error */ }
162
185
  }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PROTOCOL_DIAGNOSTIC_CAPACITY = exports.CONNECTION_TRANSITIONS = void 0;
4
+ exports.deferred = deferred;
5
+ if (!Object.prototype.hasOwnProperty.call(Symbol, 'asyncDispose')) {
6
+ Object.defineProperty(Symbol, 'asyncDispose', {
7
+ configurable: false, enumerable: false,
8
+ value: Symbol.for('Symbol.asyncDispose'), writable: false,
9
+ });
10
+ }
11
+ exports.CONNECTION_TRANSITIONS = Object.freeze({
12
+ OPEN: Object.freeze(['CLOSING']),
13
+ CLOSING: Object.freeze(['CLOSED']),
14
+ CLOSED: Object.freeze([]),
15
+ });
16
+ exports.PROTOCOL_DIAGNOSTIC_CAPACITY = 128;
17
+ function deferred() {
18
+ let resolve;
19
+ let reject;
20
+ const promise = new Promise((onResolve, onReject) => {
21
+ resolve = onResolve;
22
+ reject = onReject;
23
+ });
24
+ return { promise, resolve, reject };
25
+ }
@@ -0,0 +1,13 @@
1
+ export type ConnectionState = 'OPEN' | 'CLOSING' | 'CLOSED';
2
+ export declare const CONNECTION_TRANSITIONS: Readonly<Record<ConnectionState, readonly ConnectionState[]>>;
3
+ export declare const PROTOCOL_DIAGNOSTIC_CAPACITY = 128;
4
+ export interface ConnectionCloseSnapshot {
5
+ readonly code: number | null;
6
+ readonly reason: null;
7
+ }
8
+ export type Deferred<T> = {
9
+ readonly promise: Promise<T>;
10
+ readonly resolve: (value: T) => void;
11
+ readonly reject: (reason: unknown) => void;
12
+ };
13
+ export declare function deferred<T>(): Deferred<T>;
@@ -0,0 +1,13 @@
1
+ export type ConnectionState = 'OPEN' | 'CLOSING' | 'CLOSED';
2
+ export declare const CONNECTION_TRANSITIONS: Readonly<Record<ConnectionState, readonly ConnectionState[]>>;
3
+ export declare const PROTOCOL_DIAGNOSTIC_CAPACITY = 128;
4
+ export interface ConnectionCloseSnapshot {
5
+ readonly code: number | null;
6
+ readonly reason: null;
7
+ }
8
+ export type Deferred<T> = {
9
+ readonly promise: Promise<T>;
10
+ readonly resolve: (value: T) => void;
11
+ readonly reject: (reason: unknown) => void;
12
+ };
13
+ export declare function deferred<T>(): Deferred<T>;
@@ -0,0 +1,13 @@
1
+ export type ConnectionState = 'OPEN' | 'CLOSING' | 'CLOSED';
2
+ export declare const CONNECTION_TRANSITIONS: Readonly<Record<ConnectionState, readonly ConnectionState[]>>;
3
+ export declare const PROTOCOL_DIAGNOSTIC_CAPACITY = 128;
4
+ export interface ConnectionCloseSnapshot {
5
+ readonly code: number | null;
6
+ readonly reason: null;
7
+ }
8
+ export type Deferred<T> = {
9
+ readonly promise: Promise<T>;
10
+ readonly resolve: (value: T) => void;
11
+ readonly reject: (reason: unknown) => void;
12
+ };
13
+ export declare function deferred<T>(): Deferred<T>;
@@ -0,0 +1,21 @@
1
+ if (!Object.prototype.hasOwnProperty.call(Symbol, 'asyncDispose')) {
2
+ Object.defineProperty(Symbol, 'asyncDispose', {
3
+ configurable: false, enumerable: false,
4
+ value: Symbol.for('Symbol.asyncDispose'), writable: false,
5
+ });
6
+ }
7
+ export const CONNECTION_TRANSITIONS = Object.freeze({
8
+ OPEN: Object.freeze(['CLOSING']),
9
+ CLOSING: Object.freeze(['CLOSED']),
10
+ CLOSED: Object.freeze([]),
11
+ });
12
+ export const PROTOCOL_DIAGNOSTIC_CAPACITY = 128;
13
+ export function deferred() {
14
+ let resolve;
15
+ let reject;
16
+ const promise = new Promise((onResolve, onReject) => {
17
+ resolve = onResolve;
18
+ reject = onReject;
19
+ });
20
+ return { promise, resolve, reject };
21
+ }
@@ -1,3 +1,2 @@
1
1
  "use strict";
2
- // Shared hosted-run command contracts.
3
2
  Object.defineProperty(exports, "__esModule", { value: true });