@namzu/sdk 32.0.0 → 33.1.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 (305) hide show
  1. package/CHANGELOG.md +157 -0
  2. package/dist/authorization/gate.d.ts +1 -1
  3. package/dist/authorization/gate.js +1 -1
  4. package/dist/bridge/a2a/mapper.d.ts.map +1 -1
  5. package/dist/bridge/a2a/mapper.js +13 -0
  6. package/dist/bridge/a2a/mapper.js.map +1 -1
  7. package/dist/bridge/sse/mapper.d.ts.map +1 -1
  8. package/dist/bridge/sse/mapper.js +3 -0
  9. package/dist/bridge/sse/mapper.js.map +1 -1
  10. package/dist/connector/index.d.ts +1 -1
  11. package/dist/connector/index.d.ts.map +1 -1
  12. package/dist/connector/index.js +1 -1
  13. package/dist/connector/index.js.map +1 -1
  14. package/dist/connector/mcp/adapter.d.ts.map +1 -1
  15. package/dist/connector/mcp/adapter.js +71 -16
  16. package/dist/connector/mcp/adapter.js.map +1 -1
  17. package/dist/connector/mcp/client.d.ts.map +1 -1
  18. package/dist/connector/mcp/client.js +3 -2
  19. package/dist/connector/mcp/client.js.map +1 -1
  20. package/dist/connector/mcp/http-redirect.d.ts +17 -0
  21. package/dist/connector/mcp/http-redirect.d.ts.map +1 -0
  22. package/dist/connector/mcp/http-redirect.js +31 -0
  23. package/dist/connector/mcp/http-redirect.js.map +1 -0
  24. package/dist/connector/mcp/http-sse.d.ts.map +1 -1
  25. package/dist/connector/mcp/http-sse.js +5 -0
  26. package/dist/connector/mcp/http-sse.js.map +1 -1
  27. package/dist/connector/mcp/image-admission.d.ts +16 -0
  28. package/dist/connector/mcp/image-admission.d.ts.map +1 -0
  29. package/dist/connector/mcp/image-admission.js +288 -0
  30. package/dist/connector/mcp/image-admission.js.map +1 -0
  31. package/dist/connector/mcp/stdio.d.ts +13 -0
  32. package/dist/connector/mcp/stdio.d.ts.map +1 -1
  33. package/dist/connector/mcp/stdio.js +66 -23
  34. package/dist/connector/mcp/stdio.js.map +1 -1
  35. package/dist/connector/mcp/streamable-http.d.ts.map +1 -1
  36. package/dist/connector/mcp/streamable-http.js +3 -0
  37. package/dist/connector/mcp/streamable-http.js.map +1 -1
  38. package/dist/constants/tools/index.js +1 -1
  39. package/dist/constants/tools/index.js.map +1 -1
  40. package/dist/execution/base.d.ts +13 -0
  41. package/dist/execution/base.d.ts.map +1 -1
  42. package/dist/execution/base.js +103 -8
  43. package/dist/execution/base.js.map +1 -1
  44. package/dist/execution/errors.d.ts +12 -0
  45. package/dist/execution/errors.d.ts.map +1 -0
  46. package/dist/execution/errors.js +21 -0
  47. package/dist/execution/errors.js.map +1 -0
  48. package/dist/execution/factory.d.ts.map +1 -1
  49. package/dist/execution/factory.js +1 -0
  50. package/dist/execution/factory.js.map +1 -1
  51. package/dist/execution/hybrid.d.ts +5 -0
  52. package/dist/execution/hybrid.d.ts.map +1 -1
  53. package/dist/execution/hybrid.js +36 -16
  54. package/dist/execution/hybrid.js.map +1 -1
  55. package/dist/execution/index.d.ts +1 -0
  56. package/dist/execution/index.d.ts.map +1 -1
  57. package/dist/execution/index.js +1 -0
  58. package/dist/execution/index.js.map +1 -1
  59. package/dist/execution/local.d.ts +13 -0
  60. package/dist/execution/local.d.ts.map +1 -1
  61. package/dist/execution/local.js +145 -19
  62. package/dist/execution/local.js.map +1 -1
  63. package/dist/execution/output.d.ts +27 -0
  64. package/dist/execution/output.d.ts.map +1 -0
  65. package/dist/execution/output.js +105 -0
  66. package/dist/execution/output.js.map +1 -0
  67. package/dist/execution/remote.d.ts +26 -2
  68. package/dist/execution/remote.d.ts.map +1 -1
  69. package/dist/execution/remote.js +86 -15
  70. package/dist/execution/remote.js.map +1 -1
  71. package/dist/plugin/lifecycle.d.ts.map +1 -1
  72. package/dist/plugin/lifecycle.js +9 -3
  73. package/dist/plugin/lifecycle.js.map +1 -1
  74. package/dist/process/kill-tree.d.ts +11 -13
  75. package/dist/process/kill-tree.d.ts.map +1 -1
  76. package/dist/process/kill-tree.js +11 -13
  77. package/dist/process/kill-tree.js.map +1 -1
  78. package/dist/provider/capabilities.d.ts +2 -0
  79. package/dist/provider/capabilities.d.ts.map +1 -1
  80. package/dist/provider/capabilities.js +6 -0
  81. package/dist/provider/capabilities.js.map +1 -1
  82. package/dist/provider/fallback.d.ts.map +1 -1
  83. package/dist/provider/fallback.js +31 -0
  84. package/dist/provider/fallback.js.map +1 -1
  85. package/dist/provider/idle-timeout.d.ts.map +1 -1
  86. package/dist/provider/idle-timeout.js +5 -0
  87. package/dist/provider/idle-timeout.js.map +1 -1
  88. package/dist/provider/retry.d.ts.map +1 -1
  89. package/dist/provider/retry.js +5 -0
  90. package/dist/provider/retry.js.map +1 -1
  91. package/dist/public-runtime.d.ts +2 -2
  92. package/dist/public-runtime.d.ts.map +1 -1
  93. package/dist/public-runtime.js +2 -2
  94. package/dist/public-runtime.js.map +1 -1
  95. package/dist/registry/tool/execute.d.ts +7 -1
  96. package/dist/registry/tool/execute.d.ts.map +1 -1
  97. package/dist/registry/tool/execute.js +201 -54
  98. package/dist/registry/tool/execute.js.map +1 -1
  99. package/dist/run/command-gate.d.ts.map +1 -1
  100. package/dist/run/command-gate.js +11 -0
  101. package/dist/run/command-gate.js.map +1 -1
  102. package/dist/run/workspace-fingerprint.d.ts +4 -4
  103. package/dist/run/workspace-fingerprint.d.ts.map +1 -1
  104. package/dist/run/workspace-fingerprint.js +6 -4
  105. package/dist/run/workspace-fingerprint.js.map +1 -1
  106. package/dist/runtime/bidi/index.d.ts +1 -1
  107. package/dist/runtime/bidi/index.d.ts.map +1 -1
  108. package/dist/runtime/bidi/index.js +1 -1
  109. package/dist/runtime/bidi/index.js.map +1 -1
  110. package/dist/runtime/bidi/session.d.ts +19 -0
  111. package/dist/runtime/bidi/session.d.ts.map +1 -1
  112. package/dist/runtime/bidi/session.js +150 -26
  113. package/dist/runtime/bidi/session.js.map +1 -1
  114. package/dist/runtime/query/executor.d.ts +43 -1
  115. package/dist/runtime/query/executor.d.ts.map +1 -1
  116. package/dist/runtime/query/executor.js +626 -161
  117. package/dist/runtime/query/executor.js.map +1 -1
  118. package/dist/runtime/query/index.d.ts +3 -1
  119. package/dist/runtime/query/index.d.ts.map +1 -1
  120. package/dist/runtime/query/index.js +48 -4
  121. package/dist/runtime/query/index.js.map +1 -1
  122. package/dist/runtime/query/iteration/index.d.ts +10 -0
  123. package/dist/runtime/query/iteration/index.d.ts.map +1 -1
  124. package/dist/runtime/query/iteration/index.js +67 -0
  125. package/dist/runtime/query/iteration/index.js.map +1 -1
  126. package/dist/runtime/query/iteration/phases/context.d.ts +5 -0
  127. package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
  128. package/dist/runtime/query/iteration/phases/context.js.map +1 -1
  129. package/dist/runtime/query/iteration/phases/tool-review.d.ts.map +1 -1
  130. package/dist/runtime/query/iteration/phases/tool-review.js +84 -22
  131. package/dist/runtime/query/iteration/phases/tool-review.js.map +1 -1
  132. package/dist/runtime/query/request-rich-content.d.ts.map +1 -1
  133. package/dist/runtime/query/request-rich-content.js +33 -13
  134. package/dist/runtime/query/request-rich-content.js.map +1 -1
  135. package/dist/runtime/query/result.d.ts.map +1 -1
  136. package/dist/runtime/query/result.js +25 -22
  137. package/dist/runtime/query/result.js.map +1 -1
  138. package/dist/runtime/query/resume-pending.d.ts +5 -1
  139. package/dist/runtime/query/resume-pending.d.ts.map +1 -1
  140. package/dist/runtime/query/resume-pending.js +66 -1
  141. package/dist/runtime/query/resume-pending.js.map +1 -1
  142. package/dist/runtime/query/tool-output-budget.d.ts.map +1 -1
  143. package/dist/runtime/query/tool-output-budget.js +45 -16
  144. package/dist/runtime/query/tool-output-budget.js.map +1 -1
  145. package/dist/runtime/query/tooling.d.ts +6 -0
  146. package/dist/runtime/query/tooling.d.ts.map +1 -1
  147. package/dist/runtime/query/tooling.js +4 -0
  148. package/dist/runtime/query/tooling.js.map +1 -1
  149. package/dist/sandbox/provider/local.d.ts.map +1 -1
  150. package/dist/sandbox/provider/local.js +193 -41
  151. package/dist/sandbox/provider/local.js.map +1 -1
  152. package/dist/scheduler/delegating.d.ts +2 -1
  153. package/dist/scheduler/delegating.d.ts.map +1 -1
  154. package/dist/scheduler/delegating.js +6 -5
  155. package/dist/scheduler/delegating.js.map +1 -1
  156. package/dist/scheduler/local.d.ts +2 -1
  157. package/dist/scheduler/local.d.ts.map +1 -1
  158. package/dist/scheduler/local.js +2 -2
  159. package/dist/scheduler/local.js.map +1 -1
  160. package/dist/session/workspace/driver.d.ts +12 -4
  161. package/dist/session/workspace/driver.d.ts.map +1 -1
  162. package/dist/session/workspace/git-worktree.d.ts +17 -3
  163. package/dist/session/workspace/git-worktree.d.ts.map +1 -1
  164. package/dist/session/workspace/git-worktree.js +153 -34
  165. package/dist/session/workspace/git-worktree.js.map +1 -1
  166. package/dist/skills/registry.d.ts +15 -0
  167. package/dist/skills/registry.d.ts.map +1 -1
  168. package/dist/skills/registry.js +33 -0
  169. package/dist/skills/registry.js.map +1 -1
  170. package/dist/tools/builtins/computer-use.d.ts.map +1 -1
  171. package/dist/tools/builtins/computer-use.js +76 -2
  172. package/dist/tools/builtins/computer-use.js.map +1 -1
  173. package/dist/tools/builtins/run-code.d.ts.map +1 -1
  174. package/dist/tools/builtins/run-code.js +9 -11
  175. package/dist/tools/builtins/run-code.js.map +1 -1
  176. package/dist/tools/builtins/skill.d.ts +2 -1
  177. package/dist/tools/builtins/skill.d.ts.map +1 -1
  178. package/dist/tools/builtins/skill.js +250 -6
  179. package/dist/tools/builtins/skill.js.map +1 -1
  180. package/dist/tools/coordinator/agent.d.ts.map +1 -1
  181. package/dist/tools/coordinator/agent.js +100 -30
  182. package/dist/tools/coordinator/agent.js.map +1 -1
  183. package/dist/types/agent/manager.d.ts +1 -1
  184. package/dist/types/agent/manager.d.ts.map +1 -1
  185. package/dist/types/agent/scheduler.d.ts +10 -1
  186. package/dist/types/agent/scheduler.d.ts.map +1 -1
  187. package/dist/types/authorization/index.d.ts +12 -12
  188. package/dist/types/bidi/index.d.ts +19 -2
  189. package/dist/types/bidi/index.d.ts.map +1 -1
  190. package/dist/types/computer-use/index.d.ts +18 -0
  191. package/dist/types/computer-use/index.d.ts.map +1 -1
  192. package/dist/types/connector/execution-context.d.ts +3 -1
  193. package/dist/types/connector/execution-context.d.ts.map +1 -1
  194. package/dist/types/errors/catalog.d.ts.map +1 -1
  195. package/dist/types/errors/catalog.js +13 -6
  196. package/dist/types/errors/catalog.js.map +1 -1
  197. package/dist/types/errors/index.d.ts.map +1 -1
  198. package/dist/types/errors/index.js +21 -8
  199. package/dist/types/errors/index.js.map +1 -1
  200. package/dist/types/execution/index.d.ts +43 -1
  201. package/dist/types/execution/index.d.ts.map +1 -1
  202. package/dist/types/hitl/index.d.ts +11 -0
  203. package/dist/types/hitl/index.d.ts.map +1 -1
  204. package/dist/types/hitl/index.js.map +1 -1
  205. package/dist/types/message/index.d.ts +1 -1
  206. package/dist/types/message/index.d.ts.map +1 -1
  207. package/dist/types/message/index.js +2 -1
  208. package/dist/types/message/index.js.map +1 -1
  209. package/dist/types/plugin/index.d.ts +14 -1
  210. package/dist/types/plugin/index.d.ts.map +1 -1
  211. package/dist/types/plugin/index.js +1 -0
  212. package/dist/types/plugin/index.js.map +1 -1
  213. package/dist/types/provider/config.d.ts +9 -0
  214. package/dist/types/provider/config.d.ts.map +1 -1
  215. package/dist/types/provider/interface.d.ts +14 -0
  216. package/dist/types/provider/interface.d.ts.map +1 -1
  217. package/dist/types/run/events.d.ts +17 -0
  218. package/dist/types/run/events.d.ts.map +1 -1
  219. package/dist/types/run/events.js.map +1 -1
  220. package/dist/types/sandbox/index.d.ts +15 -10
  221. package/dist/types/sandbox/index.d.ts.map +1 -1
  222. package/dist/types/sandbox/index.js.map +1 -1
  223. package/dist/types/tool/index.d.ts +77 -6
  224. package/dist/types/tool/index.d.ts.map +1 -1
  225. package/dist/types/tool/index.js.map +1 -1
  226. package/dist/types/tool/presentation.d.ts +6 -2
  227. package/dist/types/tool/presentation.d.ts.map +1 -1
  228. package/dist/types/workspace/ref.d.ts +5 -0
  229. package/dist/types/workspace/ref.d.ts.map +1 -1
  230. package/dist/utils/abort.d.ts +8 -0
  231. package/dist/utils/abort.d.ts.map +1 -1
  232. package/dist/utils/abort.js +16 -0
  233. package/dist/utils/abort.js.map +1 -1
  234. package/package.json +4 -4
  235. package/src/authorization/gate.ts +1 -1
  236. package/src/bridge/a2a/mapper.ts +23 -4
  237. package/src/bridge/sse/mapper.ts +3 -0
  238. package/src/connector/index.ts +2 -0
  239. package/src/connector/mcp/adapter.ts +82 -21
  240. package/src/connector/mcp/client.ts +2 -1
  241. package/src/connector/mcp/http-redirect.ts +32 -0
  242. package/src/connector/mcp/http-sse.ts +5 -0
  243. package/src/connector/mcp/image-admission.ts +272 -0
  244. package/src/connector/mcp/stdio.ts +63 -21
  245. package/src/connector/mcp/streamable-http.ts +3 -0
  246. package/src/constants/tools/index.ts +1 -1
  247. package/src/execution/base.ts +124 -7
  248. package/src/execution/errors.ts +24 -0
  249. package/src/execution/factory.ts +1 -0
  250. package/src/execution/hybrid.ts +47 -16
  251. package/src/execution/index.ts +1 -0
  252. package/src/execution/local.ts +164 -19
  253. package/src/execution/output.ts +104 -0
  254. package/src/execution/remote.ts +122 -17
  255. package/src/plugin/lifecycle.ts +9 -3
  256. package/src/process/kill-tree.ts +11 -13
  257. package/src/provider/capabilities.ts +10 -0
  258. package/src/provider/fallback.ts +39 -0
  259. package/src/provider/idle-timeout.ts +8 -0
  260. package/src/provider/retry.ts +8 -0
  261. package/src/public-runtime.ts +7 -1
  262. package/src/registry/tool/execute.ts +230 -64
  263. package/src/run/command-gate.ts +12 -0
  264. package/src/run/workspace-fingerprint.ts +5 -4
  265. package/src/runtime/bidi/index.ts +1 -1
  266. package/src/runtime/bidi/session.ts +177 -28
  267. package/src/runtime/query/executor.ts +769 -163
  268. package/src/runtime/query/index.ts +58 -7
  269. package/src/runtime/query/iteration/index.ts +72 -0
  270. package/src/runtime/query/iteration/phases/context.ts +5 -0
  271. package/src/runtime/query/iteration/phases/tool-review.ts +87 -23
  272. package/src/runtime/query/request-rich-content.ts +39 -14
  273. package/src/runtime/query/result.ts +25 -23
  274. package/src/runtime/query/resume-pending.ts +83 -1
  275. package/src/runtime/query/tool-output-budget.ts +52 -17
  276. package/src/runtime/query/tooling.ts +10 -0
  277. package/src/sandbox/provider/local.ts +213 -45
  278. package/src/scheduler/delegating.ts +6 -5
  279. package/src/scheduler/local.ts +3 -2
  280. package/src/session/workspace/driver.ts +12 -4
  281. package/src/session/workspace/git-worktree.ts +173 -34
  282. package/src/skills/registry.ts +47 -0
  283. package/src/tools/builtins/computer-use.ts +86 -2
  284. package/src/tools/builtins/run-code.ts +9 -11
  285. package/src/tools/builtins/skill.ts +325 -7
  286. package/src/tools/coordinator/agent.ts +108 -33
  287. package/src/types/agent/manager.ts +1 -1
  288. package/src/types/agent/scheduler.ts +10 -1
  289. package/src/types/bidi/index.ts +19 -2
  290. package/src/types/computer-use/index.ts +19 -0
  291. package/src/types/connector/execution-context.ts +3 -0
  292. package/src/types/errors/catalog.ts +14 -6
  293. package/src/types/errors/index.ts +22 -8
  294. package/src/types/execution/index.ts +46 -1
  295. package/src/types/hitl/index.ts +11 -0
  296. package/src/types/message/index.ts +3 -2
  297. package/src/types/plugin/index.ts +15 -0
  298. package/src/types/provider/config.ts +9 -0
  299. package/src/types/provider/interface.ts +18 -0
  300. package/src/types/run/events.ts +17 -3
  301. package/src/types/sandbox/index.ts +15 -10
  302. package/src/types/tool/index.ts +85 -6
  303. package/src/types/tool/presentation.ts +10 -3
  304. package/src/types/workspace/ref.ts +5 -0
  305. package/src/utils/abort.ts +18 -0
@@ -1,22 +1,35 @@
1
- import type { CommandOptions, CommandResult, ExecutionCapability, ExecutionEnvironment, RemoteCommandHandler, RemoteExecutionContextConfig, RemoteTarget } from '../types/connector/index.js';
1
+ import type { CommandExecutor, CommandOptions, CommandResult, ExecutionCapability, ExecutionEnvironment, RemoteCommandHandler, RemoteExecutionContextConfig, RemoteTarget } from '../types/connector/index.js';
2
2
  import type { Logger } from '../utils/logger.js';
3
3
  import { BaseExecutionContext } from './base.js';
4
4
  export interface RemoteExecutionContextOptions {
5
5
  id: string;
6
6
  target: RemoteTarget;
7
7
  capabilities?: ExecutionCapability[];
8
+ /**
9
+ * Executes a command while preserving its argument boundaries at Namzu's
10
+ * remote seam. A downstream executor may still interpret `shell` according
11
+ * to its own target.
12
+ */
13
+ commandExecutor?: CommandExecutor;
14
+ /** @deprecated Use `commandExecutor`. */
8
15
  commandHandler?: RemoteCommandHandler;
9
16
  log?: Logger;
10
17
  }
11
- export declare class RemoteExecutionContext extends BaseExecutionContext {
18
+ export declare class RemoteExecutionContext extends BaseExecutionContext implements CommandExecutor {
12
19
  readonly id: string;
13
20
  readonly environment: ExecutionEnvironment;
14
21
  private target;
15
22
  private connected;
16
23
  private capabilities;
24
+ private commandExecutor;
17
25
  private commandHandler;
26
+ private lifecycleAdmissionsOpen;
27
+ private readonly activeCommands;
18
28
  constructor(options: RemoteExecutionContextOptions);
19
29
  protected doInitialize(): Promise<void>;
30
+ protected onInitializationStarted(): void;
31
+ protected onInitializationCommitted(): void;
32
+ protected onTeardownRequested(): void;
20
33
  protected doTeardown(): Promise<void>;
21
34
  connect(): Promise<void>;
22
35
  disconnect(): Promise<void>;
@@ -25,9 +38,20 @@ export declare class RemoteExecutionContext extends BaseExecutionContext {
25
38
  getConnectionString(): string;
26
39
  getCapabilities(): ExecutionCapability[];
27
40
  hasCapability(cap: ExecutionCapability): boolean;
41
+ setCommandExecutor(executor: CommandExecutor): void;
42
+ /** @deprecated Use `setCommandExecutor()`. */
28
43
  setCommandHandler(handler: RemoteCommandHandler): void;
44
+ executeCommand(command: string, args?: string[], options?: CommandOptions): Promise<CommandResult>;
45
+ /**
46
+ * @deprecated Use `executeCommand()` so command arguments retain their
47
+ * boundaries at Namzu's remote execution seam.
48
+ */
29
49
  executeRemote(command: string, options?: CommandOptions): Promise<CommandResult>;
30
50
  toConfig(): RemoteExecutionContextConfig;
31
51
  private validateTarget;
52
+ private admitCommand;
53
+ private assertCancellationUnsupported;
54
+ private assertIdleForDisconnect;
55
+ private trackCommand;
32
56
  }
33
57
  //# sourceMappingURL=remote.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"remote.d.ts","sourceRoot":"","sources":["../../src/execution/remote.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,4BAA4B,EAC5B,YAAY,EACZ,MAAM,6BAA6B,CAAA;AACpC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAEhD,MAAM,WAAW,6BAA6B;IAC7C,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,YAAY,CAAA;IACpB,YAAY,CAAC,EAAE,mBAAmB,EAAE,CAAA;IACpC,cAAc,CAAC,EAAE,oBAAoB,CAAA;IACrC,GAAG,CAAC,EAAE,MAAM,CAAA;CACZ;AAED,qBAAa,sBAAuB,SAAQ,oBAAoB;IAC/D,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAAW;IAErD,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,cAAc,CAAkC;gBAE5C,OAAO,EAAE,6BAA6B;cAQlC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;cAQ7B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAWrC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAcxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAWjC,WAAW,IAAI,OAAO;IAItB,SAAS,IAAI,YAAY;IAIzB,mBAAmB,IAAI,MAAM;IAK7B,eAAe,IAAI,mBAAmB,EAAE;IAIxC,aAAa,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO;IAIhD,iBAAiB,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI;IAIhD,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;IAYtF,QAAQ,IAAI,4BAA4B;IASxC,OAAO,CAAC,cAAc;CAQtB"}
1
+ {"version":3,"file":"remote.d.ts","sourceRoot":"","sources":["../../src/execution/remote.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,eAAe,EACf,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,4BAA4B,EAC5B,YAAY,EACZ,MAAM,6BAA6B,CAAA;AACpC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAGhD,MAAM,WAAW,6BAA6B;IAC7C,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,YAAY,CAAA;IACpB,YAAY,CAAC,EAAE,mBAAmB,EAAE,CAAA;IACpC;;;;OAIG;IACH,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,yCAAyC;IACzC,cAAc,CAAC,EAAE,oBAAoB,CAAA;IACrC,GAAG,CAAC,EAAE,MAAM,CAAA;CACZ;AAED,qBAAa,sBAAuB,SAAQ,oBAAqB,YAAW,eAAe;IAC1F,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAAW;IAErD,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,uBAAuB,CAAO;IACtC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAoB;gBAEvC,OAAO,EAAE,6BAA6B;cASlC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;cAQ1B,uBAAuB,IAAI,IAAI;cAI/B,yBAAyB,IAAI,IAAI;cAIjC,mBAAmB,IAAI,IAAI;cAI9B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAKrC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAYjC,WAAW,IAAI,OAAO;IAItB,SAAS,IAAI,YAAY;IAIzB,mBAAmB,IAAI,MAAM;IAK7B,eAAe,IAAI,mBAAmB,EAAE;IAIxC,aAAa,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO;IAIhD,kBAAkB,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IAInD,8CAA8C;IAC9C,iBAAiB,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI;IAIhD,cAAc,CACnB,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,CAAC,EAAE,cAAc,GACtB,OAAO,CAAC,aAAa,CAAC;IAmBzB;;;OAGG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;IAStF,QAAQ,IAAI,4BAA4B;IASxC,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,YAAY;IAapB,OAAO,CAAC,6BAA6B;IAIrC,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,YAAY;CA0BpB"}
@@ -1,16 +1,21 @@
1
1
  import { BaseExecutionContext } from './base.js';
2
+ import { CommandCancellationUnsupportedError, RemoteExecutionBusyError } from './errors.js';
2
3
  export class RemoteExecutionContext extends BaseExecutionContext {
3
4
  id;
4
5
  environment = 'remote';
5
6
  target;
6
7
  connected = false;
7
8
  capabilities;
9
+ commandExecutor;
8
10
  commandHandler;
11
+ lifecycleAdmissionsOpen = true;
12
+ activeCommands = new Set();
9
13
  constructor(options) {
10
14
  super(options.log);
11
15
  this.id = options.id;
12
16
  this.target = options.target;
13
17
  this.capabilities = options.capabilities ?? ['network'];
18
+ this.commandExecutor = options.commandExecutor;
14
19
  this.commandHandler = options.commandHandler;
15
20
  }
16
21
  async doInitialize() {
@@ -20,17 +25,25 @@ export class RemoteExecutionContext extends BaseExecutionContext {
20
25
  'namzu.execution.target_host': this.target.host,
21
26
  });
22
27
  }
28
+ onInitializationStarted() {
29
+ this.lifecycleAdmissionsOpen = false;
30
+ }
31
+ onInitializationCommitted() {
32
+ this.lifecycleAdmissionsOpen = true;
33
+ }
34
+ onTeardownRequested() {
35
+ this.lifecycleAdmissionsOpen = false;
36
+ }
23
37
  async doTeardown() {
24
- if (this.connected) {
25
- this.connected = false;
26
- this.emit({
27
- type: 'remote_disconnected',
28
- contextId: this.id,
29
- host: this.target.host,
30
- });
31
- }
38
+ this.assertIdleForDisconnect();
39
+ await this.disconnect();
32
40
  }
33
41
  async connect() {
42
+ if (!this.lifecycleAdmissionsOpen) {
43
+ throw new Error(`Remote execution context "${this.id}" cannot connect until initialization commits after teardown or failed initialization.`);
44
+ }
45
+ if (this.connected)
46
+ return;
34
47
  this.connected = true;
35
48
  this.emit({
36
49
  type: 'remote_connected',
@@ -46,6 +59,7 @@ export class RemoteExecutionContext extends BaseExecutionContext {
46
59
  async disconnect() {
47
60
  if (!this.connected)
48
61
  return;
62
+ this.assertIdleForDisconnect();
49
63
  this.connected = false;
50
64
  this.emit({
51
65
  type: 'remote_disconnected',
@@ -70,17 +84,32 @@ export class RemoteExecutionContext extends BaseExecutionContext {
70
84
  hasCapability(cap) {
71
85
  return this.capabilities.includes(cap);
72
86
  }
87
+ setCommandExecutor(executor) {
88
+ this.commandExecutor = executor;
89
+ }
90
+ /** @deprecated Use `setCommandExecutor()`. */
73
91
  setCommandHandler(handler) {
74
92
  this.commandHandler = handler;
75
93
  }
76
- async executeRemote(command, options) {
77
- if (!this.commandHandler) {
78
- throw new Error(`No remote command handler configured for context "${this.id}". Set one via setCommandHandler() before calling executeRemote().`);
79
- }
80
- if (!this.connected) {
81
- throw new Error(`Remote context "${this.id}" is not connected. Call connect() first.`);
94
+ async executeCommand(command, args = [], options) {
95
+ if (this.commandExecutor) {
96
+ const executor = this.admitCommand(this.commandExecutor, `No remote command executor configured for context "${this.id}". Set one via setCommandExecutor() before calling executeCommand().`);
97
+ this.assertCancellationUnsupported(options?.signal);
98
+ return this.trackCommand(() => executor.executeCommand(command, args, options));
82
99
  }
83
- return this.commandHandler.executeRemote(command, options);
100
+ const handler = this.admitCommand(this.commandHandler, `No remote command executor configured for context "${this.id}". Set one via setCommandExecutor() before calling executeCommand().`);
101
+ this.assertCancellationUnsupported(options?.signal);
102
+ const fullCommand = args.length > 0 ? `${command} ${args.join(' ')}` : command;
103
+ return this.trackCommand(() => handler.executeRemote(fullCommand, options));
104
+ }
105
+ /**
106
+ * @deprecated Use `executeCommand()` so command arguments retain their
107
+ * boundaries at Namzu's remote execution seam.
108
+ */
109
+ async executeRemote(command, options) {
110
+ const handler = this.admitCommand(this.commandHandler, `No remote command handler configured for context "${this.id}". Set one via setCommandHandler() before calling executeRemote().`);
111
+ this.assertCancellationUnsupported(options?.signal);
112
+ return this.trackCommand(() => handler.executeRemote(command, options));
84
113
  }
85
114
  toConfig() {
86
115
  return {
@@ -98,5 +127,47 @@ export class RemoteExecutionContext extends BaseExecutionContext {
98
127
  throw new Error(`Unsupported remote target type: "${target.type}"`);
99
128
  }
100
129
  }
130
+ admitCommand(implementation, missingMessage) {
131
+ if (implementation === undefined)
132
+ throw new Error(missingMessage);
133
+ if (!this.lifecycleAdmissionsOpen) {
134
+ throw new Error(`Remote execution context "${this.id}" is initializing, tearing down, or torn down. Wait for initialization to commit before executing another command.`);
135
+ }
136
+ if (!this.connected) {
137
+ throw new Error(`Remote context "${this.id}" is not connected. Call connect() first.`);
138
+ }
139
+ return implementation;
140
+ }
141
+ assertCancellationUnsupported(signal) {
142
+ if (signal !== undefined)
143
+ throw new CommandCancellationUnsupportedError(this.id);
144
+ }
145
+ assertIdleForDisconnect() {
146
+ if (this.activeCommands.size > 0) {
147
+ throw new RemoteExecutionBusyError(this.id, this.activeCommands.size);
148
+ }
149
+ }
150
+ trackCommand(invoke) {
151
+ const ownership = Symbol('remote-command');
152
+ this.activeCommands.add(ownership);
153
+ const release = () => {
154
+ this.activeCommands.delete(ownership);
155
+ };
156
+ let operation;
157
+ try {
158
+ operation = Promise.resolve(invoke());
159
+ }
160
+ catch (error) {
161
+ release();
162
+ return Promise.reject(error);
163
+ }
164
+ return operation.then((result) => {
165
+ release();
166
+ return result;
167
+ }, (error) => {
168
+ release();
169
+ throw error;
170
+ });
171
+ }
101
172
  }
102
173
  //# sourceMappingURL=remote.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"remote.js","sourceRoot":"","sources":["../../src/execution/remote.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remote.js","sourceRoot":"","sources":["../../src/execution/remote.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../src/plugin/lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../src/plugin/lifecycle.ts"],"names":[],"mappings":"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"}
@@ -502,6 +502,12 @@ export class PluginLifecycleManager {
502
502
  return [];
503
503
  }
504
504
  const results = [];
505
+ // Interrupt hooks are cleanup/notification observers. One extension's
506
+ // skip, error, retry, or timeout must not suppress the extensions that
507
+ // follow it, and none of those results can change the cancellation that
508
+ // already happened. Other hook events retain their existing flow-control
509
+ // semantics.
510
+ const observationalFanOut = event === 'run_interrupt';
505
511
  // Determine execution order: post_* hooks run backward (for cleanup semantics)
506
512
  const isPost = event.startsWith('post_');
507
513
  // For post_* hooks, we need to process in reverse order (last registered runs first)
@@ -614,15 +620,15 @@ export class PluginLifecycleManager {
614
620
  callerSignal?.throwIfAborted();
615
621
  }
616
622
  results.push(result);
617
- if (result.action === 'modify') {
623
+ if (!observationalFanOut && result.action === 'modify') {
618
624
  toolInputOverlay = result.input;
619
625
  }
620
626
  // Handle flow control: check priority order: error > skip > retry > resume > modify > continue
621
627
  // Short-circuit on error or skip; return immediately on resume or retry
622
- if (result.action === 'error' || result.action === 'skip') {
628
+ if (!observationalFanOut && (result.action === 'error' || result.action === 'skip')) {
623
629
  break;
624
630
  }
625
- if (result.action === 'retry') {
631
+ if (!observationalFanOut && result.action === 'retry') {
626
632
  break;
627
633
  }
628
634
  }
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/plugin/lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/plugin/lifecycle.ts"],"names":[],"mappings":"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"}
@@ -8,23 +8,21 @@ import type { spawn } from 'node:child_process';
8
8
  * paid for by a bug where a cancelled command kept running, and a
9
9
  * near-copy would reproduce the bug in the copy.
10
10
  *
11
- * Every caller reaches a real command through `/bin/sh -c "cmd"`, and under
12
- * the local sandbox's `linux-namespace`/`macos-seatbelt` tiers that shell is
13
- * wrapped again (`unshare …`/`sandbox-exec -- /bin/sh -c "cmd"`). Either
14
- * way, `child.pid` names the OUTERMOST wrapper Node spawned, not `cmd` —
15
- * signalling only that pid, which is both what `child.kill()` does and what
16
- * `spawn`'s own `signal` option does internally on abort, reaps the wrapper
17
- * and leaves `cmd`, and anything it forked, running past both a cancel and a
18
- * timeout.
11
+ * Some callers reach a command through a shell or isolation wrapper; the
12
+ * local execution context can also spawn the authored executable directly.
13
+ * In every case, signalling only `child.pid` which is both what
14
+ * `child.kill()` does and what `spawn`'s own `signal`/`timeout` options do
15
+ * can reap that direct child while leaving a descendant running past both a
16
+ * cancel and a timeout.
19
17
  *
20
18
  * POSIX: the caller must spawn with `detached: true`, which makes the child
21
19
  * the leader of a new process group (pgid === pid) instead of joining this
22
20
  * Node process's own. A negative pid signals that whole group in one call.
23
- * Group membership is a host-kernel fact that a fork()'d descendant inherits
24
- * from its parent whether or not it or an ancestor such as `unshare --pid`
25
- * subsequently entered a new PID namespace, so this reaches `cmd` and its
26
- * descendants along with the wrapper itself even under the namespaced
27
- * isolation tiers.
21
+ * Group membership is a host-kernel fact that an ordinary forked descendant
22
+ * inherits from its parent, including under the namespaced isolation tiers.
23
+ * A process which deliberately starts a new session/process group can escape
24
+ * this boundary; this helper is process-group signalling, not a portable
25
+ * arbitrary-descendant ownership primitive.
28
26
  *
29
27
  * Windows has no process-group id to sign a kill with — `process.kill` with
30
28
  * a negative pid there either throws or silently does nothing, depending on
@@ -1 +1 @@
1
- {"version":3,"file":"kill-tree.d.ts","sourceRoot":"","sources":["../../src/process/kill-tree.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAWtF"}
1
+ {"version":3,"file":"kill-tree.d.ts","sourceRoot":"","sources":["../../src/process/kill-tree.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAWtF"}
@@ -8,23 +8,21 @@ import { execFileSync } from 'node:child_process';
8
8
  * paid for by a bug where a cancelled command kept running, and a
9
9
  * near-copy would reproduce the bug in the copy.
10
10
  *
11
- * Every caller reaches a real command through `/bin/sh -c "cmd"`, and under
12
- * the local sandbox's `linux-namespace`/`macos-seatbelt` tiers that shell is
13
- * wrapped again (`unshare …`/`sandbox-exec -- /bin/sh -c "cmd"`). Either
14
- * way, `child.pid` names the OUTERMOST wrapper Node spawned, not `cmd` —
15
- * signalling only that pid, which is both what `child.kill()` does and what
16
- * `spawn`'s own `signal` option does internally on abort, reaps the wrapper
17
- * and leaves `cmd`, and anything it forked, running past both a cancel and a
18
- * timeout.
11
+ * Some callers reach a command through a shell or isolation wrapper; the
12
+ * local execution context can also spawn the authored executable directly.
13
+ * In every case, signalling only `child.pid` which is both what
14
+ * `child.kill()` does and what `spawn`'s own `signal`/`timeout` options do
15
+ * can reap that direct child while leaving a descendant running past both a
16
+ * cancel and a timeout.
19
17
  *
20
18
  * POSIX: the caller must spawn with `detached: true`, which makes the child
21
19
  * the leader of a new process group (pgid === pid) instead of joining this
22
20
  * Node process's own. A negative pid signals that whole group in one call.
23
- * Group membership is a host-kernel fact that a fork()'d descendant inherits
24
- * from its parent whether or not it or an ancestor such as `unshare --pid`
25
- * subsequently entered a new PID namespace, so this reaches `cmd` and its
26
- * descendants along with the wrapper itself even under the namespaced
27
- * isolation tiers.
21
+ * Group membership is a host-kernel fact that an ordinary forked descendant
22
+ * inherits from its parent, including under the namespaced isolation tiers.
23
+ * A process which deliberately starts a new session/process group can escape
24
+ * this boundary; this helper is process-group signalling, not a portable
25
+ * arbitrary-descendant ownership primitive.
28
26
  *
29
27
  * Windows has no process-group id to sign a kill with — `process.kill` with
30
28
  * a negative pid there either throws or silently does nothing, depending on
@@ -1 +1 @@
1
- {"version":3,"file":"kill-tree.js","sourceRoot":"","sources":["../../src/process/kill-tree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAGjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,UAAU,QAAQ,CAAC,KAA+B,EAAE,MAAsB;IAC/E,IAAI,CAAC,KAAK,CAAC,GAAG;QAAE,OAAM;IACtB,IAAI,CAAC;QACJ,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YAClC,YAAY,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;QACvF,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QACjC,CAAC;IACF,CAAC;IAAC,MAAM,CAAC;QACR,+BAA+B;IAChC,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"kill-tree.js","sourceRoot":"","sources":["../../src/process/kill-tree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAGjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,UAAU,QAAQ,CAAC,KAA+B,EAAE,MAAsB;IAC/E,IAAI,CAAC,KAAK,CAAC,GAAG;QAAE,OAAM;IACtB,IAAI,CAAC;QACJ,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YAClC,YAAY,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;QACvF,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QACjC,CAAC;IACF,CAAC;IAAC,MAAM,CAAC;QACR,+BAA+B;IAChC,CAAC;AACF,CAAC"}
@@ -9,6 +9,8 @@ export interface ResolvedProviderCapabilities {
9
9
  supportsFunctionCalling: boolean;
10
10
  supportsVision: boolean;
11
11
  supportsDocuments: boolean;
12
+ supportsToolResultImages: boolean;
13
+ supportsToolResultDocuments: boolean;
12
14
  maxOutputTokens?: number;
13
15
  }
14
16
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../src/provider/capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAwB,MAAM,4BAA4B,CAAA;AAEnF;;;GAGG;AACH,MAAM,WAAW,4BAA4B;IAC5C,aAAa,EAAE,OAAO,CAAA;IACtB,iBAAiB,EAAE,OAAO,CAAA;IAC1B,uBAAuB,EAAE,OAAO,CAAA;IAChC,cAAc,EAAE,OAAO,CAAA;IACvB,iBAAiB,EAAE,OAAO,CAAA;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAA;CACxB;AAED;;;;;GAKG;AACH,eAAO,MAAM,gCAAgC,EAAE,4BAM9C,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAC1C,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,GACzC,4BAA4B,CAa9B"}
1
+ {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../src/provider/capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAwB,MAAM,4BAA4B,CAAA;AAEnF;;;GAGG;AACH,MAAM,WAAW,4BAA4B;IAC5C,aAAa,EAAE,OAAO,CAAA;IACtB,iBAAiB,EAAE,OAAO,CAAA;IAC1B,uBAAuB,EAAE,OAAO,CAAA;IAChC,cAAc,EAAE,OAAO,CAAA;IACvB,iBAAiB,EAAE,OAAO,CAAA;IAC1B,wBAAwB,EAAE,OAAO,CAAA;IACjC,2BAA2B,EAAE,OAAO,CAAA;IACpC,eAAe,CAAC,EAAE,MAAM,CAAA;CACxB;AAED;;;;;GAKG;AACH,eAAO,MAAM,gCAAgC,EAAE,4BAQ9C,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAC1C,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,GACzC,4BAA4B,CAmB9B"}
@@ -10,6 +10,8 @@ export const PERMISSIVE_PROVIDER_CAPABILITIES = {
10
10
  supportsFunctionCalling: true,
11
11
  supportsVision: true,
12
12
  supportsDocuments: true,
13
+ supportsToolResultImages: true,
14
+ supportsToolResultDocuments: true,
13
15
  };
14
16
  /**
15
17
  * Resolve a provider's declared capabilities against the permissive
@@ -25,6 +27,10 @@ export function resolveProviderCapabilities(provider) {
25
27
  supportsFunctionCalling: declared?.supportsFunctionCalling ?? PERMISSIVE_PROVIDER_CAPABILITIES.supportsFunctionCalling,
26
28
  supportsVision: declared?.supportsVision ?? PERMISSIVE_PROVIDER_CAPABILITIES.supportsVision,
27
29
  supportsDocuments: declared?.supportsDocuments ?? PERMISSIVE_PROVIDER_CAPABILITIES.supportsDocuments,
30
+ supportsToolResultImages: declared?.supportsToolResultImages ??
31
+ PERMISSIVE_PROVIDER_CAPABILITIES.supportsToolResultImages,
32
+ supportsToolResultDocuments: declared?.supportsToolResultDocuments ??
33
+ PERMISSIVE_PROVIDER_CAPABILITIES.supportsToolResultDocuments,
28
34
  maxOutputTokens: declared?.maxOutputTokens,
29
35
  };
30
36
  }
@@ -1 +1 @@
1
- {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../src/provider/capabilities.ts"],"names":[],"mappings":"AAeA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAiC;IAC7E,aAAa,EAAE,IAAI;IACnB,iBAAiB,EAAE,IAAI;IACvB,uBAAuB,EAAE,IAAI;IAC7B,cAAc,EAAE,IAAI;IACpB,iBAAiB,EAAE,IAAI;CACvB,CAAA;AAED;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CAC1C,QAA2C;IAE3C,MAAM,QAAQ,GAAqC,QAAQ,CAAC,YAAY,CAAA;IACxE,OAAO;QACN,aAAa,EAAE,QAAQ,EAAE,aAAa,IAAI,gCAAgC,CAAC,aAAa;QACxF,iBAAiB,EAChB,QAAQ,EAAE,iBAAiB,IAAI,gCAAgC,CAAC,iBAAiB;QAClF,uBAAuB,EACtB,QAAQ,EAAE,uBAAuB,IAAI,gCAAgC,CAAC,uBAAuB;QAC9F,cAAc,EAAE,QAAQ,EAAE,cAAc,IAAI,gCAAgC,CAAC,cAAc;QAC3F,iBAAiB,EAChB,QAAQ,EAAE,iBAAiB,IAAI,gCAAgC,CAAC,iBAAiB;QAClF,eAAe,EAAE,QAAQ,EAAE,eAAe;KAC1C,CAAA;AACF,CAAC"}
1
+ {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../src/provider/capabilities.ts"],"names":[],"mappings":"AAiBA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAiC;IAC7E,aAAa,EAAE,IAAI;IACnB,iBAAiB,EAAE,IAAI;IACvB,uBAAuB,EAAE,IAAI;IAC7B,cAAc,EAAE,IAAI;IACpB,iBAAiB,EAAE,IAAI;IACvB,wBAAwB,EAAE,IAAI;IAC9B,2BAA2B,EAAE,IAAI;CACjC,CAAA;AAED;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CAC1C,QAA2C;IAE3C,MAAM,QAAQ,GAAqC,QAAQ,CAAC,YAAY,CAAA;IACxE,OAAO;QACN,aAAa,EAAE,QAAQ,EAAE,aAAa,IAAI,gCAAgC,CAAC,aAAa;QACxF,iBAAiB,EAChB,QAAQ,EAAE,iBAAiB,IAAI,gCAAgC,CAAC,iBAAiB;QAClF,uBAAuB,EACtB,QAAQ,EAAE,uBAAuB,IAAI,gCAAgC,CAAC,uBAAuB;QAC9F,cAAc,EAAE,QAAQ,EAAE,cAAc,IAAI,gCAAgC,CAAC,cAAc;QAC3F,iBAAiB,EAChB,QAAQ,EAAE,iBAAiB,IAAI,gCAAgC,CAAC,iBAAiB;QAClF,wBAAwB,EACvB,QAAQ,EAAE,wBAAwB;YAClC,gCAAgC,CAAC,wBAAwB;QAC1D,2BAA2B,EAC1B,QAAQ,EAAE,2BAA2B;YACrC,gCAAgC,CAAC,2BAA2B;QAC7D,eAAe,EAAE,QAAQ,EAAE,eAAe;KAC1C,CAAA;AACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"fallback.d.ts","sourceRoot":"","sources":["../../src/provider/fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAIH,OAAO,KAAK,EAEX,WAAW,EAIX,MAAM,4BAA4B,CAAA;AACnC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAEhD;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAA;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,wFAAwF;IACxF,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,2BAA2B;IAC3C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmDG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,aAAa,KAAK,IAAI,CAAA;CAC7C;AAoID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,wBAAgB,oBAAoB,CACnC,OAAO,EAAE,SAAS,mBAAmB,EAAE,EACvC,OAAO,GAAE,2BAAgC,GACvC,WAAW,CAkLb"}
1
+ {"version":3,"file":"fallback.d.ts","sourceRoot":"","sources":["../../src/provider/fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAIH,OAAO,KAAK,EAEX,WAAW,EAIX,MAAM,4BAA4B,CAAA;AACnC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAEhD;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAA;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,wFAAwF;IACxF,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,2BAA2B;IAC3C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmDG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,aAAa,KAAK,IAAI,CAAA;CAC7C;AAsKD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,wBAAgB,oBAAoB,CACnC,OAAO,EAAE,SAAS,mBAAmB,EAAE,EACvC,OAAO,GAAE,2BAAgC,GACvC,WAAW,CAuLb"}
@@ -121,6 +121,33 @@ function memberReasoningEffortLevels(member, requestModel, thinking) {
121
121
  }
122
122
  return member.provider.effortLevelsFor?.(model, thinking);
123
123
  }
124
+ /** Read one member's model-owned default using its routed model id. */
125
+ function memberReasoningEffortDefault(member, requestModel, thinking) {
126
+ return member.provider.reasoningEffortDefaultFor?.(member.model ?? requestModel, thinking);
127
+ }
128
+ /**
129
+ * A fallback request has one unambiguous default only when every route agrees.
130
+ *
131
+ * Omitting effort lets whichever member serves the request choose its own
132
+ * default. Publishing the head's answer as the chain's answer can therefore
133
+ * make the same shortcut move in opposite directions after fallback. The
134
+ * agreed value must also survive the chain-wide exact menu.
135
+ */
136
+ function commonReasoningEffortDefault(members, requestModel, thinking) {
137
+ const common = commonReasoningEffortLevels(members, requestModel, thinking);
138
+ if (common === undefined)
139
+ return undefined;
140
+ let agreed;
141
+ for (const member of members) {
142
+ const value = memberReasoningEffortDefault(member, requestModel, thinking);
143
+ if (value === undefined)
144
+ return undefined;
145
+ if (agreed !== undefined && value !== agreed)
146
+ return undefined;
147
+ agreed = value;
148
+ }
149
+ return agreed !== undefined && common.includes(agreed) ? agreed : undefined;
150
+ }
124
151
  /**
125
152
  * The levels one request may carry safely through every member it can reach.
126
153
  *
@@ -343,6 +370,10 @@ export function withProviderFallback(members, options = {}) {
343
370
  // always present on a multi-member wrapper: `undefined` is its honest
344
371
  // answer when any member cannot enumerate its selected model.
345
372
  reasoningEffortLevelsFor: (model, thinking) => commonReasoningEffortLevels(members, model, thinking),
373
+ // Present on the chain wrapper for the same reason the menu method is:
374
+ // `undefined` is the honest answer when a member cannot answer, defaults
375
+ // disagree, or the value is absent from the common exact menu.
376
+ reasoningEffortDefaultFor: (model, thinking) => commonReasoningEffortDefault(members, model, thinking),
346
377
  // Compatibility projection only. Existing consumers of the deprecated
347
378
  // member keep the head-only answer they had; new consumers use the
348
379
  // canonical chain-aware member above.