@namzu/sdk 30.2.0 → 31.0.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 (712) hide show
  1. package/CHANGELOG.md +556 -0
  2. package/README.md +43 -2
  3. package/dist/advisory/executor.d.ts +2 -1
  4. package/dist/advisory/executor.d.ts.map +1 -1
  5. package/dist/advisory/executor.js +4 -1
  6. package/dist/advisory/executor.js.map +1 -1
  7. package/dist/agents/ReactiveAgent.d.ts.map +1 -1
  8. package/dist/agents/ReactiveAgent.js +12 -0
  9. package/dist/agents/ReactiveAgent.js.map +1 -1
  10. package/dist/agents/RouterAgent.d.ts.map +1 -1
  11. package/dist/agents/RouterAgent.js +21 -3
  12. package/dist/agents/RouterAgent.js.map +1 -1
  13. package/dist/agents/SupervisorAgent.d.ts.map +1 -1
  14. package/dist/agents/SupervisorAgent.js +34 -11
  15. package/dist/agents/SupervisorAgent.js.map +1 -1
  16. package/dist/agents/runAgent.d.ts +12 -0
  17. package/dist/agents/runAgent.d.ts.map +1 -1
  18. package/dist/agents/runAgent.js +26 -2
  19. package/dist/agents/runAgent.js.map +1 -1
  20. package/dist/authorization/command-line.d.ts +81 -0
  21. package/dist/authorization/command-line.d.ts.map +1 -0
  22. package/dist/authorization/command-line.js +347 -0
  23. package/dist/authorization/command-line.js.map +1 -0
  24. package/dist/authorization/rules.d.ts.map +1 -1
  25. package/dist/authorization/rules.js +22 -1
  26. package/dist/authorization/rules.js.map +1 -1
  27. package/dist/bridge/a2a/client.d.ts +23 -5
  28. package/dist/bridge/a2a/client.d.ts.map +1 -1
  29. package/dist/bridge/a2a/client.js +320 -73
  30. package/dist/bridge/a2a/client.js.map +1 -1
  31. package/dist/bridge/a2a/mapper.d.ts.map +1 -1
  32. package/dist/bridge/a2a/mapper.js +4 -0
  33. package/dist/bridge/a2a/mapper.js.map +1 -1
  34. package/dist/bridge/acp/server.d.ts +13 -1
  35. package/dist/bridge/acp/server.d.ts.map +1 -1
  36. package/dist/bridge/acp/server.js +150 -44
  37. package/dist/bridge/acp/server.js.map +1 -1
  38. package/dist/bridge/mcp/connector/adapter.d.ts +3 -2
  39. package/dist/bridge/mcp/connector/adapter.d.ts.map +1 -1
  40. package/dist/bridge/mcp/connector/adapter.js +17 -21
  41. package/dist/bridge/mcp/connector/adapter.js.map +1 -1
  42. package/dist/bridge/sse/mapper.d.ts.map +1 -1
  43. package/dist/bridge/sse/mapper.js +3 -0
  44. package/dist/bridge/sse/mapper.js.map +1 -1
  45. package/dist/compaction/dangling.d.ts +29 -2
  46. package/dist/compaction/dangling.d.ts.map +1 -1
  47. package/dist/compaction/dangling.js +172 -35
  48. package/dist/compaction/dangling.js.map +1 -1
  49. package/dist/compaction/index.d.ts +3 -2
  50. package/dist/compaction/index.d.ts.map +1 -1
  51. package/dist/compaction/index.js +1 -1
  52. package/dist/compaction/index.js.map +1 -1
  53. package/dist/compaction/manual.d.ts +11 -1
  54. package/dist/compaction/manual.d.ts.map +1 -1
  55. package/dist/compaction/manual.js +89 -14
  56. package/dist/compaction/manual.js.map +1 -1
  57. package/dist/compaction/plan.d.ts +19 -6
  58. package/dist/compaction/plan.d.ts.map +1 -1
  59. package/dist/compaction/plan.js +18 -4
  60. package/dist/compaction/plan.js.map +1 -1
  61. package/dist/compaction/retention.d.ts +10 -7
  62. package/dist/compaction/retention.d.ts.map +1 -1
  63. package/dist/compaction/retention.js +26 -8
  64. package/dist/compaction/retention.js.map +1 -1
  65. package/dist/compaction/summary.d.ts +4 -4
  66. package/dist/compaction/summary.js +4 -4
  67. package/dist/compaction/verifier.d.ts +19 -1
  68. package/dist/compaction/verifier.d.ts.map +1 -1
  69. package/dist/compaction/verifier.js +20 -1
  70. package/dist/compaction/verifier.js.map +1 -1
  71. package/dist/config/runtime.d.ts +6 -6
  72. package/dist/connector/BaseConnector.d.ts +6 -4
  73. package/dist/connector/BaseConnector.d.ts.map +1 -1
  74. package/dist/connector/BaseConnector.js +8 -2
  75. package/dist/connector/BaseConnector.js.map +1 -1
  76. package/dist/connector/builtins/http.d.ts +16 -4
  77. package/dist/connector/builtins/http.d.ts.map +1 -1
  78. package/dist/connector/builtins/http.js +177 -44
  79. package/dist/connector/builtins/http.js.map +1 -1
  80. package/dist/connector/builtins/webhook.d.ts +15 -4
  81. package/dist/connector/builtins/webhook.d.ts.map +1 -1
  82. package/dist/connector/builtins/webhook.js +165 -45
  83. package/dist/connector/builtins/webhook.js.map +1 -1
  84. package/dist/connector/execution-contract.d.ts +11 -0
  85. package/dist/connector/execution-contract.d.ts.map +1 -0
  86. package/dist/connector/execution-contract.js +14 -0
  87. package/dist/connector/execution-contract.js.map +1 -0
  88. package/dist/connector/http-operation.d.ts +48 -0
  89. package/dist/connector/http-operation.d.ts.map +1 -0
  90. package/dist/connector/http-operation.js +205 -0
  91. package/dist/connector/http-operation.js.map +1 -0
  92. package/dist/connector/mcp/adapter.d.ts.map +1 -1
  93. package/dist/connector/mcp/adapter.js +8 -3
  94. package/dist/connector/mcp/adapter.js.map +1 -1
  95. package/dist/connector/mcp/client.d.ts +14 -8
  96. package/dist/connector/mcp/client.d.ts.map +1 -1
  97. package/dist/connector/mcp/client.js +160 -44
  98. package/dist/connector/mcp/client.js.map +1 -1
  99. package/dist/connector/mcp/http-sse.d.ts +8 -2
  100. package/dist/connector/mcp/http-sse.d.ts.map +1 -1
  101. package/dist/connector/mcp/http-sse.js +70 -17
  102. package/dist/connector/mcp/http-sse.js.map +1 -1
  103. package/dist/connector/mcp/prompt-adapter.d.ts.map +1 -1
  104. package/dist/connector/mcp/prompt-adapter.js +9 -2
  105. package/dist/connector/mcp/prompt-adapter.js.map +1 -1
  106. package/dist/connector/mcp/stdio.d.ts +2 -2
  107. package/dist/connector/mcp/stdio.d.ts.map +1 -1
  108. package/dist/connector/mcp/stdio.js +14 -50
  109. package/dist/connector/mcp/stdio.js.map +1 -1
  110. package/dist/connector/mcp/streamable-http.d.ts +7 -2
  111. package/dist/connector/mcp/streamable-http.d.ts.map +1 -1
  112. package/dist/connector/mcp/streamable-http.js +66 -18
  113. package/dist/connector/mcp/streamable-http.js.map +1 -1
  114. package/dist/connector/tools/adapter.d.ts +2 -2
  115. package/dist/connector/tools/adapter.d.ts.map +1 -1
  116. package/dist/connector/tools/adapter.js +23 -14
  117. package/dist/connector/tools/adapter.js.map +1 -1
  118. package/dist/connector/tools/definitions.d.ts.map +1 -1
  119. package/dist/connector/tools/definitions.js +5 -2
  120. package/dist/connector/tools/definitions.js.map +1 -1
  121. package/dist/connector/tools/result.d.ts +4 -0
  122. package/dist/connector/tools/result.d.ts.map +1 -0
  123. package/dist/connector/tools/result.js +20 -0
  124. package/dist/connector/tools/result.js.map +1 -0
  125. package/dist/connector/web/guarded-fetch.d.ts +4 -2
  126. package/dist/connector/web/guarded-fetch.d.ts.map +1 -1
  127. package/dist/connector/web/guarded-fetch.js +157 -43
  128. package/dist/connector/web/guarded-fetch.js.map +1 -1
  129. package/dist/constants/sandbox/index.d.ts +3 -2
  130. package/dist/constants/sandbox/index.d.ts.map +1 -1
  131. package/dist/constants/sandbox/index.js +3 -2
  132. package/dist/constants/sandbox/index.js.map +1 -1
  133. package/dist/contracts/api.d.ts +2 -0
  134. package/dist/contracts/api.d.ts.map +1 -1
  135. package/dist/contracts/schemas.d.ts +38 -12
  136. package/dist/contracts/schemas.d.ts.map +1 -1
  137. package/dist/contracts/schemas.js +7 -0
  138. package/dist/contracts/schemas.js.map +1 -1
  139. package/dist/directory/derive-supervisor.d.ts.map +1 -1
  140. package/dist/directory/derive-supervisor.js +8 -0
  141. package/dist/directory/derive-supervisor.js.map +1 -1
  142. package/dist/directory/derive.d.ts.map +1 -1
  143. package/dist/directory/derive.js +8 -0
  144. package/dist/directory/derive.js.map +1 -1
  145. package/dist/directory/load.d.ts.map +1 -1
  146. package/dist/directory/load.js +2 -0
  147. package/dist/directory/load.js.map +1 -1
  148. package/dist/directory/types.d.ts +4 -0
  149. package/dist/directory/types.d.ts.map +1 -1
  150. package/dist/eval/experiment.d.ts +10 -10
  151. package/dist/eval/experiment.d.ts.map +1 -1
  152. package/dist/eval/experiment.js +121 -91
  153. package/dist/eval/experiment.js.map +1 -1
  154. package/dist/eval/judge.d.ts +6 -0
  155. package/dist/eval/judge.d.ts.map +1 -1
  156. package/dist/eval/judge.js +7 -2
  157. package/dist/eval/judge.js.map +1 -1
  158. package/dist/eval/types.d.ts +7 -1
  159. package/dist/eval/types.d.ts.map +1 -1
  160. package/dist/manager/agent/lifecycle.d.ts +12 -10
  161. package/dist/manager/agent/lifecycle.d.ts.map +1 -1
  162. package/dist/manager/agent/lifecycle.js +16 -3
  163. package/dist/manager/agent/lifecycle.js.map +1 -1
  164. package/dist/manager/connector/environment.d.ts +2 -2
  165. package/dist/manager/connector/environment.d.ts.map +1 -1
  166. package/dist/manager/connector/environment.js +2 -2
  167. package/dist/manager/connector/environment.js.map +1 -1
  168. package/dist/manager/connector/lifecycle.d.ts +10 -2
  169. package/dist/manager/connector/lifecycle.d.ts.map +1 -1
  170. package/dist/manager/connector/lifecycle.js +273 -24
  171. package/dist/manager/connector/lifecycle.js.map +1 -1
  172. package/dist/manager/connector/tenant.d.ts +5 -4
  173. package/dist/manager/connector/tenant.d.ts.map +1 -1
  174. package/dist/manager/connector/tenant.js +47 -22
  175. package/dist/manager/connector/tenant.js.map +1 -1
  176. package/dist/manager/goal/activation.d.ts +23 -0
  177. package/dist/manager/goal/activation.d.ts.map +1 -0
  178. package/dist/manager/goal/activation.js +41 -0
  179. package/dist/manager/goal/activation.js.map +1 -0
  180. package/dist/manager/index.d.ts +3 -2
  181. package/dist/manager/index.d.ts.map +1 -1
  182. package/dist/manager/index.js.map +1 -1
  183. package/dist/manager/run/persistence.d.ts +2 -0
  184. package/dist/manager/run/persistence.d.ts.map +1 -1
  185. package/dist/manager/run/persistence.js +5 -1
  186. package/dist/manager/run/persistence.js.map +1 -1
  187. package/dist/manager/topic/dependency.d.ts +24 -0
  188. package/dist/manager/topic/dependency.d.ts.map +1 -0
  189. package/dist/manager/topic/dependency.js +13 -0
  190. package/dist/manager/topic/dependency.js.map +1 -0
  191. package/dist/manager/topic/lifecycle.d.ts +9 -21
  192. package/dist/manager/topic/lifecycle.d.ts.map +1 -1
  193. package/dist/manager/topic/lifecycle.js +17 -29
  194. package/dist/manager/topic/lifecycle.js.map +1 -1
  195. package/dist/plugin/index.d.ts +1 -0
  196. package/dist/plugin/index.d.ts.map +1 -1
  197. package/dist/plugin/index.js.map +1 -1
  198. package/dist/plugin/lifecycle.d.ts +15 -0
  199. package/dist/plugin/lifecycle.d.ts.map +1 -1
  200. package/dist/plugin/lifecycle.js +144 -38
  201. package/dist/plugin/lifecycle.js.map +1 -1
  202. package/dist/plugin/loader.d.ts +3 -3
  203. package/dist/plugin/loader.d.ts.map +1 -1
  204. package/dist/plugin/loader.js +58 -12
  205. package/dist/plugin/loader.js.map +1 -1
  206. package/dist/provider/collect-chat-completion.d.ts.map +1 -1
  207. package/dist/provider/collect-chat-completion.js +4 -0
  208. package/dist/provider/collect-chat-completion.js.map +1 -1
  209. package/dist/provider/fallback.d.ts +3 -1
  210. package/dist/provider/fallback.d.ts.map +1 -1
  211. package/dist/provider/fallback.js +62 -10
  212. package/dist/provider/fallback.js.map +1 -1
  213. package/dist/provider/idle-timeout.d.ts +4 -0
  214. package/dist/provider/idle-timeout.d.ts.map +1 -1
  215. package/dist/provider/idle-timeout.js +131 -15
  216. package/dist/provider/idle-timeout.js.map +1 -1
  217. package/dist/provider/index.d.ts +2 -0
  218. package/dist/provider/index.d.ts.map +1 -1
  219. package/dist/provider/index.js +1 -0
  220. package/dist/provider/index.js.map +1 -1
  221. package/dist/provider/instrumentation.d.ts.map +1 -1
  222. package/dist/provider/instrumentation.js +1 -0
  223. package/dist/provider/instrumentation.js.map +1 -1
  224. package/dist/provider/retry.d.ts.map +1 -1
  225. package/dist/provider/retry.js +13 -1
  226. package/dist/provider/retry.js.map +1 -1
  227. package/dist/public-runtime.d.ts +57 -24
  228. package/dist/public-runtime.d.ts.map +1 -1
  229. package/dist/public-runtime.js +42 -35
  230. package/dist/public-runtime.js.map +1 -1
  231. package/dist/public-tools.d.ts +1 -0
  232. package/dist/public-tools.d.ts.map +1 -1
  233. package/dist/public-tools.js +5 -0
  234. package/dist/public-tools.js.map +1 -1
  235. package/dist/public-types.d.ts +33 -12
  236. package/dist/public-types.d.ts.map +1 -1
  237. package/dist/rag/embedding.d.ts +8 -3
  238. package/dist/rag/embedding.d.ts.map +1 -1
  239. package/dist/rag/embedding.js +120 -9
  240. package/dist/rag/embedding.js.map +1 -1
  241. package/dist/rag/index.d.ts +1 -1
  242. package/dist/rag/index.d.ts.map +1 -1
  243. package/dist/rag/index.js +1 -1
  244. package/dist/rag/index.js.map +1 -1
  245. package/dist/rag/ingestion.d.ts +2 -2
  246. package/dist/rag/ingestion.d.ts.map +1 -1
  247. package/dist/rag/ingestion.js +15 -3
  248. package/dist/rag/ingestion.js.map +1 -1
  249. package/dist/rag/knowledge-base.d.ts +3 -3
  250. package/dist/rag/knowledge-base.d.ts.map +1 -1
  251. package/dist/rag/knowledge-base.js +8 -4
  252. package/dist/rag/knowledge-base.js.map +1 -1
  253. package/dist/rag/operation.d.ts +10 -0
  254. package/dist/rag/operation.d.ts.map +1 -0
  255. package/dist/rag/operation.js +26 -0
  256. package/dist/rag/operation.js.map +1 -0
  257. package/dist/rag/rag-tool.d.ts.map +1 -1
  258. package/dist/rag/rag-tool.js +6 -3
  259. package/dist/rag/rag-tool.js.map +1 -1
  260. package/dist/rag/retriever.d.ts +2 -2
  261. package/dist/rag/retriever.d.ts.map +1 -1
  262. package/dist/rag/retriever.js +31 -15
  263. package/dist/rag/retriever.js.map +1 -1
  264. package/dist/rag/vector-store.d.ts +3 -3
  265. package/dist/rag/vector-store.d.ts.map +1 -1
  266. package/dist/rag/vector-store.js +4 -2
  267. package/dist/rag/vector-store.js.map +1 -1
  268. package/dist/registry/command/kernel-commands.d.ts +16 -4
  269. package/dist/registry/command/kernel-commands.d.ts.map +1 -1
  270. package/dist/registry/command/kernel-commands.js +171 -0
  271. package/dist/registry/command/kernel-commands.js.map +1 -1
  272. package/dist/run/reporter.d.ts.map +1 -1
  273. package/dist/run/reporter.js +9 -0
  274. package/dist/run/reporter.js.map +1 -1
  275. package/dist/run-query/index.d.ts +15 -1
  276. package/dist/run-query/index.d.ts.map +1 -1
  277. package/dist/run-query/index.js +69 -15
  278. package/dist/run-query/index.js.map +1 -1
  279. package/dist/runtime/query/context.d.ts.map +1 -1
  280. package/dist/runtime/query/context.js +10 -3
  281. package/dist/runtime/query/context.js.map +1 -1
  282. package/dist/runtime/query/executor.d.ts +3 -0
  283. package/dist/runtime/query/executor.d.ts.map +1 -1
  284. package/dist/runtime/query/executor.js +80 -18
  285. package/dist/runtime/query/executor.js.map +1 -1
  286. package/dist/runtime/query/guard.d.ts +9 -0
  287. package/dist/runtime/query/guard.d.ts.map +1 -1
  288. package/dist/runtime/query/guard.js +11 -0
  289. package/dist/runtime/query/guard.js.map +1 -1
  290. package/dist/runtime/query/index.d.ts +30 -1
  291. package/dist/runtime/query/index.d.ts.map +1 -1
  292. package/dist/runtime/query/index.js +548 -95
  293. package/dist/runtime/query/index.js.map +1 -1
  294. package/dist/runtime/query/iteration/index.d.ts.map +1 -1
  295. package/dist/runtime/query/iteration/index.js +74 -14
  296. package/dist/runtime/query/iteration/index.js.map +1 -1
  297. package/dist/runtime/query/iteration/phases/compaction.d.ts.map +1 -1
  298. package/dist/runtime/query/iteration/phases/compaction.js +94 -53
  299. package/dist/runtime/query/iteration/phases/compaction.js.map +1 -1
  300. package/dist/runtime/query/iteration/phases/context.d.ts +3 -0
  301. package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
  302. package/dist/runtime/query/iteration/phases/context.js.map +1 -1
  303. package/dist/runtime/query/iteration/phases/tool-review.d.ts.map +1 -1
  304. package/dist/runtime/query/iteration/phases/tool-review.js +21 -0
  305. package/dist/runtime/query/iteration/phases/tool-review.js.map +1 -1
  306. package/dist/runtime/query/iteration/stream-turn.d.ts.map +1 -1
  307. package/dist/runtime/query/iteration/stream-turn.js +4 -0
  308. package/dist/runtime/query/iteration/stream-turn.js.map +1 -1
  309. package/dist/runtime/query/project-instructions.d.ts +69 -0
  310. package/dist/runtime/query/project-instructions.d.ts.map +1 -0
  311. package/dist/runtime/query/project-instructions.js +137 -0
  312. package/dist/runtime/query/project-instructions.js.map +1 -0
  313. package/dist/runtime/query/request-rich-content.d.ts +22 -0
  314. package/dist/runtime/query/request-rich-content.d.ts.map +1 -0
  315. package/dist/runtime/query/request-rich-content.js +122 -0
  316. package/dist/runtime/query/request-rich-content.js.map +1 -0
  317. package/dist/runtime/query/result.d.ts.map +1 -1
  318. package/dist/runtime/query/result.js +12 -1
  319. package/dist/runtime/query/result.js.map +1 -1
  320. package/dist/runtime/query/resume-pending.d.ts.map +1 -1
  321. package/dist/runtime/query/resume-pending.js +19 -20
  322. package/dist/runtime/query/resume-pending.js.map +1 -1
  323. package/dist/runtime/query/resume-run.d.ts.map +1 -1
  324. package/dist/runtime/query/resume-run.js +54 -8
  325. package/dist/runtime/query/resume-run.js.map +1 -1
  326. package/dist/runtime/query/run-state.d.ts +5 -0
  327. package/dist/runtime/query/run-state.d.ts.map +1 -1
  328. package/dist/runtime/query/run-state.js +6 -1
  329. package/dist/runtime/query/run-state.js.map +1 -1
  330. package/dist/runtime/query/sandbox-lifecycle.d.ts +54 -0
  331. package/dist/runtime/query/sandbox-lifecycle.d.ts.map +1 -0
  332. package/dist/runtime/query/sandbox-lifecycle.js +167 -0
  333. package/dist/runtime/query/sandbox-lifecycle.js.map +1 -0
  334. package/dist/sandbox/isolation.d.ts.map +1 -1
  335. package/dist/sandbox/isolation.js +9 -0
  336. package/dist/sandbox/isolation.js.map +1 -1
  337. package/dist/sandbox/provider/local.d.ts +56 -6
  338. package/dist/sandbox/provider/local.d.ts.map +1 -1
  339. package/dist/sandbox/provider/local.js +181 -76
  340. package/dist/sandbox/provider/local.js.map +1 -1
  341. package/dist/sandbox/terminal.d.ts +13 -5
  342. package/dist/sandbox/terminal.d.ts.map +1 -1
  343. package/dist/sandbox/terminal.js +11 -3
  344. package/dist/sandbox/terminal.js.map +1 -1
  345. package/dist/session/errors.d.ts +28 -29
  346. package/dist/session/errors.d.ts.map +1 -1
  347. package/dist/session/errors.js +28 -29
  348. package/dist/session/errors.js.map +1 -1
  349. package/dist/session/handoff/broadcast.d.ts +5 -8
  350. package/dist/session/handoff/broadcast.d.ts.map +1 -1
  351. package/dist/session/handoff/broadcast.js +16 -6
  352. package/dist/session/handoff/broadcast.js.map +1 -1
  353. package/dist/session/handoff/single.d.ts +5 -8
  354. package/dist/session/handoff/single.d.ts.map +1 -1
  355. package/dist/session/handoff/single.js +7 -4
  356. package/dist/session/handoff/single.js.map +1 -1
  357. package/dist/store/attachment/index.d.ts +11 -3
  358. package/dist/store/attachment/index.d.ts.map +1 -1
  359. package/dist/store/attachment/index.js +49 -4
  360. package/dist/store/attachment/index.js.map +1 -1
  361. package/dist/store/feedback/conformance.d.ts.map +1 -1
  362. package/dist/store/feedback/conformance.js +32 -0
  363. package/dist/store/feedback/conformance.js.map +1 -1
  364. package/dist/store/feedback/disk.d.ts +8 -6
  365. package/dist/store/feedback/disk.d.ts.map +1 -1
  366. package/dist/store/feedback/disk.js +111 -76
  367. package/dist/store/feedback/disk.js.map +1 -1
  368. package/dist/store/goal/index.d.ts +111 -0
  369. package/dist/store/goal/index.d.ts.map +1 -0
  370. package/dist/store/goal/index.js +436 -0
  371. package/dist/store/goal/index.js.map +1 -0
  372. package/dist/store/index.d.ts +1 -1
  373. package/dist/store/index.d.ts.map +1 -1
  374. package/dist/store/index.js +1 -1
  375. package/dist/store/index.js.map +1 -1
  376. package/dist/store/kv/revision-record-store.d.ts +70 -0
  377. package/dist/store/kv/revision-record-store.d.ts.map +1 -0
  378. package/dist/store/kv/revision-record-store.js +290 -0
  379. package/dist/store/kv/revision-record-store.js.map +1 -0
  380. package/dist/store/memory/disk.d.ts +9 -7
  381. package/dist/store/memory/disk.d.ts.map +1 -1
  382. package/dist/store/memory/disk.js +256 -98
  383. package/dist/store/memory/disk.js.map +1 -1
  384. package/dist/store/run/disk.d.ts +10 -2
  385. package/dist/store/run/disk.d.ts.map +1 -1
  386. package/dist/store/run/disk.js +70 -4
  387. package/dist/store/run/disk.js.map +1 -1
  388. package/dist/store/run/memory.d.ts +4 -2
  389. package/dist/store/run/memory.d.ts.map +1 -1
  390. package/dist/store/run/memory.js +15 -1
  391. package/dist/store/run/memory.js.map +1 -1
  392. package/dist/store/session/disk.d.ts +9 -0
  393. package/dist/store/session/disk.d.ts.map +1 -1
  394. package/dist/store/session/disk.js +57 -5
  395. package/dist/store/session/disk.js.map +1 -1
  396. package/dist/store/session/memory.d.ts +1 -0
  397. package/dist/store/session/memory.d.ts.map +1 -1
  398. package/dist/store/session/memory.js +14 -0
  399. package/dist/store/session/memory.js.map +1 -1
  400. package/dist/store/topic/memory.d.ts +1 -2
  401. package/dist/store/topic/memory.d.ts.map +1 -1
  402. package/dist/store/topic/memory.js +4 -5
  403. package/dist/store/topic/memory.js.map +1 -1
  404. package/dist/store/topic/objective.d.ts +8 -4
  405. package/dist/store/topic/objective.d.ts.map +1 -1
  406. package/dist/store/topic/objective.js +185 -100
  407. package/dist/store/topic/objective.js.map +1 -1
  408. package/dist/store/topic/state.d.ts +1 -2
  409. package/dist/store/topic/state.d.ts.map +1 -1
  410. package/dist/store/topic/state.js +50 -62
  411. package/dist/store/topic/state.js.map +1 -1
  412. package/dist/tools/builtins/bash.d.ts.map +1 -1
  413. package/dist/tools/builtins/bash.js +20 -0
  414. package/dist/tools/builtins/bash.js.map +1 -1
  415. package/dist/tools/builtins/computer-use.d.ts +9 -1
  416. package/dist/tools/builtins/computer-use.d.ts.map +1 -1
  417. package/dist/tools/builtins/computer-use.js.map +1 -1
  418. package/dist/tools/builtins/content-fingerprint.d.ts +8 -7
  419. package/dist/tools/builtins/content-fingerprint.d.ts.map +1 -1
  420. package/dist/tools/builtins/content-fingerprint.js +9 -10
  421. package/dist/tools/builtins/content-fingerprint.js.map +1 -1
  422. package/dist/tools/builtins/edit.d.ts +6 -1
  423. package/dist/tools/builtins/edit.d.ts.map +1 -1
  424. package/dist/tools/builtins/edit.js +166 -27
  425. package/dist/tools/builtins/edit.js.map +1 -1
  426. package/dist/tools/builtins/write-file.d.ts.map +1 -1
  427. package/dist/tools/builtins/write-file.js +45 -19
  428. package/dist/tools/builtins/write-file.js.map +1 -1
  429. package/dist/tools/command-arguments.d.ts +43 -0
  430. package/dist/tools/command-arguments.d.ts.map +1 -0
  431. package/dist/tools/command-arguments.js +52 -0
  432. package/dist/tools/command-arguments.js.map +1 -0
  433. package/dist/tools/coordinator/index.d.ts +2 -0
  434. package/dist/tools/coordinator/index.d.ts.map +1 -1
  435. package/dist/tools/coordinator/index.js +3 -1
  436. package/dist/tools/coordinator/index.js.map +1 -1
  437. package/dist/tools/defineTool.d.ts +10 -0
  438. package/dist/tools/defineTool.d.ts.map +1 -1
  439. package/dist/tools/defineTool.js +1 -0
  440. package/dist/tools/defineTool.js.map +1 -1
  441. package/dist/tools/env-scrub.d.ts +7 -5
  442. package/dist/tools/env-scrub.d.ts.map +1 -1
  443. package/dist/tools/env-scrub.js +7 -5
  444. package/dist/tools/env-scrub.js.map +1 -1
  445. package/dist/tools/goal/index.d.ts +20 -0
  446. package/dist/tools/goal/index.d.ts.map +1 -0
  447. package/dist/tools/goal/index.js +104 -0
  448. package/dist/tools/goal/index.js.map +1 -0
  449. package/dist/tools/memory/index.d.ts +16 -0
  450. package/dist/tools/memory/index.d.ts.map +1 -1
  451. package/dist/tools/memory/index.js +6 -2
  452. package/dist/tools/memory/index.js.map +1 -1
  453. package/dist/tools/memory/search.d.ts +4 -1
  454. package/dist/tools/memory/search.d.ts.map +1 -1
  455. package/dist/tools/memory/search.js +10 -2
  456. package/dist/tools/memory/search.js.map +1 -1
  457. package/dist/types/agent/base.d.ts +11 -3
  458. package/dist/types/agent/base.d.ts.map +1 -1
  459. package/dist/types/agent/factory.d.ts +2 -0
  460. package/dist/types/agent/factory.d.ts.map +1 -1
  461. package/dist/types/agent/reactive.d.ts +2 -0
  462. package/dist/types/agent/reactive.d.ts.map +1 -1
  463. package/dist/types/agent/supervisor.d.ts +6 -0
  464. package/dist/types/agent/supervisor.d.ts.map +1 -1
  465. package/dist/types/agent/task.d.ts +6 -2
  466. package/dist/types/agent/task.d.ts.map +1 -1
  467. package/dist/types/connector/core.d.ts +13 -8
  468. package/dist/types/connector/core.d.ts.map +1 -1
  469. package/dist/types/connector/definition.d.ts +37 -18
  470. package/dist/types/connector/definition.d.ts.map +1 -1
  471. package/dist/types/connector/http.d.ts +6 -0
  472. package/dist/types/connector/http.d.ts.map +1 -1
  473. package/dist/types/connector/mcp.d.ts +24 -6
  474. package/dist/types/connector/mcp.d.ts.map +1 -1
  475. package/dist/types/connector/tenant.d.ts +17 -7
  476. package/dist/types/connector/tenant.d.ts.map +1 -1
  477. package/dist/types/connector/webhook.d.ts +6 -0
  478. package/dist/types/connector/webhook.d.ts.map +1 -1
  479. package/dist/types/goal/index.d.ts +46 -0
  480. package/dist/types/goal/index.d.ts.map +1 -0
  481. package/dist/types/goal/index.js +2 -0
  482. package/dist/types/goal/index.js.map +1 -0
  483. package/dist/types/ids/index.d.ts +2 -0
  484. package/dist/types/ids/index.d.ts.map +1 -1
  485. package/dist/types/ids/index.js.map +1 -1
  486. package/dist/types/message/index.d.ts +75 -10
  487. package/dist/types/message/index.d.ts.map +1 -1
  488. package/dist/types/message/index.js +49 -3
  489. package/dist/types/message/index.js.map +1 -1
  490. package/dist/types/plugin/index.d.ts +7 -5
  491. package/dist/types/plugin/index.d.ts.map +1 -1
  492. package/dist/types/plugin/index.js.map +1 -1
  493. package/dist/types/provider/chat.d.ts +27 -4
  494. package/dist/types/provider/chat.d.ts.map +1 -1
  495. package/dist/types/provider/interface.d.ts +18 -7
  496. package/dist/types/provider/interface.d.ts.map +1 -1
  497. package/dist/types/provider/stream.d.ts +6 -0
  498. package/dist/types/provider/stream.d.ts.map +1 -1
  499. package/dist/types/rag/embedding.d.ts +15 -2
  500. package/dist/types/rag/embedding.d.ts.map +1 -1
  501. package/dist/types/rag/ingestion.d.ts +2 -2
  502. package/dist/types/rag/ingestion.d.ts.map +1 -1
  503. package/dist/types/rag/knowledge-base.d.ts +3 -3
  504. package/dist/types/rag/knowledge-base.d.ts.map +1 -1
  505. package/dist/types/rag/retrieval.d.ts +2 -2
  506. package/dist/types/rag/retrieval.d.ts.map +1 -1
  507. package/dist/types/rag/scope.d.ts +4 -0
  508. package/dist/types/rag/scope.d.ts.map +1 -1
  509. package/dist/types/rag/vector.d.ts +5 -2
  510. package/dist/types/rag/vector.d.ts.map +1 -1
  511. package/dist/types/run/config.d.ts +20 -0
  512. package/dist/types/run/config.d.ts.map +1 -1
  513. package/dist/types/run/events.d.ts +25 -1
  514. package/dist/types/run/events.d.ts.map +1 -1
  515. package/dist/types/run/events.js.map +1 -1
  516. package/dist/types/run/metadata.d.ts +2 -0
  517. package/dist/types/run/metadata.d.ts.map +1 -1
  518. package/dist/types/run/step.d.ts +2 -6
  519. package/dist/types/run/step.d.ts.map +1 -1
  520. package/dist/types/run/step.js.map +1 -1
  521. package/dist/types/run/store.d.ts +55 -2
  522. package/dist/types/run/store.d.ts.map +1 -1
  523. package/dist/types/sandbox/index.d.ts +47 -6
  524. package/dist/types/sandbox/index.d.ts.map +1 -1
  525. package/dist/types/sandbox/index.js +23 -10
  526. package/dist/types/sandbox/index.js.map +1 -1
  527. package/dist/types/session/store.d.ts +13 -0
  528. package/dist/types/session/store.d.ts.map +1 -1
  529. package/dist/types/tool/index.d.ts +33 -11
  530. package/dist/types/tool/index.d.ts.map +1 -1
  531. package/dist/types/tool/index.js.map +1 -1
  532. package/dist/types/topic/entity.d.ts +3 -4
  533. package/dist/types/topic/entity.d.ts.map +1 -1
  534. package/dist/types/topic/store.d.ts +3 -3
  535. package/dist/utils/id.d.ts +3 -1
  536. package/dist/utils/id.d.ts.map +1 -1
  537. package/dist/utils/id.js +4 -0
  538. package/dist/utils/id.js.map +1 -1
  539. package/dist/utils/process-environment.d.ts +26 -0
  540. package/dist/utils/process-environment.d.ts.map +1 -0
  541. package/dist/utils/process-environment.js +78 -0
  542. package/dist/utils/process-environment.js.map +1 -0
  543. package/dist/vault/InMemoryCredentialVault.d.ts +2 -0
  544. package/dist/vault/InMemoryCredentialVault.d.ts.map +1 -1
  545. package/dist/vault/InMemoryCredentialVault.js +24 -4
  546. package/dist/vault/InMemoryCredentialVault.js.map +1 -1
  547. package/dist/vault/instrumentation.d.ts.map +1 -1
  548. package/dist/vault/instrumentation.js +15 -0
  549. package/dist/vault/instrumentation.js.map +1 -1
  550. package/package.json +1 -1
  551. package/src/advisory/executor.ts +4 -1
  552. package/src/agents/ReactiveAgent.ts +12 -0
  553. package/src/agents/RouterAgent.ts +25 -3
  554. package/src/agents/SupervisorAgent.ts +33 -11
  555. package/src/agents/runAgent.ts +38 -2
  556. package/src/authorization/command-line.ts +390 -0
  557. package/src/authorization/rules.ts +22 -1
  558. package/src/bridge/a2a/client.ts +384 -97
  559. package/src/bridge/a2a/mapper.ts +5 -0
  560. package/src/bridge/acp/server.ts +184 -42
  561. package/src/bridge/mcp/connector/adapter.ts +28 -20
  562. package/src/bridge/sse/mapper.ts +3 -0
  563. package/src/compaction/dangling.ts +203 -38
  564. package/src/compaction/index.ts +9 -2
  565. package/src/compaction/manual.ts +125 -18
  566. package/src/compaction/plan.ts +42 -11
  567. package/src/compaction/retention.ts +23 -8
  568. package/src/compaction/summary.ts +4 -4
  569. package/src/compaction/verifier.ts +66 -0
  570. package/src/connector/BaseConnector.ts +19 -4
  571. package/src/connector/builtins/http.ts +236 -46
  572. package/src/connector/builtins/webhook.ts +207 -47
  573. package/src/connector/execution-contract.ts +27 -0
  574. package/src/connector/http-operation.ts +238 -0
  575. package/src/connector/mcp/adapter.ts +8 -3
  576. package/src/connector/mcp/client.ts +207 -58
  577. package/src/connector/mcp/http-sse.ts +91 -23
  578. package/src/connector/mcp/prompt-adapter.ts +8 -2
  579. package/src/connector/mcp/stdio.ts +21 -46
  580. package/src/connector/mcp/streamable-http.ts +86 -22
  581. package/src/connector/tools/adapter.ts +23 -14
  582. package/src/connector/tools/definitions.ts +5 -2
  583. package/src/connector/tools/result.ts +21 -0
  584. package/src/connector/web/guarded-fetch.ts +188 -48
  585. package/src/constants/sandbox/index.ts +3 -2
  586. package/src/contracts/api.ts +2 -0
  587. package/src/contracts/schemas.ts +7 -0
  588. package/src/directory/derive-supervisor.ts +8 -0
  589. package/src/directory/derive.ts +8 -0
  590. package/src/directory/load.ts +2 -0
  591. package/src/directory/types.ts +4 -0
  592. package/src/eval/experiment.ts +160 -111
  593. package/src/eval/judge.ts +13 -2
  594. package/src/eval/types.ts +7 -1
  595. package/src/manager/agent/lifecycle.ts +28 -12
  596. package/src/manager/connector/environment.ts +3 -1
  597. package/src/manager/connector/lifecycle.ts +364 -24
  598. package/src/manager/connector/tenant.ts +56 -23
  599. package/src/manager/goal/activation.ts +52 -0
  600. package/src/manager/index.ts +10 -2
  601. package/src/manager/run/persistence.ts +6 -1
  602. package/src/manager/topic/dependency.ts +39 -0
  603. package/src/manager/topic/lifecycle.ts +19 -31
  604. package/src/plugin/index.ts +1 -0
  605. package/src/plugin/lifecycle.ts +180 -39
  606. package/src/plugin/loader.ts +70 -13
  607. package/src/provider/collect-chat-completion.ts +3 -0
  608. package/src/provider/fallback.ts +79 -11
  609. package/src/provider/idle-timeout.ts +143 -17
  610. package/src/provider/index.ts +2 -0
  611. package/src/provider/instrumentation.ts +1 -0
  612. package/src/provider/retry.ts +16 -1
  613. package/src/public-runtime.ts +190 -32
  614. package/src/public-tools.ts +5 -0
  615. package/src/public-types.ts +85 -11
  616. package/src/rag/embedding.ts +147 -19
  617. package/src/rag/index.ts +1 -1
  618. package/src/rag/ingestion.ts +16 -2
  619. package/src/rag/knowledge-base.ts +13 -4
  620. package/src/rag/operation.ts +28 -0
  621. package/src/rag/rag-tool.ts +6 -3
  622. package/src/rag/retriever.ts +62 -11
  623. package/src/rag/vector-store.ts +8 -2
  624. package/src/registry/command/kernel-commands.ts +223 -4
  625. package/src/run/reporter.ts +10 -0
  626. package/src/run-query/index.ts +84 -15
  627. package/src/runtime/query/context.ts +13 -3
  628. package/src/runtime/query/executor.ts +90 -17
  629. package/src/runtime/query/guard.ts +12 -0
  630. package/src/runtime/query/index.ts +652 -103
  631. package/src/runtime/query/iteration/index.ts +89 -13
  632. package/src/runtime/query/iteration/phases/compaction.ts +120 -55
  633. package/src/runtime/query/iteration/phases/context.ts +4 -0
  634. package/src/runtime/query/iteration/phases/tool-review.ts +28 -0
  635. package/src/runtime/query/iteration/stream-turn.ts +3 -0
  636. package/src/runtime/query/project-instructions.ts +212 -0
  637. package/src/runtime/query/request-rich-content.ts +153 -0
  638. package/src/runtime/query/result.ts +12 -1
  639. package/src/runtime/query/resume-pending.ts +20 -18
  640. package/src/runtime/query/resume-run.ts +52 -8
  641. package/src/runtime/query/run-state.ts +11 -1
  642. package/src/runtime/query/sandbox-lifecycle.ts +210 -0
  643. package/src/sandbox/isolation.ts +9 -0
  644. package/src/sandbox/provider/local.ts +255 -90
  645. package/src/sandbox/terminal.ts +13 -5
  646. package/src/session/errors.ts +68 -42
  647. package/src/session/handoff/broadcast.ts +20 -14
  648. package/src/session/handoff/single.ts +14 -13
  649. package/src/store/attachment/index.ts +65 -3
  650. package/src/store/feedback/conformance.ts +39 -0
  651. package/src/store/feedback/disk.ts +128 -82
  652. package/src/store/goal/index.ts +594 -0
  653. package/src/store/index.ts +1 -1
  654. package/src/store/kv/revision-record-store.ts +346 -0
  655. package/src/store/memory/disk.ts +288 -113
  656. package/src/store/run/disk.ts +96 -5
  657. package/src/store/run/memory.ts +22 -2
  658. package/src/store/session/disk.ts +93 -6
  659. package/src/store/session/memory.ts +22 -0
  660. package/src/store/topic/memory.ts +4 -5
  661. package/src/store/topic/objective.ts +215 -100
  662. package/src/store/topic/state.ts +100 -63
  663. package/src/tools/builtins/bash.ts +21 -0
  664. package/src/tools/builtins/computer-use.ts +9 -1
  665. package/src/tools/builtins/content-fingerprint.ts +9 -12
  666. package/src/tools/builtins/edit.ts +190 -27
  667. package/src/tools/builtins/write-file.ts +55 -19
  668. package/src/tools/command-arguments.ts +54 -0
  669. package/src/tools/coordinator/index.ts +4 -1
  670. package/src/tools/defineTool.ts +11 -0
  671. package/src/tools/env-scrub.ts +7 -5
  672. package/src/tools/goal/index.ts +129 -0
  673. package/src/tools/memory/index.ts +26 -3
  674. package/src/tools/memory/search.ts +20 -3
  675. package/src/types/agent/base.ts +12 -3
  676. package/src/types/agent/factory.ts +2 -0
  677. package/src/types/agent/reactive.ts +2 -0
  678. package/src/types/agent/supervisor.ts +6 -0
  679. package/src/types/agent/task.ts +6 -2
  680. package/src/types/connector/core.ts +13 -8
  681. package/src/types/connector/definition.ts +54 -20
  682. package/src/types/connector/http.ts +7 -0
  683. package/src/types/connector/mcp.ts +27 -6
  684. package/src/types/connector/tenant.ts +21 -7
  685. package/src/types/connector/webhook.ts +7 -0
  686. package/src/types/goal/index.ts +50 -0
  687. package/src/types/ids/index.ts +2 -0
  688. package/src/types/message/index.ts +143 -9
  689. package/src/types/plugin/index.ts +7 -5
  690. package/src/types/provider/chat.ts +35 -4
  691. package/src/types/provider/interface.ts +22 -7
  692. package/src/types/provider/stream.ts +6 -0
  693. package/src/types/rag/embedding.ts +16 -2
  694. package/src/types/rag/ingestion.ts +2 -1
  695. package/src/types/rag/knowledge-base.ts +7 -3
  696. package/src/types/rag/retrieval.ts +2 -1
  697. package/src/types/rag/scope.ts +5 -0
  698. package/src/types/rag/vector.ts +5 -2
  699. package/src/types/run/config.ts +20 -0
  700. package/src/types/run/events.ts +28 -3
  701. package/src/types/run/metadata.ts +2 -0
  702. package/src/types/run/step.ts +2 -7
  703. package/src/types/run/store.ts +60 -2
  704. package/src/types/sandbox/index.ts +57 -14
  705. package/src/types/session/store.ts +18 -0
  706. package/src/types/tool/index.ts +33 -11
  707. package/src/types/topic/entity.ts +3 -4
  708. package/src/types/topic/store.ts +3 -3
  709. package/src/utils/id.ts +6 -0
  710. package/src/utils/process-environment.ts +101 -0
  711. package/src/vault/InMemoryCredentialVault.ts +29 -4
  712. package/src/vault/instrumentation.ts +24 -0
@@ -1 +1 @@
1
- {"version":3,"file":"streamable-http.js","sourceRoot":"","sources":["../../../src/connector/mcp/streamable-http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"streamable-http.js","sourceRoot":"","sources":["../../../src/connector/mcp/streamable-http.ts"],"names":[],"mappings":"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"}
@@ -13,14 +13,14 @@ declare const ConnectorRouterInputSchema: z.ZodObject<{
13
13
  input: z.ZodRecord<z.ZodString, z.ZodUnknown>;
14
14
  }, "strip", z.ZodTypeAny, {
15
15
  input: Record<string, unknown>;
16
+ instanceId: string;
16
17
  method: string;
17
18
  connectorId: string;
18
- instanceId: string;
19
19
  }, {
20
20
  input: Record<string, unknown>;
21
+ instanceId: string;
21
22
  method: string;
22
23
  connectorId: string;
23
- instanceId: string;
24
24
  }>;
25
25
  export type ConnectorRouterInput = z.infer<typeof ConnectorRouterInputSchema>;
26
26
  export declare function createConnectorRouterTool(manager: ConnectorManager): ToolDefinition<ConnectorRouterInput>;
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/connector/tools/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAChF,OAAO,KAAK,EAAe,cAAc,EAAc,MAAM,2BAA2B,CAAA;AAGxF,wBAAgB,qBAAqB,CACpC,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,mBAAmB,EAC/B,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,gBAAgB,GACvB,cAAc,CA4BhB;AAED,wBAAgB,wBAAwB,CACvC,UAAU,EAAE,mBAAmB,EAC/B,OAAO,EAAE,gBAAgB,GACvB,cAAc,EAAE,CAUlB;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,gBAAgB,GAAG,cAAc,EAAE,CAM7E;AAED,QAAA,MAAM,0BAA0B;;;;;;;;;;;;;;;EAO9B,CAAA;AAEF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAE7E,wBAAgB,yBAAyB,CACxC,OAAO,EAAE,gBAAgB,GACvB,cAAc,CAAC,oBAAoB,CAAC,CA4CtC"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/connector/tools/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AAE5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAChF,OAAO,KAAK,EAAe,cAAc,EAAc,MAAM,2BAA2B,CAAA;AAIxF,wBAAgB,qBAAqB,CACpC,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,mBAAmB,EAC/B,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,gBAAgB,GACvB,cAAc,CAiChB;AAED,wBAAgB,wBAAwB,CACvC,UAAU,EAAE,mBAAmB,EAC/B,OAAO,EAAE,gBAAgB,GACvB,cAAc,EAAE,CAWlB;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,gBAAgB,GAAG,cAAc,EAAE,CAM7E;AAED,QAAA,MAAM,0BAA0B;;;;;;;;;;;;;;;EAO9B,CAAA;AAEF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAE7E,wBAAgB,yBAAyB,CACxC,OAAO,EAAE,gBAAgB,GACvB,cAAc,CAAC,oBAAoB,CAAC,CA8CtC"}
@@ -1,27 +1,34 @@
1
1
  import { z } from 'zod';
2
+ import { renderToolSchema } from '../../registry/tool/schema.js';
2
3
  import { parseConnectorInstanceId } from '../../utils/id.js';
4
+ import { connectorToolError } from './result.js';
3
5
  export function connectorMethodToTool(connectorId, instanceId, method, manager) {
4
6
  const toolName = `${connectorId}_${method.name}`;
5
7
  return {
6
8
  name: toolName,
7
9
  description: `[${connectorId}] ${method.description}`,
8
- inputSchema: method.inputSchema,
10
+ // ConnectorManager owns method parsing. A second Zod parse here would
11
+ // re-run transforms before the manager sees the value.
12
+ inputSchema: z.unknown(),
13
+ modelInputSchema: renderToolSchema(method.inputSchema),
14
+ ...(method.outputSchema ? { outputSchema: renderToolSchema(method.outputSchema) } : {}),
9
15
  category: 'network',
10
16
  permissions: ['network_access'],
11
17
  isReadOnly: () => false,
12
18
  isDestructive: () => false,
13
19
  isConcurrencySafe: () => true,
14
- async execute(input, _context) {
20
+ async execute(input, context) {
15
21
  const result = await manager.execute({
16
22
  instanceId,
17
23
  method: method.name,
18
24
  input,
25
+ signal: context.abortSignal,
19
26
  });
20
27
  return {
21
28
  success: result.success,
22
29
  output: result.success ? JSON.stringify(result.output, null, 2) : '',
23
30
  data: result.output,
24
- error: result.error,
31
+ error: result.success ? undefined : connectorToolError(result),
25
32
  };
26
33
  },
27
34
  };
@@ -31,8 +38,9 @@ export function connectorInstanceToTools(instanceId, manager) {
31
38
  if (!instance) {
32
39
  throw new Error(`Connector instance not found: "${instanceId}"`);
33
40
  }
34
- const definition = manager.getRegistry().getOrThrow(instance.connectorId);
35
- return definition.methods.map((method) => connectorMethodToTool(instance.connectorId, instanceId, method, manager));
41
+ const connectorId = manager.getInstanceConnectorId(instanceId);
42
+ const definition = manager.getInstanceDefinition(instanceId);
43
+ return definition.methods.map((method) => connectorMethodToTool(connectorId, instanceId, method, manager));
36
44
  }
37
45
  export function allConnectorTools(manager) {
38
46
  const tools = [];
@@ -59,7 +67,7 @@ export function createConnectorRouterTool(manager) {
59
67
  isReadOnly: () => false,
60
68
  isDestructive: () => false,
61
69
  isConcurrencySafe: () => true,
62
- async execute(input, _context) {
70
+ async execute(input, context) {
63
71
  const instanceId = parseConnectorInstanceId(String(input.instanceId));
64
72
  const instance = manager.getInstance(instanceId);
65
73
  if (!instance) {
@@ -69,23 +77,25 @@ export function createConnectorRouterTool(manager) {
69
77
  error: `Connector instance not found: "${input.instanceId}"`,
70
78
  };
71
79
  }
72
- if (instance.connectorId !== input.connectorId) {
80
+ const connectorId = manager.getInstanceConnectorId(instanceId);
81
+ if (connectorId !== input.connectorId) {
73
82
  return {
74
83
  success: false,
75
84
  output: '',
76
- error: `Instance "${input.instanceId}" belongs to connector "${instance.connectorId}", not "${input.connectorId}"`,
85
+ error: `Instance "${input.instanceId}" belongs to connector "${connectorId}", not "${input.connectorId}"`,
77
86
  };
78
87
  }
79
88
  const result = await manager.execute({
80
89
  instanceId,
81
90
  method: input.method,
82
91
  input: input.input,
92
+ signal: context.abortSignal,
83
93
  });
84
94
  return {
85
95
  success: result.success,
86
96
  output: result.success ? JSON.stringify(result.output, null, 2) : '',
87
97
  data: result.output,
88
- error: result.error,
98
+ error: result.success ? undefined : connectorToolError(result),
89
99
  };
90
100
  },
91
101
  };
@@ -97,11 +107,10 @@ function buildRouterDescription(manager) {
97
107
  }
98
108
  const parts = ['Execute a method on a connected connector instance. Available:'];
99
109
  for (const inst of instances) {
100
- const def = manager.getRegistry().get(inst.connectorId);
101
- if (def) {
102
- const methods = def.methods.map((m) => m.name).join(', ');
103
- parts.push(`- ${inst.connectorId} (${inst.id}): ${methods}`);
104
- }
110
+ const connectorId = manager.getInstanceConnectorId(inst.id);
111
+ const definition = manager.getInstanceDefinition(inst.id);
112
+ const methods = definition.methods.map((method) => method.name).join(', ');
113
+ parts.push(`- ${connectorId} (${inst.id}): ${methods}`);
105
114
  }
106
115
  return parts.join('\n');
107
116
  }
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/connector/tools/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAKvB,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAA;AAE5D,MAAM,UAAU,qBAAqB,CACpC,WAAwB,EACxB,UAA+B,EAC/B,MAAuB,EACvB,OAAyB;IAEzB,MAAM,QAAQ,GAAG,GAAG,WAAW,IAAI,MAAM,CAAC,IAAI,EAAE,CAAA;IAEhD,OAAO;QACN,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,IAAI,WAAW,KAAK,MAAM,CAAC,WAAW,EAAE;QACrD,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,QAAQ,EAAE,SAAS;QACnB,WAAW,EAAE,CAAC,gBAAgB,CAAC;QAC/B,UAAU,EAAE,GAAG,EAAE,CAAC,KAAK;QACvB,aAAa,EAAE,GAAG,EAAE,CAAC,KAAK;QAC1B,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI;QAE7B,KAAK,CAAC,OAAO,CAAC,KAAc,EAAE,QAAqB;YAClD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC;gBACpC,UAAU;gBACV,MAAM,EAAE,MAAM,CAAC,IAAI;gBACnB,KAAK;aACL,CAAC,CAAA;YAEF,OAAO;gBACN,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;gBACpE,IAAI,EAAE,MAAM,CAAC,MAAM;gBACnB,KAAK,EAAE,MAAM,CAAC,KAAK;aACnB,CAAA;QACF,CAAC;KACD,CAAA;AACF,CAAC;AAED,MAAM,UAAU,wBAAwB,CACvC,UAA+B,EAC/B,OAAyB;IAEzB,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;IAChD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,kCAAkC,UAAU,GAAG,CAAC,CAAA;IACjE,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;IACzE,OAAO,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACxC,qBAAqB,CAAC,QAAQ,CAAC,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CACxE,CAAA;AACF,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,OAAyB;IAC1D,MAAM,KAAK,GAAqB,EAAE,CAAA;IAClC,KAAK,MAAM,QAAQ,IAAI,OAAO,CAAC,sBAAsB,EAAE,EAAE,CAAC;QACzD,KAAK,CAAC,IAAI,CAAC,GAAG,wBAAwB,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAA;IAC9D,CAAC;IACD,OAAO,KAAK,CAAA;AACb,CAAC;AAED,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,WAAW,EAAE,CAAC;SACZ,MAAM,EAAE;SACR,QAAQ,CAAC,iEAAiE,CAAC;IAC7E,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;IAChF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IACrE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,+BAA+B,CAAC;CACtE,CAAC,CAAA;AAIF,MAAM,UAAU,yBAAyB,CACxC,OAAyB;IAEzB,OAAO;QACN,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE,sBAAsB,CAAC,OAAO,CAAC;QAC5C,WAAW,EAAE,0BAA0B;QACvC,QAAQ,EAAE,SAAS;QACnB,WAAW,EAAE,CAAC,gBAAgB,CAAC;QAC/B,UAAU,EAAE,GAAG,EAAE,CAAC,KAAK;QACvB,aAAa,EAAE,GAAG,EAAE,CAAC,KAAK;QAC1B,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI;QAE7B,KAAK,CAAC,OAAO,CAAC,KAA2B,EAAE,QAAqB;YAC/D,MAAM,UAAU,GAAG,wBAAwB,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAA;YACrE,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;YAChD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACf,OAAO;oBACN,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,EAAE;oBACV,KAAK,EAAE,kCAAkC,KAAK,CAAC,UAAU,GAAG;iBAC5D,CAAA;YACF,CAAC;YAED,IAAI,QAAQ,CAAC,WAAW,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC;gBAChD,OAAO;oBACN,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,EAAE;oBACV,KAAK,EAAE,aAAa,KAAK,CAAC,UAAU,2BAA2B,QAAQ,CAAC,WAAW,WAAW,KAAK,CAAC,WAAW,GAAG;iBAClH,CAAA;YACF,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC;gBACpC,UAAU;gBACV,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,KAAK,EAAE,KAAK,CAAC,KAAK;aAClB,CAAC,CAAA;YAEF,OAAO;gBACN,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;gBACpE,IAAI,EAAE,MAAM,CAAC,MAAM;gBACnB,KAAK,EAAE,MAAM,CAAC,KAAK;aACnB,CAAA;QACF,CAAC;KACD,CAAA;AACF,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAyB;IACxD,MAAM,SAAS,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAA;IAClD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,4FAA4F,CAAA;IACpG,CAAC;IAED,MAAM,KAAK,GAAG,CAAC,gEAAgE,CAAC,CAAA;IAChF,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACvD,IAAI,GAAG,EAAE,CAAC;YACT,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACzD,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,EAAE,MAAM,OAAO,EAAE,CAAC,CAAA;QAC7D,CAAC;IACF,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACxB,CAAC"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/connector/tools/adapter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../../src/connector/tools/definitions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AAE5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAG/D,MAAM,WAAW,mBAAmB;IACnC,OAAO,EAAE,gBAAgB,CAAA;CACzB;AAUD,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,mBAAmB,GAAG,cAAc,CA2DtF;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,mBAAmB,GAAG,cAAc,CAuCnF;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,mBAAmB,GAAG,cAAc,EAAE,CAElF"}
1
+ {"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../../src/connector/tools/definitions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AAE5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI/D,MAAM,WAAW,mBAAmB;IACnC,OAAO,EAAE,gBAAgB,CAAA;CACzB;AAUD,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,mBAAmB,GAAG,cAAc,CA6DtF;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,mBAAmB,GAAG,cAAc,CAuCnF;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,mBAAmB,GAAG,cAAc,EAAE,CAElF"}
@@ -1,6 +1,7 @@
1
1
  import { z } from 'zod';
2
2
  import { defineTool } from '../../tools/defineTool.js';
3
3
  import { parseConnectorInstanceId } from '../../utils/id.js';
4
+ import { connectorToolError } from './result.js';
4
5
  const connectorExecuteInputSchema = z.object({
5
6
  instance_id: z.string().describe('The connector instance ID to execute against'),
6
7
  method: z.string().describe('The connector method to invoke (e.g. "request", "send")'),
@@ -17,7 +18,7 @@ export function createConnectorExecuteTool(config) {
17
18
  readOnly: false,
18
19
  destructive: false,
19
20
  concurrencySafe: true,
20
- async execute(input) {
21
+ async execute(input, context) {
21
22
  const instanceId = parseConnectorInstanceId(String(input.instance_id));
22
23
  const instance = config.manager.getInstance(instanceId);
23
24
  if (!instance) {
@@ -38,12 +39,14 @@ export function createConnectorExecuteTool(config) {
38
39
  instanceId,
39
40
  method: input.method,
40
41
  input: input.input,
42
+ signal: context.abortSignal,
41
43
  });
42
44
  if (!result.success) {
43
45
  return {
44
46
  success: false,
45
47
  output: '',
46
- error: result.error ?? 'Connector execution failed',
48
+ error: connectorToolError(result),
49
+ data: { output: result.output, metadata: result.metadata },
47
50
  };
48
51
  }
49
52
  const outputStr = typeof result.output === 'string' ? result.output : JSON.stringify(result.output, null, 2);
@@ -1 +1 @@
1
- {"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../../src/connector/tools/definitions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../../src/connector/tools/definitions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { ConnectorExecuteResult } from '../../types/connector/index.js';
2
+ /** Keep remote side-effect uncertainty in the text the model actually sees. */
3
+ export declare function connectorToolError(result: ConnectorExecuteResult): string;
4
+ //# sourceMappingURL=result.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../../../src/connector/tools/result.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AAE5E,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,sBAAsB,GAAG,MAAM,CAiBzE"}
@@ -0,0 +1,20 @@
1
+ /** Keep remote side-effect uncertainty in the text the model actually sees. */
2
+ export function connectorToolError(result) {
3
+ const base = result.error ?? 'Connector execution failed';
4
+ const normalized = base.toLowerCase();
5
+ const outcome = result.metadata?.remoteOutcome;
6
+ const retrySafety = result.metadata?.retrySafety;
7
+ if (outcome === 'not_started' && !normalized.includes('no remote request was started')) {
8
+ return `${base} No remote request was started; retry is safe.`;
9
+ }
10
+ if (outcome === 'unknown' && !normalized.includes('remote outcome is unknown')) {
11
+ return retrySafety === 'safe'
12
+ ? `${base} The remote outcome is unknown, but retry is safe for this operation.`
13
+ : `${base} The remote outcome is unknown; do not automatically retry.`;
14
+ }
15
+ if (outcome === 'response_received' && !normalized.includes('response')) {
16
+ return `${base} A remote response was received; use its status before deciding whether to retry.`;
17
+ }
18
+ return base;
19
+ }
20
+ //# sourceMappingURL=result.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result.js","sourceRoot":"","sources":["../../../src/connector/tools/result.ts"],"names":[],"mappings":"AAEA,+EAA+E;AAC/E,MAAM,UAAU,kBAAkB,CAAC,MAA8B;IAChE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,IAAI,4BAA4B,CAAA;IACzD,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;IACrC,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAA;IAC9C,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAA;IAChD,IAAI,OAAO,KAAK,aAAa,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,+BAA+B,CAAC,EAAE,CAAC;QACxF,OAAO,GAAG,IAAI,gDAAgD,CAAA;IAC/D,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,2BAA2B,CAAC,EAAE,CAAC;QAChF,OAAO,WAAW,KAAK,MAAM;YAC5B,CAAC,CAAC,GAAG,IAAI,uEAAuE;YAChF,CAAC,CAAC,GAAG,IAAI,6DAA6D,CAAA;IACxE,CAAC;IACD,IAAI,OAAO,KAAK,mBAAmB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACzE,OAAO,GAAG,IAAI,mFAAmF,CAAA;IAClG,CAAC;IACD,OAAO,IAAI,CAAA;AACZ,CAAC"}
@@ -29,7 +29,7 @@ export interface GuardedFetchConfig {
29
29
  * a host uses to pin resolution — see `assertAllowed` for the rebinding
30
30
  * gap this cannot close on its own.
31
31
  */
32
- readonly resolve?: (hostname: string) => Promise<readonly string[]>;
32
+ readonly resolve?: (hostname: string, signal?: AbortSignal) => Promise<readonly string[]>;
33
33
  }
34
34
  /**
35
35
  * Is this address inside the host's own network?
@@ -43,8 +43,10 @@ export interface GuardedFetchConfig {
43
43
  export declare function isPrivateAddress(address: string): boolean;
44
44
  export declare class GuardedFetchProvider implements WebFetchProvider {
45
45
  private readonly config;
46
+ private readonly timeoutMs;
47
+ private readonly maxBytes;
48
+ private readonly maxRedirects;
46
49
  constructor(config?: GuardedFetchConfig);
47
- private get maxRedirects();
48
50
  /**
49
51
  * Refuse a URL before anything is sent.
50
52
  *
@@ -1 +1 @@
1
- {"version":3,"file":"guarded-fetch.d.ts","sourceRoot":"","sources":["../../../src/connector/web/guarded-fetch.ts"],"names":[],"mappings":"AAGA,OAAO,EACN,KAAK,gBAAgB,EAErB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,MAAM,YAAY,CAAA;AAoCnB,MAAM,WAAW,kBAAkB;IAClC,0EAA0E;IAC1E,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAA;IACxC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B;;;;;;OAMG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACzC;;;;;;OAMG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,CAAA;IACxC;;;;;;;OAOG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAAA;CACnE;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CA0BzD;AAED,qBAAa,oBAAqB,YAAW,gBAAgB;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,GAAE,kBAAuB;IAE5D,OAAO,KAAK,YAAY,GAEvB;IAED;;;;;;;;OAQG;YACW,aAAa;IA+ErB,KAAK,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;CA8E9D"}
1
+ {"version":3,"file":"guarded-fetch.d.ts","sourceRoot":"","sources":["../../../src/connector/web/guarded-fetch.ts"],"names":[],"mappings":"AAUA,OAAO,EACN,KAAK,gBAAgB,EAErB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,MAAM,YAAY,CAAA;AAkCnB,MAAM,WAAW,kBAAkB;IAClC,0EAA0E;IAC1E,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAA;IACxC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B;;;;;;OAMG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACzC;;;;;;OAMG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,CAAA;IACxC;;;;;;;OAOG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAAA;CACzF;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAwCzD;AAED,qBAAa,oBAAqB,YAAW,gBAAgB;IAKhD,OAAO,CAAC,QAAQ,CAAC,MAAM;IAJnC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAQ;gBAER,MAAM,GAAE,kBAAuB;IAkB5D;;;;;;;;OAQG;YACW,aAAa;IAwFrB,KAAK,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;CAsF9D"}
@@ -1,5 +1,6 @@
1
1
  import { lookup } from 'node:dns/promises';
2
2
  import { isIP } from 'node:net';
3
+ import { ConnectorHttpOperation, DEFAULT_CONNECTOR_MAX_RESPONSE_BYTES, DEFAULT_CONNECTOR_REQUEST_TIMEOUT_MS, validateConnectorMaxResponseBytes, validateConnectorTimeoutMs, } from '../http-operation.js';
3
4
  import { WebFetchRefusedError, } from './types.js';
4
5
  /**
5
6
  * Fetching a URL a model chose, without handing it the inside of the host.
@@ -19,8 +20,6 @@ import { WebFetchRefusedError, } from './types.js';
19
20
  /** Every scheme this will follow. Everything else is refused by name. */
20
21
  const ALLOWED_SCHEMES = new Set(['http:', 'https:']);
21
22
  const DEFAULT_MAX_REDIRECTS = 5;
22
- const DEFAULT_MAX_BYTES = 2 * 1024 * 1024;
23
- const DEFAULT_TIMEOUT_MS = 30_000;
24
23
  /**
25
24
  * Headers this never forwards, whatever the caller asked for.
26
25
  *
@@ -63,28 +62,49 @@ export function isPrivateAddress(address) {
63
62
  }
64
63
  if (kind === 6) {
65
64
  const lower = address.toLowerCase().replace(/^\[|\]$/g, '');
66
- if (lower === '::1' || lower === '::')
65
+ // `net.isIP` accepts scoped link-local values such as `fe80::1%lo0`,
66
+ // while the URL parser intentionally does not. The zone names an
67
+ // interface, not an address bit, so remove it before canonicalising.
68
+ const zoneAt = lower.indexOf('%');
69
+ const unscoped = zoneAt === -1 ? lower : lower.slice(0, zoneAt);
70
+ // Canonicalise before testing mapped addresses. `new URL()` turns the
71
+ // dotted spelling `::ffff:127.0.0.1` into `::ffff:7f00:1`; checking only
72
+ // a dotted suffix would therefore accept the exact value this provider
73
+ // receives from a model-authored URL.
74
+ const canonical = new URL(`http://[${unscoped}]/`).hostname.slice(1, -1);
75
+ if (canonical === '::1' || canonical === '::')
67
76
  return true;
68
- if (lower.startsWith('fe80'))
69
- return true; // link-local
70
- if (/^f[cd]/.test(lower))
77
+ const mapped = canonical.match(/^::ffff:([0-9a-f]{1,4}):([0-9a-f]{1,4})$/);
78
+ if (mapped?.[1] && mapped[2]) {
79
+ const high = Number.parseInt(mapped[1], 16);
80
+ const low = Number.parseInt(mapped[2], 16);
81
+ return isPrivateAddress(`${high >>> 8}.${high & 0xff}.${low >>> 8}.${low & 0xff}`);
82
+ }
83
+ const firstHextet = Number.parseInt(canonical.split(':', 1)[0] ?? '0', 16);
84
+ if ((firstHextet & 0xffc0) === 0xfe80)
85
+ return true; // link-local fe80::/10
86
+ if ((firstHextet & 0xfe00) === 0xfc00)
71
87
  return true; // unique-local fc00::/7
72
- // An IPv4-mapped address (::ffff:127.0.0.1) is an IPv4 address
73
- // wearing an IPv6 spelling, and refusing it needs the IPv4 rules.
74
- const mapped = lower.match(/^::ffff:(\d+\.\d+\.\d+\.\d+)$/);
75
- if (mapped?.[1])
76
- return isPrivateAddress(mapped[1]);
88
+ if ((firstHextet & 0xff00) === 0xff00)
89
+ return true; // multicast ff00::/8
77
90
  return false;
78
91
  }
79
92
  return false;
80
93
  }
81
94
  export class GuardedFetchProvider {
82
95
  config;
96
+ timeoutMs;
97
+ maxBytes;
98
+ maxRedirects;
83
99
  constructor(config = {}) {
84
100
  this.config = config;
85
- }
86
- get maxRedirects() {
87
- return this.config.maxRedirects ?? DEFAULT_MAX_REDIRECTS;
101
+ this.timeoutMs = validateConnectorTimeoutMs(config.timeoutMs ?? DEFAULT_CONNECTOR_REQUEST_TIMEOUT_MS, 'GuardedFetchProvider timeoutMs');
102
+ this.maxBytes = validateConnectorMaxResponseBytes(config.maxBytes ?? DEFAULT_CONNECTOR_MAX_RESPONSE_BYTES, 'GuardedFetchProvider maxBytes');
103
+ const maxRedirects = config.maxRedirects ?? DEFAULT_MAX_REDIRECTS;
104
+ if (!Number.isSafeInteger(maxRedirects) || maxRedirects < 0) {
105
+ throw new Error(`GuardedFetchProvider maxRedirects must be a non-negative safe integer; received ${String(maxRedirects)}`);
106
+ }
107
+ this.maxRedirects = maxRedirects;
88
108
  }
89
109
  /**
90
110
  * Refuse a URL before anything is sent.
@@ -95,7 +115,8 @@ export class GuardedFetchProvider {
95
115
  * `302 -> http://169.254.169.254/`, and a fetch that validated only what
96
116
  * the caller typed follows it happily.
97
117
  */
98
- async assertAllowed(rawUrl) {
118
+ async assertAllowed(rawUrl, operation) {
119
+ operation.throwIfStopped();
99
120
  let url;
100
121
  try {
101
122
  url = new URL(rawUrl);
@@ -119,8 +140,10 @@ export class GuardedFetchProvider {
119
140
  reason: 'blocked-host',
120
141
  });
121
142
  }
122
- if (this.config.allowPrivateAddresses === true)
143
+ if (this.config.allowPrivateAddresses === true) {
144
+ operation.throwIfStopped();
123
145
  return url;
146
+ }
124
147
  // RESOLVED, not just parsed. A hostname check alone is bypassed by any
125
148
  // name whose A record points inside — which is a thing anyone can set
126
149
  // up on a domain they own, and costs nothing to try.
@@ -138,9 +161,13 @@ export class GuardedFetchProvider {
138
161
  }
139
162
  else {
140
163
  try {
141
- addresses = await resolve(hostname);
164
+ addresses = await operation.run(() => resolve(hostname, operation.signal));
142
165
  }
143
166
  catch (err) {
167
+ // A caller cancellation or this operation's deadline is not a DNS
168
+ // policy refusal. Preserve the exact first cause rather than wrapping
169
+ // it as though the hostname itself were unsafe.
170
+ operation.throwIfStopped();
144
171
  // REFUSE. `.catch(() => [])` was the first version of this line
145
172
  // and it is fail-open: an empty list satisfies the loop below,
146
173
  // so a name nobody could resolve was treated as a name with no
@@ -160,61 +187,65 @@ export class GuardedFetchProvider {
160
187
  throw new WebFetchRefusedError(`Refused "${hostname}" — it resolves to ${address}, inside this host's own network.`, { url: rawUrl, reason: 'private-address' });
161
188
  }
162
189
  }
190
+ operation.throwIfStopped();
163
191
  return url;
164
192
  }
165
193
  async fetch(request) {
166
194
  const doFetch = this.config.fetch ?? globalThis.fetch;
167
- const timeoutMs = this.config.timeoutMs ?? DEFAULT_TIMEOUT_MS;
168
- const maxBytes = this.config.maxBytes ?? DEFAULT_MAX_BYTES;
169
- const headers = {};
170
- for (const [key, value] of Object.entries(request.headers ?? {})) {
171
- if (!STRIPPED_HEADERS.has(key.toLowerCase()))
172
- headers[key] = value;
173
- }
174
- const timer = new AbortController();
175
- const deadline = setTimeout(() => timer.abort(), timeoutMs);
176
- // Both: the caller's cancel and our own deadline. Honouring only one
177
- // leaves the other unable to stop a fetch that has stopped being
178
- // wanted.
179
- request.signal?.addEventListener('abort', () => timer.abort(), { once: true });
195
+ const operation = new ConnectorHttpOperation(request.signal, this.timeoutMs, `Web fetch "${request.url}"`);
180
196
  try {
197
+ const headers = {};
198
+ for (const [key, value] of Object.entries(request.headers ?? {})) {
199
+ if (!STRIPPED_HEADERS.has(key.toLowerCase()))
200
+ headers[key] = value;
201
+ }
181
202
  const redirects = [];
182
- let current = await this.assertAllowed(request.url);
183
- for (let hop = 0;; hop++) {
184
- if (hop > this.maxRedirects) {
185
- throw new WebFetchRefusedError(`Refused after ${this.maxRedirects} redirects from "${request.url}".`, { url: request.url, reason: 'redirect-limit' });
186
- }
203
+ let redirectsFollowed = 0;
204
+ let current = await this.assertAllowed(request.url, operation);
205
+ for (;;) {
206
+ operation.throwIfStopped();
187
207
  redirects.push(current.toString());
188
208
  // `manual`, so every hop comes back here to be checked. Letting
189
209
  // the platform follow redirects is exactly the hole this class
190
210
  // exists to close: it would land on the final URL having never
191
211
  // asked whether that URL was allowed.
192
- const response = await doFetch(current, {
212
+ const response = await operation.run(() => doFetch(current, {
193
213
  headers,
194
214
  redirect: 'manual',
195
- signal: timer.signal,
196
- });
215
+ signal: operation.signal,
216
+ }));
197
217
  const location = response.headers.get('location');
198
218
  if (response.status >= 300 && response.status < 400 && location) {
219
+ // The budget is about redirects FOLLOWED. Refuse before parsing or
220
+ // resolving the forbidden next target, so a spent budget cannot be
221
+ // turned into one last DNS query.
222
+ if (redirectsFollowed >= this.maxRedirects) {
223
+ cancelResponseBody(response, new Error('redirect limit reached'));
224
+ operation.throwIfStopped();
225
+ throw new WebFetchRefusedError(`Refused after ${this.maxRedirects} redirects from "${request.url}".`, { url: request.url, reason: 'redirect-limit' });
226
+ }
199
227
  // Resolved against the current URL, because a `Location` may
200
228
  // be relative — and a relative one that is not resolved would
201
229
  // be checked as a different URL than the one followed.
202
230
  const next = new URL(location, current);
231
+ cancelResponseBody(response, new Error('following redirect'));
232
+ operation.throwIfStopped();
203
233
  try {
204
- current = await this.assertAllowed(next.toString());
234
+ current = await this.assertAllowed(next.toString(), operation);
205
235
  }
206
236
  catch (err) {
237
+ operation.throwIfStopped();
207
238
  if (err instanceof WebFetchRefusedError) {
208
239
  throw new WebFetchRefusedError(`A redirect from "${current.toString()}" pointed at "${next.toString()}", which was refused: ${err.message}`, { url: next.toString(), reason: 'redirect-target' });
209
240
  }
210
241
  throw err;
211
242
  }
243
+ redirectsFollowed++;
212
244
  continue;
213
245
  }
214
- const text = await response.text();
215
- const truncated = Buffer.byteLength(text) > maxBytes;
216
- const body = truncated ? Buffer.from(text).subarray(0, maxBytes).toString('utf8') : text;
246
+ const { body, truncated } = await readCappedResponseText(response, operation, this.maxBytes);
217
247
  const contentType = response.headers.get('content-type') ?? undefined;
248
+ operation.throwIfStopped();
218
249
  return {
219
250
  url: current.toString(),
220
251
  status: response.status,
@@ -226,8 +257,91 @@ export class GuardedFetchProvider {
226
257
  }
227
258
  }
228
259
  finally {
229
- clearTimeout(deadline);
260
+ operation.close();
261
+ }
262
+ }
263
+ }
264
+ async function readCappedResponseText(response, operation, maxBytes) {
265
+ // Native fetch exposes a byte stream whenever bytes exist. This fallback
266
+ // keeps Response-shaped host doubles compatible while still racing their
267
+ // text promise and applying the same byte semantics after it settles.
268
+ if (!response.body) {
269
+ const text = await operation.run(() => response.text());
270
+ const bytes = new TextEncoder().encode(text);
271
+ if (bytes.byteLength <= maxBytes) {
272
+ operation.throwIfStopped();
273
+ return { body: text, truncated: false };
230
274
  }
275
+ operation.throwIfStopped();
276
+ return {
277
+ body: decodeUtf8Prefix(bytes.slice(0, maxBytes), true),
278
+ truncated: true,
279
+ };
280
+ }
281
+ const reader = response.body.getReader();
282
+ const chunks = [];
283
+ let totalBytes = 0;
284
+ let truncated = false;
285
+ try {
286
+ for (;;) {
287
+ const { done, value } = await operation.run(() => reader.read());
288
+ if (done)
289
+ break;
290
+ if (value.byteLength === 0)
291
+ continue;
292
+ const remaining = maxBytes - totalBytes;
293
+ if (value.byteLength > remaining) {
294
+ // Copy the retained prefix. `subarray` would keep an arbitrarily
295
+ // large hostile chunk's backing buffer alive through the result.
296
+ if (remaining > 0)
297
+ chunks.push(value.slice(0, remaining));
298
+ totalBytes += remaining;
299
+ truncated = true;
300
+ cancelReader(reader, new Error(`web response exceeded ${maxBytes} bytes`));
301
+ operation.throwIfStopped();
302
+ break;
303
+ }
304
+ chunks.push(value);
305
+ totalBytes += value.byteLength;
306
+ }
307
+ }
308
+ catch (error) {
309
+ cancelReader(reader, error);
310
+ throw error;
311
+ }
312
+ finally {
313
+ reader.releaseLock();
314
+ }
315
+ operation.throwIfStopped();
316
+ const bytes = new Uint8Array(totalBytes);
317
+ let offset = 0;
318
+ for (const chunk of chunks) {
319
+ bytes.set(chunk, offset);
320
+ offset += chunk.byteLength;
321
+ }
322
+ return { body: decodeUtf8Prefix(bytes, truncated), truncated };
323
+ }
324
+ function decodeUtf8Prefix(bytes, truncated) {
325
+ const decoder = new TextDecoder();
326
+ // Streaming decode deliberately omits the final flush for a truncated
327
+ // prefix. That drops an incomplete trailing code point instead of showing
328
+ // the model a synthetic replacement character that was never in the page.
329
+ return decoder.decode(bytes, { stream: truncated });
330
+ }
331
+ function cancelReader(reader, reason) {
332
+ try {
333
+ void Promise.resolve(reader.cancel(reason)).catch(() => undefined);
334
+ }
335
+ catch {
336
+ // Cleanup must not replace the operation's real outcome.
337
+ }
338
+ }
339
+ function cancelResponseBody(response, reason) {
340
+ try {
341
+ void Promise.resolve(response.body?.cancel(reason)).catch(() => undefined);
342
+ }
343
+ catch {
344
+ // Cleanup must not turn a redirect refusal into a transport failure.
231
345
  }
232
346
  }
233
347
  //# sourceMappingURL=guarded-fetch.js.map