agentfootprint 10.4.0 → 10.5.1

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 (521) hide show
  1. package/CAPABILITIES.md +6 -1
  2. package/ai-instructions/clinerules +22 -11
  3. package/ai-instructions/copilot-instructions.md +22 -11
  4. package/ai-instructions/cursor/agentfootprint.md +22 -11
  5. package/ai-instructions/kiro/agentfootprint.md +22 -11
  6. package/ai-instructions/windsurfrules +22 -11
  7. package/dist/adapters/llm/AnthropicProvider.js +26 -8
  8. package/dist/adapters/llm/AnthropicProvider.js.map +1 -1
  9. package/dist/adapters/llm/BedrockProvider.js +23 -7
  10. package/dist/adapters/llm/BedrockProvider.js.map +1 -1
  11. package/dist/adapters/llm/BrowserAnthropicProvider.js +58 -49
  12. package/dist/adapters/llm/BrowserAnthropicProvider.js.map +1 -1
  13. package/dist/adapters/llm/BrowserOpenAIProvider.js +51 -42
  14. package/dist/adapters/llm/BrowserOpenAIProvider.js.map +1 -1
  15. package/dist/adapters/llm/FoundryLocalProvider.js +177 -212
  16. package/dist/adapters/llm/FoundryLocalProvider.js.map +1 -1
  17. package/dist/adapters/llm/GeminiProvider.js +23 -9
  18. package/dist/adapters/llm/GeminiProvider.js.map +1 -1
  19. package/dist/adapters/llm/InvokeModelGatewayProvider.js +49 -10
  20. package/dist/adapters/llm/InvokeModelGatewayProvider.js.map +1 -1
  21. package/dist/adapters/llm/MockProvider.js +11 -3
  22. package/dist/adapters/llm/MockProvider.js.map +1 -1
  23. package/dist/adapters/llm/OllamaProvider.js +134 -167
  24. package/dist/adapters/llm/OllamaProvider.js.map +1 -1
  25. package/dist/adapters/llm/OpenAIProvider.js +36 -9
  26. package/dist/adapters/llm/OpenAIProvider.js.map +1 -1
  27. package/dist/adapters/mcp/agentcoreRuntime/invoke.js +15 -8
  28. package/dist/adapters/mcp/agentcoreRuntime/invoke.js.map +1 -1
  29. package/dist/adapters/mcp/agentcoreRuntime/transport.js +21 -3
  30. package/dist/adapters/mcp/agentcoreRuntime/transport.js.map +1 -1
  31. package/dist/ag-ui/adapter.js +69 -14
  32. package/dist/ag-ui/adapter.js.map +1 -1
  33. package/dist/ag-ui/framing.js +3 -1
  34. package/dist/ag-ui/framing.js.map +1 -1
  35. package/dist/ag-ui/index.js +4 -2
  36. package/dist/ag-ui/index.js.map +1 -1
  37. package/dist/ag-ui/request.js +66 -6
  38. package/dist/ag-ui/request.js.map +1 -1
  39. package/dist/answer-validation/index.js +8 -1
  40. package/dist/answer-validation/index.js.map +1 -1
  41. package/dist/answer-validation/toolLedger.js +130 -0
  42. package/dist/answer-validation/toolLedger.js.map +1 -0
  43. package/dist/answer-validation/types.js.map +1 -1
  44. package/dist/answer-validation/validate.js +25 -3
  45. package/dist/answer-validation/validate.js.map +1 -1
  46. package/dist/classify/typesafe.js +31 -23
  47. package/dist/classify/typesafe.js.map +1 -1
  48. package/dist/core/Agent.js +69 -16
  49. package/dist/core/Agent.js.map +1 -1
  50. package/dist/core/LLMCall.js +16 -6
  51. package/dist/core/LLMCall.js.map +1 -1
  52. package/dist/core/RunnerBase.js +83 -11
  53. package/dist/core/RunnerBase.js.map +1 -1
  54. package/dist/core/agent/buildAgentChart.js +16 -8
  55. package/dist/core/agent/buildAgentChart.js.map +1 -1
  56. package/dist/core/agent/buildAgentMessageApiChart.js +22 -2
  57. package/dist/core/agent/buildAgentMessageApiChart.js.map +1 -1
  58. package/dist/core/agent/buildDynamicAgentChart.js +22 -7
  59. package/dist/core/agent/buildDynamicAgentChart.js.map +1 -1
  60. package/dist/core/agent/buildMessageApiChart.js +22 -2
  61. package/dist/core/agent/buildMessageApiChart.js.map +1 -1
  62. package/dist/core/agent/stages/answerValidation.js +22 -1
  63. package/dist/core/agent/stages/answerValidation.js.map +1 -1
  64. package/dist/core/agent/stages/callLLM.js +19 -3
  65. package/dist/core/agent/stages/callLLM.js.map +1 -1
  66. package/dist/core/agent/stages/routeTurn.js +14 -1
  67. package/dist/core/agent/stages/routeTurn.js.map +1 -1
  68. package/dist/core/agent/stages/seed.js +9 -0
  69. package/dist/core/agent/stages/seed.js.map +1 -1
  70. package/dist/core/agent/stages/toolCalls.js +59 -20
  71. package/dist/core/agent/stages/toolCalls.js.map +1 -1
  72. package/dist/core/agent/window/strategies/summarizeOldest.js +4 -0
  73. package/dist/core/agent/window/strategies/summarizeOldest.js.map +1 -1
  74. package/dist/core/agent/window/summarize.js +6 -3
  75. package/dist/core/agent/window/summarize.js.map +1 -1
  76. package/dist/core/memberRun.js +58 -9
  77. package/dist/core/memberRun.js.map +1 -1
  78. package/dist/core/requestOfRun.js +28 -0
  79. package/dist/core/requestOfRun.js.map +1 -0
  80. package/dist/core/slots/buildToolsSlot.js +11 -25
  81. package/dist/core/slots/buildToolsSlot.js.map +1 -1
  82. package/dist/core-flow/Conditional.js +17 -11
  83. package/dist/core-flow/Conditional.js.map +1 -1
  84. package/dist/core-flow/Graph.js +17 -11
  85. package/dist/core-flow/Graph.js.map +1 -1
  86. package/dist/core-flow/Loop.js +17 -11
  87. package/dist/core-flow/Loop.js.map +1 -1
  88. package/dist/core-flow/Parallel.js +25 -14
  89. package/dist/core-flow/Parallel.js.map +1 -1
  90. package/dist/core-flow/Sequence.js +17 -11
  91. package/dist/core-flow/Sequence.js.map +1 -1
  92. package/dist/core-flow/Workflow.js +17 -11
  93. package/dist/core-flow/Workflow.js.map +1 -1
  94. package/dist/doors/security.js +2 -1
  95. package/dist/doors/security.js.map +1 -1
  96. package/dist/esm/adapters/llm/AnthropicProvider.d.ts +9 -2
  97. package/dist/esm/adapters/llm/AnthropicProvider.js +26 -8
  98. package/dist/esm/adapters/llm/AnthropicProvider.js.map +1 -1
  99. package/dist/esm/adapters/llm/BedrockProvider.d.ts +6 -1
  100. package/dist/esm/adapters/llm/BedrockProvider.js +23 -7
  101. package/dist/esm/adapters/llm/BedrockProvider.js.map +1 -1
  102. package/dist/esm/adapters/llm/BrowserAnthropicProvider.js +58 -49
  103. package/dist/esm/adapters/llm/BrowserAnthropicProvider.js.map +1 -1
  104. package/dist/esm/adapters/llm/BrowserOpenAIProvider.js +51 -42
  105. package/dist/esm/adapters/llm/BrowserOpenAIProvider.js.map +1 -1
  106. package/dist/esm/adapters/llm/FoundryLocalProvider.js +174 -209
  107. package/dist/esm/adapters/llm/FoundryLocalProvider.js.map +1 -1
  108. package/dist/esm/adapters/llm/GeminiProvider.js +23 -9
  109. package/dist/esm/adapters/llm/GeminiProvider.js.map +1 -1
  110. package/dist/esm/adapters/llm/InvokeModelGatewayProvider.d.ts +3 -2
  111. package/dist/esm/adapters/llm/InvokeModelGatewayProvider.js +49 -10
  112. package/dist/esm/adapters/llm/InvokeModelGatewayProvider.js.map +1 -1
  113. package/dist/esm/adapters/llm/MockProvider.js +11 -3
  114. package/dist/esm/adapters/llm/MockProvider.js.map +1 -1
  115. package/dist/esm/adapters/llm/OllamaProvider.js +131 -164
  116. package/dist/esm/adapters/llm/OllamaProvider.js.map +1 -1
  117. package/dist/esm/adapters/llm/OpenAIProvider.d.ts +6 -1
  118. package/dist/esm/adapters/llm/OpenAIProvider.js +36 -9
  119. package/dist/esm/adapters/llm/OpenAIProvider.js.map +1 -1
  120. package/dist/esm/adapters/mcp/agentcoreRuntime/invoke.d.ts +1 -1
  121. package/dist/esm/adapters/mcp/agentcoreRuntime/invoke.js +15 -8
  122. package/dist/esm/adapters/mcp/agentcoreRuntime/invoke.js.map +1 -1
  123. package/dist/esm/adapters/mcp/agentcoreRuntime/transport.d.ts +26 -3
  124. package/dist/esm/adapters/mcp/agentcoreRuntime/transport.js +21 -3
  125. package/dist/esm/adapters/mcp/agentcoreRuntime/transport.js.map +1 -1
  126. package/dist/esm/ag-ui/adapter.d.ts +61 -11
  127. package/dist/esm/ag-ui/adapter.js +70 -15
  128. package/dist/esm/ag-ui/adapter.js.map +1 -1
  129. package/dist/esm/ag-ui/framing.d.ts +2 -1
  130. package/dist/esm/ag-ui/framing.js +3 -1
  131. package/dist/esm/ag-ui/framing.js.map +1 -1
  132. package/dist/esm/ag-ui/index.d.ts +6 -4
  133. package/dist/esm/ag-ui/index.js +6 -4
  134. package/dist/esm/ag-ui/index.js.map +1 -1
  135. package/dist/esm/ag-ui/request.d.ts +86 -7
  136. package/dist/esm/ag-ui/request.js +63 -5
  137. package/dist/esm/ag-ui/request.js.map +1 -1
  138. package/dist/esm/answer-validation/index.d.ts +2 -1
  139. package/dist/esm/answer-validation/index.js +1 -0
  140. package/dist/esm/answer-validation/index.js.map +1 -1
  141. package/dist/esm/answer-validation/toolLedger.d.ts +65 -0
  142. package/dist/esm/answer-validation/toolLedger.js +121 -0
  143. package/dist/esm/answer-validation/toolLedger.js.map +1 -0
  144. package/dist/esm/answer-validation/types.d.ts +48 -0
  145. package/dist/esm/answer-validation/types.js.map +1 -1
  146. package/dist/esm/answer-validation/validate.d.ts +2 -2
  147. package/dist/esm/answer-validation/validate.js +25 -3
  148. package/dist/esm/answer-validation/validate.js.map +1 -1
  149. package/dist/esm/classify/typesafe.js +30 -22
  150. package/dist/esm/classify/typesafe.js.map +1 -1
  151. package/dist/esm/core/Agent.d.ts +9 -1
  152. package/dist/esm/core/Agent.js +71 -18
  153. package/dist/esm/core/Agent.js.map +1 -1
  154. package/dist/esm/core/LLMCall.d.ts +2 -1
  155. package/dist/esm/core/LLMCall.js +17 -7
  156. package/dist/esm/core/LLMCall.js.map +1 -1
  157. package/dist/esm/core/RunnerBase.d.ts +39 -8
  158. package/dist/esm/core/RunnerBase.js +80 -9
  159. package/dist/esm/core/RunnerBase.js.map +1 -1
  160. package/dist/esm/core/agent/buildAgentChart.js +16 -8
  161. package/dist/esm/core/agent/buildAgentChart.js.map +1 -1
  162. package/dist/esm/core/agent/buildAgentMessageApiChart.d.ts +16 -0
  163. package/dist/esm/core/agent/buildAgentMessageApiChart.js +22 -2
  164. package/dist/esm/core/agent/buildAgentMessageApiChart.js.map +1 -1
  165. package/dist/esm/core/agent/buildDynamicAgentChart.js +22 -7
  166. package/dist/esm/core/agent/buildDynamicAgentChart.js.map +1 -1
  167. package/dist/esm/core/agent/buildMessageApiChart.d.ts +16 -0
  168. package/dist/esm/core/agent/buildMessageApiChart.js +22 -2
  169. package/dist/esm/core/agent/buildMessageApiChart.js.map +1 -1
  170. package/dist/esm/core/agent/stages/answerValidation.js +22 -1
  171. package/dist/esm/core/agent/stages/answerValidation.js.map +1 -1
  172. package/dist/esm/core/agent/stages/callLLM.js +19 -3
  173. package/dist/esm/core/agent/stages/callLLM.js.map +1 -1
  174. package/dist/esm/core/agent/stages/routeTurn.js +14 -1
  175. package/dist/esm/core/agent/stages/routeTurn.js.map +1 -1
  176. package/dist/esm/core/agent/stages/seed.d.ts +7 -0
  177. package/dist/esm/core/agent/stages/seed.js +9 -0
  178. package/dist/esm/core/agent/stages/seed.js.map +1 -1
  179. package/dist/esm/core/agent/stages/toolCalls.d.ts +21 -0
  180. package/dist/esm/core/agent/stages/toolCalls.js +59 -20
  181. package/dist/esm/core/agent/stages/toolCalls.js.map +1 -1
  182. package/dist/esm/core/agent/types.d.ts +10 -0
  183. package/dist/esm/core/agent/window/strategies/summarizeOldest.js +4 -0
  184. package/dist/esm/core/agent/window/strategies/summarizeOldest.js.map +1 -1
  185. package/dist/esm/core/agent/window/summarize.js +6 -3
  186. package/dist/esm/core/agent/window/summarize.js.map +1 -1
  187. package/dist/esm/core/memberRun.d.ts +23 -2
  188. package/dist/esm/core/memberRun.js +54 -8
  189. package/dist/esm/core/memberRun.js.map +1 -1
  190. package/dist/esm/core/requestOfRun.d.ts +21 -0
  191. package/dist/esm/core/requestOfRun.js +24 -0
  192. package/dist/esm/core/requestOfRun.js.map +1 -0
  193. package/dist/esm/core/runner.d.ts +15 -3
  194. package/dist/esm/core/slots/buildToolsSlot.d.ts +0 -16
  195. package/dist/esm/core/slots/buildToolsSlot.js +11 -25
  196. package/dist/esm/core/slots/buildToolsSlot.js.map +1 -1
  197. package/dist/esm/core-flow/Conditional.d.ts +2 -1
  198. package/dist/esm/core-flow/Conditional.js +18 -12
  199. package/dist/esm/core-flow/Conditional.js.map +1 -1
  200. package/dist/esm/core-flow/Graph.d.ts +2 -1
  201. package/dist/esm/core-flow/Graph.js +18 -12
  202. package/dist/esm/core-flow/Graph.js.map +1 -1
  203. package/dist/esm/core-flow/Loop.d.ts +2 -1
  204. package/dist/esm/core-flow/Loop.js +18 -12
  205. package/dist/esm/core-flow/Loop.js.map +1 -1
  206. package/dist/esm/core-flow/Parallel.d.ts +2 -1
  207. package/dist/esm/core-flow/Parallel.js +26 -15
  208. package/dist/esm/core-flow/Parallel.js.map +1 -1
  209. package/dist/esm/core-flow/Sequence.d.ts +2 -1
  210. package/dist/esm/core-flow/Sequence.js +18 -12
  211. package/dist/esm/core-flow/Sequence.js.map +1 -1
  212. package/dist/esm/core-flow/Workflow.d.ts +2 -1
  213. package/dist/esm/core-flow/Workflow.js +18 -12
  214. package/dist/esm/core-flow/Workflow.js.map +1 -1
  215. package/dist/esm/doors/security.d.ts +2 -1
  216. package/dist/esm/doors/security.js +2 -1
  217. package/dist/esm/doors/security.js.map +1 -1
  218. package/dist/esm/events/payloads.d.ts +4 -2
  219. package/dist/esm/hosting/index.d.ts +1 -0
  220. package/dist/esm/hosting/index.js.map +1 -1
  221. package/dist/esm/hosting/protocolAdapter.d.ts +4 -1
  222. package/dist/esm/hosting/refusalStatus.js +4 -0
  223. package/dist/esm/hosting/refusalStatus.js.map +1 -1
  224. package/dist/esm/hosting/requestSealing.d.ts +65 -0
  225. package/dist/esm/hosting/requestSealing.js +79 -0
  226. package/dist/esm/hosting/requestSealing.js.map +1 -0
  227. package/dist/esm/hosting/standingAgent.js +23 -3
  228. package/dist/esm/hosting/standingAgent.js.map +1 -1
  229. package/dist/esm/hosting/stream.d.ts +23 -2
  230. package/dist/esm/hosting/stream.js +5 -1
  231. package/dist/esm/hosting/stream.js.map +1 -1
  232. package/dist/esm/hosting/streamHandler.d.ts +26 -7
  233. package/dist/esm/hosting/streamHandler.js +36 -12
  234. package/dist/esm/hosting/streamHandler.js.map +1 -1
  235. package/dist/esm/hosting/types.d.ts +29 -0
  236. package/dist/esm/hosting/types.js.map +1 -1
  237. package/dist/esm/identity/requestContext.d.ts +96 -0
  238. package/dist/esm/identity/requestContext.js +131 -0
  239. package/dist/esm/identity/requestContext.js.map +1 -0
  240. package/dist/esm/identity/requestCredentials.d.ts +99 -0
  241. package/dist/esm/identity/requestCredentials.js +157 -0
  242. package/dist/esm/identity/requestCredentials.js.map +1 -0
  243. package/dist/esm/identity/types.d.ts +11 -0
  244. package/dist/esm/identity/types.js.map +1 -1
  245. package/dist/esm/identity.d.ts +2 -0
  246. package/dist/esm/identity.js +5 -0
  247. package/dist/esm/identity.js.map +1 -1
  248. package/dist/esm/index.d.ts +3 -2
  249. package/dist/esm/index.js +5 -1
  250. package/dist/esm/index.js.map +1 -1
  251. package/dist/esm/injection-engine/buildInjectionEngineSubflow.d.ts +11 -0
  252. package/dist/esm/injection-engine/buildInjectionEngineSubflow.js +39 -5
  253. package/dist/esm/injection-engine/buildInjectionEngineSubflow.js.map +1 -1
  254. package/dist/esm/injection-engine/constrainedEnumPick.js +4 -2
  255. package/dist/esm/injection-engine/constrainedEnumPick.js.map +1 -1
  256. package/dist/esm/injection-engine/evaluator.d.ts +6 -0
  257. package/dist/esm/injection-engine/evaluator.js +19 -1
  258. package/dist/esm/injection-engine/evaluator.js.map +1 -1
  259. package/dist/esm/injection-engine/skillGraph.js +26 -8
  260. package/dist/esm/injection-engine/skillGraph.js.map +1 -1
  261. package/dist/esm/injection-engine/skillIntent.d.ts +4 -2
  262. package/dist/esm/injection-engine/skillIntent.js +3 -0
  263. package/dist/esm/injection-engine/skillIntent.js.map +1 -1
  264. package/dist/esm/injection-engine/types.d.ts +27 -1
  265. package/dist/esm/injection-engine/types.js +15 -0
  266. package/dist/esm/injection-engine/types.js.map +1 -1
  267. package/dist/esm/lib/abort.d.ts +157 -0
  268. package/dist/esm/lib/abort.js +358 -0
  269. package/dist/esm/lib/abort.js.map +1 -0
  270. package/dist/esm/maps/engagement/parkCard.d.ts +5 -1
  271. package/dist/esm/maps/engagement/parkCard.js +10 -3
  272. package/dist/esm/maps/engagement/parkCard.js.map +1 -1
  273. package/dist/esm/mcp/mcpClient.js +30 -2
  274. package/dist/esm/mcp/mcpClient.js.map +1 -1
  275. package/dist/esm/mcp/mcpServe.js +5 -1
  276. package/dist/esm/mcp/mcpServe.js.map +1 -1
  277. package/dist/esm/mcp/plainData.d.ts +44 -0
  278. package/dist/esm/mcp/plainData.js +204 -0
  279. package/dist/esm/mcp/plainData.js.map +1 -0
  280. package/dist/esm/mcp/sdkLoadFailure.d.ts +6 -7
  281. package/dist/esm/mcp/sdkLoadFailure.js +4 -4
  282. package/dist/esm/mcp/sdkLoadFailure.js.map +1 -1
  283. package/dist/esm/mcp/toolResult.js +8 -50
  284. package/dist/esm/mcp/toolResult.js.map +1 -1
  285. package/dist/esm/mcp/types.d.ts +10 -6
  286. package/dist/esm/memory/beats/llmExtractor.js +6 -3
  287. package/dist/esm/memory/beats/llmExtractor.js.map +1 -1
  288. package/dist/esm/memory/facts/llmFactExtractor.js +6 -3
  289. package/dist/esm/memory/facts/llmFactExtractor.js.map +1 -1
  290. package/dist/esm/memory/stages/summarize.js +16 -5
  291. package/dist/esm/memory/stages/summarize.js.map +1 -1
  292. package/dist/esm/patterns/LlmRouter.js +10 -5
  293. package/dist/esm/patterns/LlmRouter.js.map +1 -1
  294. package/dist/esm/redaction/conversation.js +3 -0
  295. package/dist/esm/redaction/conversation.js.map +1 -1
  296. package/dist/esm/redaction/knownStrings.js +1 -0
  297. package/dist/esm/redaction/knownStrings.js.map +1 -1
  298. package/dist/esm/reliability/buildReliabilityGateChart.js +7 -1
  299. package/dist/esm/reliability/buildReliabilityGateChart.js.map +1 -1
  300. package/dist/esm/resilience/withCircuitBreaker.js +5 -2
  301. package/dist/esm/resilience/withCircuitBreaker.js.map +1 -1
  302. package/dist/esm/resilience/withFallback.js +6 -0
  303. package/dist/esm/resilience/withFallback.js.map +1 -1
  304. package/dist/esm/resilience/withRetry.js +5 -0
  305. package/dist/esm/resilience/withRetry.js.map +1 -1
  306. package/dist/esm/time-travel/servedView.js +1 -1
  307. package/dist/esm/time-travel/servedView.js.map +1 -1
  308. package/dist/esm/tools/hostFilled.d.ts +110 -0
  309. package/dist/esm/tools/hostFilled.js +509 -0
  310. package/dist/esm/tools/hostFilled.js.map +1 -0
  311. package/dist/hosting/index.js.map +1 -1
  312. package/dist/hosting/refusalStatus.js +4 -0
  313. package/dist/hosting/refusalStatus.js.map +1 -1
  314. package/dist/hosting/requestSealing.js +83 -0
  315. package/dist/hosting/requestSealing.js.map +1 -0
  316. package/dist/hosting/standingAgent.js +23 -3
  317. package/dist/hosting/standingAgent.js.map +1 -1
  318. package/dist/hosting/stream.js +5 -1
  319. package/dist/hosting/stream.js.map +1 -1
  320. package/dist/hosting/streamHandler.js +36 -12
  321. package/dist/hosting/streamHandler.js.map +1 -1
  322. package/dist/hosting/types.js.map +1 -1
  323. package/dist/identity/requestContext.js +139 -0
  324. package/dist/identity/requestContext.js.map +1 -0
  325. package/dist/identity/requestCredentials.js +165 -0
  326. package/dist/identity/requestCredentials.js.map +1 -0
  327. package/dist/identity/types.js.map +1 -1
  328. package/dist/identity.js +13 -1
  329. package/dist/identity.js.map +1 -1
  330. package/dist/index.js +15 -4
  331. package/dist/index.js.map +1 -1
  332. package/dist/injection-engine/buildInjectionEngineSubflow.js +38 -4
  333. package/dist/injection-engine/buildInjectionEngineSubflow.js.map +1 -1
  334. package/dist/injection-engine/constrainedEnumPick.js +4 -2
  335. package/dist/injection-engine/constrainedEnumPick.js.map +1 -1
  336. package/dist/injection-engine/evaluator.js +18 -0
  337. package/dist/injection-engine/evaluator.js.map +1 -1
  338. package/dist/injection-engine/skillGraph.js +25 -7
  339. package/dist/injection-engine/skillGraph.js.map +1 -1
  340. package/dist/injection-engine/skillIntent.js +3 -0
  341. package/dist/injection-engine/skillIntent.js.map +1 -1
  342. package/dist/injection-engine/types.js +17 -1
  343. package/dist/injection-engine/types.js.map +1 -1
  344. package/dist/lib/abort.js +372 -0
  345. package/dist/lib/abort.js.map +1 -0
  346. package/dist/maps/engagement/parkCard.js +10 -3
  347. package/dist/maps/engagement/parkCard.js.map +1 -1
  348. package/dist/mcp/mcpClient.js +30 -2
  349. package/dist/mcp/mcpClient.js.map +1 -1
  350. package/dist/mcp/mcpServe.js +5 -1
  351. package/dist/mcp/mcpServe.js.map +1 -1
  352. package/dist/mcp/plainData.js +208 -0
  353. package/dist/mcp/plainData.js.map +1 -0
  354. package/dist/mcp/sdkLoadFailure.js +4 -4
  355. package/dist/mcp/sdkLoadFailure.js.map +1 -1
  356. package/dist/mcp/toolResult.js +8 -50
  357. package/dist/mcp/toolResult.js.map +1 -1
  358. package/dist/memory/beats/llmExtractor.js +6 -3
  359. package/dist/memory/beats/llmExtractor.js.map +1 -1
  360. package/dist/memory/facts/llmFactExtractor.js +6 -3
  361. package/dist/memory/facts/llmFactExtractor.js.map +1 -1
  362. package/dist/memory/stages/summarize.js +16 -5
  363. package/dist/memory/stages/summarize.js.map +1 -1
  364. package/dist/patterns/LlmRouter.js +9 -4
  365. package/dist/patterns/LlmRouter.js.map +1 -1
  366. package/dist/redaction/conversation.js +3 -0
  367. package/dist/redaction/conversation.js.map +1 -1
  368. package/dist/redaction/knownStrings.js +1 -0
  369. package/dist/redaction/knownStrings.js.map +1 -1
  370. package/dist/reliability/buildReliabilityGateChart.js +7 -1
  371. package/dist/reliability/buildReliabilityGateChart.js.map +1 -1
  372. package/dist/resilience/withCircuitBreaker.js +5 -2
  373. package/dist/resilience/withCircuitBreaker.js.map +1 -1
  374. package/dist/resilience/withFallback.js +6 -0
  375. package/dist/resilience/withFallback.js.map +1 -1
  376. package/dist/resilience/withRetry.js +5 -0
  377. package/dist/resilience/withRetry.js.map +1 -1
  378. package/dist/time-travel/servedView.js +1 -1
  379. package/dist/time-travel/servedView.js.map +1 -1
  380. package/dist/tools/hostFilled.js +517 -0
  381. package/dist/tools/hostFilled.js.map +1 -0
  382. package/dist/types/adapters/llm/AnthropicProvider.d.ts +9 -2
  383. package/dist/types/adapters/llm/AnthropicProvider.d.ts.map +1 -1
  384. package/dist/types/adapters/llm/BedrockProvider.d.ts +6 -1
  385. package/dist/types/adapters/llm/BedrockProvider.d.ts.map +1 -1
  386. package/dist/types/adapters/llm/BrowserAnthropicProvider.d.ts.map +1 -1
  387. package/dist/types/adapters/llm/BrowserOpenAIProvider.d.ts.map +1 -1
  388. package/dist/types/adapters/llm/FoundryLocalProvider.d.ts.map +1 -1
  389. package/dist/types/adapters/llm/GeminiProvider.d.ts.map +1 -1
  390. package/dist/types/adapters/llm/InvokeModelGatewayProvider.d.ts +3 -2
  391. package/dist/types/adapters/llm/InvokeModelGatewayProvider.d.ts.map +1 -1
  392. package/dist/types/adapters/llm/MockProvider.d.ts.map +1 -1
  393. package/dist/types/adapters/llm/OllamaProvider.d.ts.map +1 -1
  394. package/dist/types/adapters/llm/OpenAIProvider.d.ts +6 -1
  395. package/dist/types/adapters/llm/OpenAIProvider.d.ts.map +1 -1
  396. package/dist/types/adapters/mcp/agentcoreRuntime/invoke.d.ts +1 -1
  397. package/dist/types/adapters/mcp/agentcoreRuntime/invoke.d.ts.map +1 -1
  398. package/dist/types/adapters/mcp/agentcoreRuntime/transport.d.ts +26 -3
  399. package/dist/types/adapters/mcp/agentcoreRuntime/transport.d.ts.map +1 -1
  400. package/dist/types/ag-ui/adapter.d.ts +61 -11
  401. package/dist/types/ag-ui/adapter.d.ts.map +1 -1
  402. package/dist/types/ag-ui/framing.d.ts +2 -1
  403. package/dist/types/ag-ui/framing.d.ts.map +1 -1
  404. package/dist/types/ag-ui/index.d.ts +6 -4
  405. package/dist/types/ag-ui/index.d.ts.map +1 -1
  406. package/dist/types/ag-ui/request.d.ts +86 -7
  407. package/dist/types/ag-ui/request.d.ts.map +1 -1
  408. package/dist/types/answer-validation/index.d.ts +2 -1
  409. package/dist/types/answer-validation/index.d.ts.map +1 -1
  410. package/dist/types/answer-validation/toolLedger.d.ts +66 -0
  411. package/dist/types/answer-validation/toolLedger.d.ts.map +1 -0
  412. package/dist/types/answer-validation/types.d.ts +48 -0
  413. package/dist/types/answer-validation/types.d.ts.map +1 -1
  414. package/dist/types/answer-validation/validate.d.ts +2 -2
  415. package/dist/types/answer-validation/validate.d.ts.map +1 -1
  416. package/dist/types/classify/typesafe.d.ts.map +1 -1
  417. package/dist/types/core/Agent.d.ts +9 -1
  418. package/dist/types/core/Agent.d.ts.map +1 -1
  419. package/dist/types/core/LLMCall.d.ts +2 -1
  420. package/dist/types/core/LLMCall.d.ts.map +1 -1
  421. package/dist/types/core/RunnerBase.d.ts +39 -8
  422. package/dist/types/core/RunnerBase.d.ts.map +1 -1
  423. package/dist/types/core/agent/buildAgentChart.d.ts.map +1 -1
  424. package/dist/types/core/agent/buildAgentMessageApiChart.d.ts +16 -0
  425. package/dist/types/core/agent/buildAgentMessageApiChart.d.ts.map +1 -1
  426. package/dist/types/core/agent/buildDynamicAgentChart.d.ts.map +1 -1
  427. package/dist/types/core/agent/buildMessageApiChart.d.ts +16 -0
  428. package/dist/types/core/agent/buildMessageApiChart.d.ts.map +1 -1
  429. package/dist/types/core/agent/stages/answerValidation.d.ts.map +1 -1
  430. package/dist/types/core/agent/stages/callLLM.d.ts.map +1 -1
  431. package/dist/types/core/agent/stages/routeTurn.d.ts.map +1 -1
  432. package/dist/types/core/agent/stages/seed.d.ts +7 -0
  433. package/dist/types/core/agent/stages/seed.d.ts.map +1 -1
  434. package/dist/types/core/agent/stages/toolCalls.d.ts +21 -0
  435. package/dist/types/core/agent/stages/toolCalls.d.ts.map +1 -1
  436. package/dist/types/core/agent/types.d.ts +10 -0
  437. package/dist/types/core/agent/types.d.ts.map +1 -1
  438. package/dist/types/core/agent/window/strategies/summarizeOldest.d.ts.map +1 -1
  439. package/dist/types/core/agent/window/summarize.d.ts.map +1 -1
  440. package/dist/types/core/memberRun.d.ts +23 -2
  441. package/dist/types/core/memberRun.d.ts.map +1 -1
  442. package/dist/types/core/requestOfRun.d.ts +22 -0
  443. package/dist/types/core/requestOfRun.d.ts.map +1 -0
  444. package/dist/types/core/runner.d.ts +15 -3
  445. package/dist/types/core/runner.d.ts.map +1 -1
  446. package/dist/types/core/slots/buildToolsSlot.d.ts +0 -16
  447. package/dist/types/core/slots/buildToolsSlot.d.ts.map +1 -1
  448. package/dist/types/core-flow/Conditional.d.ts +2 -1
  449. package/dist/types/core-flow/Conditional.d.ts.map +1 -1
  450. package/dist/types/core-flow/Graph.d.ts +2 -1
  451. package/dist/types/core-flow/Graph.d.ts.map +1 -1
  452. package/dist/types/core-flow/Loop.d.ts +2 -1
  453. package/dist/types/core-flow/Loop.d.ts.map +1 -1
  454. package/dist/types/core-flow/Parallel.d.ts +2 -1
  455. package/dist/types/core-flow/Parallel.d.ts.map +1 -1
  456. package/dist/types/core-flow/Sequence.d.ts +2 -1
  457. package/dist/types/core-flow/Sequence.d.ts.map +1 -1
  458. package/dist/types/core-flow/Workflow.d.ts +2 -1
  459. package/dist/types/core-flow/Workflow.d.ts.map +1 -1
  460. package/dist/types/doors/security.d.ts +2 -1
  461. package/dist/types/doors/security.d.ts.map +1 -1
  462. package/dist/types/events/payloads.d.ts +4 -2
  463. package/dist/types/events/payloads.d.ts.map +1 -1
  464. package/dist/types/hosting/index.d.ts +1 -0
  465. package/dist/types/hosting/index.d.ts.map +1 -1
  466. package/dist/types/hosting/protocolAdapter.d.ts +4 -1
  467. package/dist/types/hosting/protocolAdapter.d.ts.map +1 -1
  468. package/dist/types/hosting/refusalStatus.d.ts.map +1 -1
  469. package/dist/types/hosting/requestSealing.d.ts +66 -0
  470. package/dist/types/hosting/requestSealing.d.ts.map +1 -0
  471. package/dist/types/hosting/standingAgent.d.ts.map +1 -1
  472. package/dist/types/hosting/stream.d.ts +23 -2
  473. package/dist/types/hosting/stream.d.ts.map +1 -1
  474. package/dist/types/hosting/streamHandler.d.ts +26 -7
  475. package/dist/types/hosting/streamHandler.d.ts.map +1 -1
  476. package/dist/types/hosting/types.d.ts +29 -0
  477. package/dist/types/hosting/types.d.ts.map +1 -1
  478. package/dist/types/identity/requestContext.d.ts +97 -0
  479. package/dist/types/identity/requestContext.d.ts.map +1 -0
  480. package/dist/types/identity/requestCredentials.d.ts +100 -0
  481. package/dist/types/identity/requestCredentials.d.ts.map +1 -0
  482. package/dist/types/identity/types.d.ts +11 -0
  483. package/dist/types/identity/types.d.ts.map +1 -1
  484. package/dist/types/identity.d.ts +2 -0
  485. package/dist/types/identity.d.ts.map +1 -1
  486. package/dist/types/index.d.ts +3 -2
  487. package/dist/types/index.d.ts.map +1 -1
  488. package/dist/types/injection-engine/buildInjectionEngineSubflow.d.ts +11 -0
  489. package/dist/types/injection-engine/buildInjectionEngineSubflow.d.ts.map +1 -1
  490. package/dist/types/injection-engine/constrainedEnumPick.d.ts.map +1 -1
  491. package/dist/types/injection-engine/evaluator.d.ts +6 -0
  492. package/dist/types/injection-engine/evaluator.d.ts.map +1 -1
  493. package/dist/types/injection-engine/skillIntent.d.ts +4 -2
  494. package/dist/types/injection-engine/skillIntent.d.ts.map +1 -1
  495. package/dist/types/injection-engine/types.d.ts +27 -1
  496. package/dist/types/injection-engine/types.d.ts.map +1 -1
  497. package/dist/types/lib/abort.d.ts +158 -0
  498. package/dist/types/lib/abort.d.ts.map +1 -0
  499. package/dist/types/maps/engagement/parkCard.d.ts +5 -1
  500. package/dist/types/maps/engagement/parkCard.d.ts.map +1 -1
  501. package/dist/types/mcp/mcpServe.d.ts.map +1 -1
  502. package/dist/types/mcp/plainData.d.ts +45 -0
  503. package/dist/types/mcp/plainData.d.ts.map +1 -0
  504. package/dist/types/mcp/sdkLoadFailure.d.ts +6 -7
  505. package/dist/types/mcp/sdkLoadFailure.d.ts.map +1 -1
  506. package/dist/types/mcp/toolResult.d.ts.map +1 -1
  507. package/dist/types/mcp/types.d.ts +10 -6
  508. package/dist/types/mcp/types.d.ts.map +1 -1
  509. package/dist/types/memory/beats/llmExtractor.d.ts.map +1 -1
  510. package/dist/types/memory/facts/llmFactExtractor.d.ts.map +1 -1
  511. package/dist/types/memory/stages/summarize.d.ts.map +1 -1
  512. package/dist/types/patterns/LlmRouter.d.ts.map +1 -1
  513. package/dist/types/redaction/conversation.d.ts.map +1 -1
  514. package/dist/types/redaction/knownStrings.d.ts.map +1 -1
  515. package/dist/types/reliability/buildReliabilityGateChart.d.ts.map +1 -1
  516. package/dist/types/resilience/withCircuitBreaker.d.ts.map +1 -1
  517. package/dist/types/resilience/withFallback.d.ts.map +1 -1
  518. package/dist/types/resilience/withRetry.d.ts.map +1 -1
  519. package/dist/types/tools/hostFilled.d.ts +111 -0
  520. package/dist/types/tools/hostFilled.d.ts.map +1 -0
  521. package/package.json +1 -1
@@ -67,6 +67,9 @@ exports.OllamaProvider = exports.ollama = exports.OllamaUnavailableError = void
67
67
  // only notices the shape and labels it.
68
68
  const OllamaThinkingHandler_js_1 = require("../../thinking/OllamaThinkingHandler.js");
69
69
  const linearText_js_1 = require("../../lib/linearText.js");
70
+ // The one owner of how a cancellation is honoured (lib/abort.ts) — this file
71
+ // kept private copies of the first three until the other adapters needed them.
72
+ const abort_js_1 = require("../../lib/abort.js");
70
73
  /** Cap for any text the wire supplies before it becomes one of our messages. */
71
74
  const ERROR_TEXT_CAP = 200;
72
75
  // ─── Errors ─────────────────────────────────────────────────────────
@@ -147,14 +150,20 @@ function ollama(modelOrOptions, maybeOptions) {
147
150
  // for why this wire needs that at all.
148
151
  let toolCallSeq = 0;
149
152
  const nextToolCallId = () => `ollama-call-${++toolCallSeq}`;
150
- const post = async (body, req) => {
153
+ /**
154
+ * POST under `call` — the call's own controller, linked to the caller's
155
+ * signal for the WHOLE call (body included) and aborted by the header
156
+ * deadline; `complete`/`stream` unlink it when the call ends, so no listener
157
+ * is left on the caller's signal (lib/abort.ts · linkedController).
158
+ */
159
+ const post = async (body, req, call) => {
151
160
  const response = await fetchUntilHeaders(fetchImpl, chatUrl, {
152
161
  method: 'POST',
153
162
  headers: { 'content-type': 'application/json' },
154
163
  body: JSON.stringify(body),
155
- }, { timeoutMs, baseUrl, ...(req.signal && { signal: req.signal }) });
164
+ }, { timeoutMs, baseUrl, call, ...(req.signal && { signal: req.signal }) });
156
165
  if (!response.ok) {
157
- throw await describeFailure(response, body.model, baseUrl, fetchImpl, timeoutMs);
166
+ throw await (0, abort_js_1.untilAborted)(describeFailure(response, body.model, baseUrl, fetchImpl, timeoutMs), req.signal);
158
167
  }
159
168
  return response;
160
169
  };
@@ -171,83 +180,101 @@ function ollama(modelOrOptions, maybeOptions) {
171
180
  // opens — the `/api/tags` enrichment included. An already-aborted signal
172
181
  // never dispatches another 'abort' event, so a listener alone cannot
173
182
  // see it.
174
- throwIfAborted(req.signal);
183
+ (0, abort_js_1.throwIfAborted)(req.signal);
175
184
  const body = buildBody(req, cfg, false);
176
- const response = await post(body, req);
177
- // `fetch` resolves on HEADERS, so reading the body is the stretch where
178
- // a caller abort would otherwise be inert — honor it for that too.
179
- const json = (await untilAborted(response.json(), req.signal));
180
- return fromOllamaResponse(json, nextToolCallId);
185
+ const call = (0, abort_js_1.linkedController)(req.signal);
186
+ try {
187
+ const response = await post(body, req, call.controller);
188
+ // `fetch` resolves on HEADERS, so reading the body is the stretch where
189
+ // a caller abort would otherwise be inert — honor it for that too.
190
+ const json = (await (0, abort_js_1.untilAborted)(response.json(), req.signal));
191
+ return fromOllamaResponse(json, nextToolCallId);
192
+ }
193
+ finally {
194
+ call.unlink();
195
+ }
181
196
  },
182
197
  async *stream(req) {
183
- throwIfAborted(req.signal);
184
- const body = buildBody(req, cfg, true);
185
- const response = await post(body, req);
186
- if (!response.body)
187
- throw new Error('[ollama] response has no body');
188
- const textParts = [];
189
- const thinkingParts = [];
190
- const toolCalls = [];
191
- let doneReason = 'stop';
192
- let promptEvalCount = 0;
193
- let evalCount = 0;
194
- let tokenIndex = 0;
195
- // The signal rides INTO the parser: it is what stops a generation the
196
- // caller no longer wants, and what cancels the body when it does.
197
- for await (const chunk of parseNdjson(response.body, req.signal)) {
198
- const frame = chunk;
199
- // An already-200 stream can still FAIL mid-generation, and this wire
200
- // says so IN BAND with an `{"error": "..."}` frame. Such a frame
201
- // carries no `message` and no `done`, so the guards below would skip
202
- // it and the terminal chunk would report a truncated answer as
203
- // `stopReason: 'stop'` with nobody told. Raise instead: a failed
204
- // generation is a failure, never a shorter answer.
205
- const failure = frameFailureText(frame);
206
- if (failure) {
207
- throw providerError(`[ollama] the stream failed mid-generation — ${failure}`);
208
- }
209
- // Counts ride the terminal frame, whose `message.content` is empty —
210
- // read them before any content guard, or the only token counts the
211
- // stream reports are thrown away (the failure that made streamed
212
- // local calls report zero and disarmed `.compaction()`).
213
- if (typeof frame.prompt_eval_count === 'number')
214
- promptEvalCount = frame.prompt_eval_count;
215
- if (typeof frame.eval_count === 'number')
216
- evalCount = frame.eval_count;
217
- if (frame.done_reason)
218
- doneReason = frame.done_reason;
219
- const message = frame.message;
220
- if (message) {
221
- if (message.tool_calls && message.tool_calls.length > 0) {
222
- // Ollama emits each tool call whole, not as an assembled delta.
223
- toolCalls.push(...message.tool_calls);
224
- }
225
- if (message.thinking) {
226
- thinkingParts.push(message.thinking);
227
- yield { tokenIndex, content: '', done: false, thinkingDelta: message.thinking };
228
- tokenIndex++;
229
- }
230
- if (message.content) {
231
- textParts.push(message.content);
232
- yield { tokenIndex, content: message.content, done: false };
233
- tokenIndex++;
234
- }
235
- }
236
- if (frame.done)
237
- break;
198
+ (0, abort_js_1.throwIfAborted)(req.signal);
199
+ const call = (0, abort_js_1.linkedController)(req.signal);
200
+ try {
201
+ yield* streamUnder(req, call.controller);
202
+ }
203
+ finally {
204
+ call.unlink();
238
205
  }
239
- const content = textParts.join('');
240
- const rawThinking = describeThinking(content, thinkingParts.join(''));
241
- const authoritative = {
242
- content,
243
- toolCalls: toolCalls.map((tc) => toLLMToolCall(tc, nextToolCallId)),
244
- usage: { input: promptEvalCount, output: evalCount },
245
- stopReason: normalizeStopReason(doneReason, toolCalls.length > 0),
246
- ...(rawThinking && { rawThinking }),
247
- };
248
- yield { tokenIndex, content: '', done: true, response: authoritative };
249
206
  },
250
207
  };
208
+ async function* streamUnder(req, call) {
209
+ const body = buildBody(req, cfg, true);
210
+ const response = await post(body, req, call);
211
+ if (!response.body)
212
+ throw new Error('[ollama] response has no body');
213
+ const textParts = [];
214
+ const thinkingParts = [];
215
+ const toolCalls = [];
216
+ let doneReason = 'stop';
217
+ let promptEvalCount = 0;
218
+ let evalCount = 0;
219
+ let tokenIndex = 0;
220
+ // The signal rides INTO the parser: it is what stops a generation the
221
+ // caller no longer wants, and what cancels the body when it does.
222
+ for await (const chunk of parseNdjson(response.body, req.signal)) {
223
+ const frame = chunk;
224
+ // An already-200 stream can still FAIL mid-generation, and this wire
225
+ // says so IN BAND with an `{"error": "..."}` frame. Such a frame
226
+ // carries no `message` and no `done`, so the guards below would skip
227
+ // it and the terminal chunk would report a truncated answer as
228
+ // `stopReason: 'stop'` with nobody told. Raise instead: a failed
229
+ // generation is a failure, never a shorter answer.
230
+ const failure = frameFailureText(frame);
231
+ if (failure) {
232
+ throw providerError(`[ollama] the stream failed mid-generation — ${failure}`);
233
+ }
234
+ // Counts ride the terminal frame, whose `message.content` is empty —
235
+ // read them before any content guard, or the only token counts the
236
+ // stream reports are thrown away (the failure that made streamed
237
+ // local calls report zero and disarmed `.compaction()`).
238
+ if (typeof frame.prompt_eval_count === 'number')
239
+ promptEvalCount = frame.prompt_eval_count;
240
+ if (typeof frame.eval_count === 'number')
241
+ evalCount = frame.eval_count;
242
+ if (frame.done_reason)
243
+ doneReason = frame.done_reason;
244
+ const message = frame.message;
245
+ if (message) {
246
+ if (message.tool_calls && message.tool_calls.length > 0) {
247
+ // Ollama emits each tool call whole, not as an assembled delta.
248
+ toolCalls.push(...message.tool_calls);
249
+ }
250
+ if (message.thinking) {
251
+ thinkingParts.push(message.thinking);
252
+ (0, abort_js_1.throwIfAborted)(req.signal);
253
+ yield { tokenIndex, content: '', done: false, thinkingDelta: message.thinking };
254
+ tokenIndex++;
255
+ }
256
+ if (message.content) {
257
+ textParts.push(message.content);
258
+ (0, abort_js_1.throwIfAborted)(req.signal);
259
+ yield { tokenIndex, content: message.content, done: false };
260
+ tokenIndex++;
261
+ }
262
+ }
263
+ if (frame.done)
264
+ break;
265
+ }
266
+ const content = textParts.join('');
267
+ const rawThinking = describeThinking(content, thinkingParts.join(''));
268
+ const authoritative = {
269
+ content,
270
+ toolCalls: toolCalls.map((tc) => toLLMToolCall(tc, nextToolCallId)),
271
+ usage: { input: promptEvalCount, output: evalCount },
272
+ stopReason: normalizeStopReason(doneReason, toolCalls.length > 0),
273
+ ...(rawThinking && { rawThinking }),
274
+ };
275
+ (0, abort_js_1.throwIfAborted)(req.signal);
276
+ yield { tokenIndex, content: '', done: true, response: authoritative };
277
+ }
251
278
  return provider;
252
279
  }
253
280
  exports.ollama = ollama;
@@ -516,59 +543,40 @@ function normalizeStopReason(raw, hasToolCalls) {
516
543
  * still occupies the machine.
517
544
  */
518
545
  async function* parseNdjson(body, signal) {
519
- const reader = body.getReader();
520
546
  const decoder = new TextDecoder();
521
547
  let buf = '';
522
- try {
523
- for (;;) {
524
- // The read is RACED against the caller's signal. A signal that only
525
- // reached the headers would be a cancellation that cancels nothing.
526
- const { value, done } = await untilAborted(reader.read(), signal);
527
- if (done)
528
- break;
529
- buf += decoder.decode(value, { stream: true });
530
- let idx;
531
- while ((idx = buf.indexOf('\n')) >= 0) {
532
- const line = buf.slice(0, idx).trim();
533
- buf = buf.slice(idx + 1);
534
- if (!line)
535
- continue;
536
- try {
537
- yield JSON.parse(line);
538
- }
539
- catch {
540
- /* skip malformed line */
541
- }
542
- }
543
- }
544
- // A final line with no trailing newline still counts.
545
- const tail = buf.trim();
546
- if (tail) {
548
+ // `bodyChunks` races every read against the caller's signal — a signal that
549
+ // only reached the headers would be a cancellation that cancels nothing —
550
+ // and CANCELS the body on every way out: the terminal `done` frame (the
551
+ // stream loop breaks on it), a consumer that breaks out, an error frame, a
552
+ // caller abort. An open body means the local model keeps generating for
553
+ // nobody and the socket stays up.
554
+ for await (const value of (0, abort_js_1.bodyChunks)(body, signal)) {
555
+ buf += decoder.decode(value, { stream: true });
556
+ let idx;
557
+ while ((idx = buf.indexOf('\n')) >= 0) {
558
+ (0, abort_js_1.throwIfAborted)(signal);
559
+ const line = buf.slice(0, idx).trim();
560
+ buf = buf.slice(idx + 1);
561
+ if (!line)
562
+ continue;
547
563
  try {
548
- yield JSON.parse(tail);
564
+ yield JSON.parse(line);
549
565
  }
550
566
  catch {
551
- /* skip malformed tail */
567
+ /* skip malformed line */
552
568
  }
553
569
  }
554
570
  }
555
- finally {
556
- // CANCEL, not merely release the lock. The terminal `done` frame (the
557
- // stream loop breaks on it), a consumer that breaks out, an error frame,
558
- // a caller abort — every one of them leaves an open body, and an open
559
- // body means the local model keeps generating for nobody and the socket
560
- // stays up.
561
- try {
562
- await reader.cancel();
563
- }
564
- catch {
565
- /* already closed or errored — nothing left to close */
566
- }
571
+ // A final line with no trailing newline still counts.
572
+ const tail = buf.trim();
573
+ if (tail) {
574
+ (0, abort_js_1.throwIfAborted)(signal);
567
575
  try {
568
- reader.releaseLock();
576
+ yield JSON.parse(tail);
569
577
  }
570
578
  catch {
571
- /* a lock the runtime already dropped */
579
+ /* skip malformed tail */
572
580
  }
573
581
  }
574
582
  }
@@ -595,12 +603,13 @@ async function fetchUntilHeaders(fetchImpl, url, init, opts) {
595
603
  // bridge below could not fire and the request would go out on a turn the
596
604
  // caller has cancelled. Refuse before the socket opens, and refuse with the
597
605
  // caller's own reason: an abort is their call, never a daemon fault.
598
- throwIfAborted(opts.signal);
599
- const controller = new AbortController();
606
+ (0, abort_js_1.throwIfAborted)(opts.signal);
607
+ // The call's controller: it follows the caller's signal for the WHOLE call —
608
+ // the body included, long after this timer is cleared — and the deadline
609
+ // aborts it here. Its link is the call's to end (`post`).
610
+ const controller = opts.call;
600
611
  let timedOut = false;
601
612
  let timer;
602
- const onCallerAbort = () => controller.abort();
603
- opts.signal?.addEventListener('abort', onCallerAbort, { once: true });
604
613
  const deadline = new Promise((_resolve, reject) => {
605
614
  timer = setTimeout(() => {
606
615
  timedOut = true;
@@ -609,13 +618,16 @@ async function fetchUntilHeaders(fetchImpl, url, init, opts) {
609
618
  }, opts.timeoutMs);
610
619
  });
611
620
  try {
612
- return await Promise.race([fetchImpl(url, { ...init, signal: controller.signal }), deadline]);
621
+ // The caller's abort wins the race too: a `fetch` that ignores its signal
622
+ // must not hold a cancelled call open until the deadline (lib/abort.ts).
623
+ return await (0, abort_js_1.untilAborted)(Promise.race([fetchImpl(url, { ...init, signal: controller.signal }), deadline]), opts.signal);
613
624
  }
614
625
  catch (err) {
615
626
  if (err instanceof OllamaUnavailableError)
616
627
  throw err; // the deadline fired
628
+ // The caller's call, not ours — and it fails with the caller's reason.
617
629
  if (opts.signal?.aborted && !timedOut)
618
- throw err; // the caller's call, not ours
630
+ throw (0, abort_js_1.abortErrorOf)(opts.signal);
619
631
  // Timed out, or connection refused / DNS failure / TLS failure — either
620
632
  // way, nothing answered at that address.
621
633
  throw new OllamaUnavailableError({
@@ -627,7 +639,6 @@ async function fetchUntilHeaders(fetchImpl, url, init, opts) {
627
639
  finally {
628
640
  if (timer !== undefined)
629
641
  clearTimeout(timer);
630
- opts.signal?.removeEventListener('abort', onCallerAbort);
631
642
  // When the fetch wins the race, the deadline promise may still reject with
632
643
  // nobody listening. Swallow it deliberately: the answer already arrived, so
633
644
  // an unhandled-rejection warning here would be noise about a non-event.
@@ -748,48 +759,4 @@ function providerError(message, status) {
748
759
  ...(status !== undefined && { status }),
749
760
  });
750
761
  }
751
- /**
752
- * An abort is the CALLER's word, so it must reach them AS an abort — never
753
- * dressed up as a daemon failure. The signal's own `reason` is used when it
754
- * is an Error (what every runtime supplies: a DOMException named
755
- * 'AbortError'); anything else becomes one, keeping the reason as `cause`.
756
- */
757
- function asAbortError(reason) {
758
- if (reason instanceof Error)
759
- return reason;
760
- return Object.assign(new Error('This operation was aborted'), {
761
- name: 'AbortError',
762
- ...(reason !== undefined && { cause: reason }),
763
- });
764
- }
765
- /** Stop right here when the caller's signal has already fired. */
766
- function throwIfAborted(signal) {
767
- if (signal?.aborted)
768
- throw asAbortError(signal.reason);
769
- }
770
- /**
771
- * `promise`, except that a caller abort ends the wait immediately.
772
- *
773
- * `fetch` resolves on HEADERS. Everything after that — a streamed body, a
774
- * large non-streaming JSON read — used to be deaf to the caller's signal, so
775
- * a cancelled turn kept the local model generating to completion. This is
776
- * what makes `LLMRequest.signal` honest for the whole call rather than only
777
- * until the headers land. The CALLER's signal only: `timeoutMs` stays exactly
778
- * what it always was, a bound on the wait for headers and never on generation.
779
- */
780
- function untilAborted(promise, signal) {
781
- if (!signal)
782
- return promise;
783
- if (signal.aborted) {
784
- void promise.catch(() => undefined); // the abandoned work must not warn
785
- return Promise.reject(asAbortError(signal.reason));
786
- }
787
- return new Promise((resolve, reject) => {
788
- const onAbort = () => reject(asAbortError(signal.reason));
789
- signal.addEventListener('abort', onAbort, { once: true });
790
- promise.then(resolve, reject).finally(() => {
791
- signal.removeEventListener('abort', onAbort);
792
- });
793
- });
794
- }
795
762
  //# sourceMappingURL=OllamaProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OllamaProvider.js","sourceRoot":"","sources":["../../../src/adapters/llm/OllamaProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OllamaProvider.js","sourceRoot":"","sources":["../../../src/adapters/llm/OllamaProvider.ts"],"names":[],"mappings":"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"}
@@ -23,10 +23,21 @@ Object.defineProperty(exports, "__esModule", { value: true });
23
23
  exports.entraBearerToken = exports.azureOpenai = exports.OpenAIProvider = exports.openai = void 0;
24
24
  const OpenAIThinkingHandler_js_1 = require("../../thinking/OpenAIThinkingHandler.js");
25
25
  const lazyRequire_js_1 = require("../../lib/lazyRequire.js");
26
+ const abort_js_1 = require("../../lib/abort.js");
26
27
  const contextWindow_js_1 = require("../../provider-contract/contextWindow.js");
27
28
  const retryAfter_js_1 = require("./retryAfter.js");
28
29
  const azureUrl_js_1 = require("./azureUrl.js");
29
30
  const azure_js_1 = require("../identity/azure.js");
31
+ /** `create(params)`, with the request's signal in the SDK's options when it has one. */
32
+ function createUnder(client, params, signal) {
33
+ return signal
34
+ ? client.chat.completions.create(params, { signal })
35
+ : client.chat.completions.create(params);
36
+ }
37
+ /** The SDK stream's own close, where it has one (`Stream.controller`). */
38
+ function closeOpenAIStream(stream) {
39
+ stream.controller?.abort?.();
40
+ }
30
41
  /**
31
42
  * Which roles this wire carries inside `messages`.
32
43
  *
@@ -96,21 +107,29 @@ function openai(options = {}) {
96
107
  ...(!legacyEndpoint && { promptCaching: OPENAI_PROMPT_CACHING }),
97
108
  thinkingHandler: OpenAIThinkingHandler_js_1.openAIThinkingHandler,
98
109
  async complete(req) {
110
+ // A cancelled call sends nothing — checked again once the credential is
111
+ // in hand, because asking for it can take a while (lib/abort.ts, law 1).
112
+ (0, abort_js_1.throwIfAborted)(req.signal);
99
113
  const params = buildParams(req, { ...cfg, stream: false });
100
114
  // The credential is asked for HERE, per request, so a token that expired
101
115
  // since the last call is a new token and not a 401.
102
- const client = await connect();
116
+ const client = await (0, abort_js_1.untilAborted)(connect(), req.signal);
117
+ (0, abort_js_1.throwIfAborted)(req.signal);
103
118
  try {
104
- const response = (await client.chat.completions.create(params));
119
+ // The signal rides the SDK's request options, so an abort cancels the
120
+ // HTTP request itself; the race refuses an answer that lands after it.
121
+ const response = (await (0, abort_js_1.untilAborted)(createUnder(client, params, req.signal), req.signal));
105
122
  return fromOpenAIResponse(response);
106
123
  }
107
124
  catch (err) {
108
- throw wrapError(err);
125
+ throw wrapError(err, req.signal);
109
126
  }
110
127
  },
111
128
  async *stream(req) {
129
+ (0, abort_js_1.throwIfAborted)(req.signal);
112
130
  const params = buildParams(req, { ...cfg, stream: true });
113
- const client = await connect();
131
+ const client = await (0, abort_js_1.untilAborted)(connect(), req.signal);
132
+ (0, abort_js_1.throwIfAborted)(req.signal);
114
133
  let stream;
115
134
  try {
116
135
  // AWAIT, then check. The SDK's `create()` returns an `APIPromise` — a
@@ -121,11 +140,12 @@ function openai(options = {}) {
121
140
  // doubles hid it for a year by returning an async generator directly
122
141
  // from `create()`, which is why the guard accepts BOTH shapes: `await`
123
142
  // on a non-thenable is the identity.
124
- stream = await asChunkStream(client.chat.completions.create(params));
143
+ stream = await (0, abort_js_1.untilAborted)(asChunkStream(createUnder(client, params, req.signal)), req.signal);
125
144
  }
126
145
  catch (err) {
127
- throw wrapError(err);
146
+ throw wrapError(err, req.signal);
128
147
  }
148
+ const opened = stream;
129
149
  // Accumulate the streamed pieces so we can synthesize the
130
150
  // authoritative LLMResponse on the terminal chunk. OpenAI streams
131
151
  // tool_calls in chunks too — assemble id/name/args by index.
@@ -136,7 +156,9 @@ function openai(options = {}) {
136
156
  let lastId = '';
137
157
  let tokenIndex = 0;
138
158
  try {
139
- for await (const chunk of stream) {
159
+ // An abort closes the SDK stream and ends this loop at once, even
160
+ // when a read is still pending (lib/abort.ts, laws 2–3).
161
+ for await (const chunk of (0, abort_js_1.abortableIterable)(opened, req.signal, () => closeOpenAIStream(opened))) {
140
162
  // Usage FIRST, and outside the choice guard. With
141
163
  // `stream_options.include_usage` (set in buildParams) OpenAI sends the
142
164
  // token counts on a final chunk whose `choices` array is EMPTY — so a
@@ -192,7 +214,7 @@ function openai(options = {}) {
192
214
  yield { tokenIndex, content: '', done: true, response };
193
215
  }
194
216
  catch (err) {
195
- throw wrapError(err);
217
+ throw wrapError(err, req.signal);
196
218
  }
197
219
  },
198
220
  };
@@ -744,7 +766,12 @@ function normalizeStopReason(raw) {
744
766
  return raw;
745
767
  }
746
768
  }
747
- function wrapError(err) {
769
+ function wrapError(err, signal) {
770
+ // A cancelled call fails AS the cancellation, whatever the SDK threw for it
771
+ // (its own `APIUserAbortError` included) — never as a provider error that a
772
+ // retry would re-send (lib/abort.ts).
773
+ if (signal?.aborted)
774
+ return (0, abort_js_1.abortErrorOf)(signal);
748
775
  // "Your request was too big" is a distinct failure with distinct fixes, so
749
776
  // it leaves this adapter as a typed error rather than as one more opaque
750
777
  // 400 that a retry loop will re-send forever. Nothing else is translated.