veryfront 0.1.1043 → 0.1.1044

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 (277) hide show
  1. package/esm/deno.js +1 -1
  2. package/esm/src/agent/ag-ui/detached-start.d.ts.map +1 -1
  3. package/esm/src/agent/ag-ui/detached-start.js +6 -1
  4. package/esm/src/agent/ag-ui/runtime-handler.d.ts.map +1 -1
  5. package/esm/src/agent/ag-ui/runtime-handler.js +7 -5
  6. package/esm/src/agent/hosted/chat-execution-runtime.d.ts.map +1 -1
  7. package/esm/src/agent/hosted/chat-execution-runtime.js +6 -1
  8. package/esm/src/agent/hosted/child-status.d.ts +2 -0
  9. package/esm/src/agent/hosted/child-status.d.ts.map +1 -1
  10. package/esm/src/agent/hosted/child-status.js +12 -3
  11. package/esm/src/agent/hosted/cloud-prepared-chat-execution-runtime.d.ts.map +1 -1
  12. package/esm/src/agent/hosted/cloud-prepared-chat-execution-runtime.js +4 -0
  13. package/esm/src/agent/hosted/response-stream.d.ts +2 -0
  14. package/esm/src/agent/hosted/response-stream.d.ts.map +1 -1
  15. package/esm/src/agent/hosted/response-stream.js +1 -1
  16. package/esm/src/agent/hosted/veryfront-cloud-agent-service.d.ts.map +1 -1
  17. package/esm/src/agent/hosted/veryfront-cloud-agent-service.js +4 -0
  18. package/esm/src/agent/middleware/cache/cache.d.ts.map +1 -1
  19. package/esm/src/agent/middleware/cache/cache.js +14 -4
  20. package/esm/src/agent/runtime/constants.d.ts +7 -1
  21. package/esm/src/agent/runtime/constants.d.ts.map +1 -1
  22. package/esm/src/agent/runtime/constants.js +14 -2
  23. package/esm/src/agent/runtime/model-capabilities.d.ts.map +1 -1
  24. package/esm/src/agent/runtime/model-capabilities.js +4 -0
  25. package/esm/src/agent/runtime/sse-utils.d.ts.map +1 -1
  26. package/esm/src/agent/runtime/sse-utils.js +7 -1
  27. package/esm/src/agent/service/registration.d.ts.map +1 -1
  28. package/esm/src/agent/service/registration.js +20 -5
  29. package/esm/src/cache/backends/api.d.ts.map +1 -1
  30. package/esm/src/cache/backends/api.js +22 -2
  31. package/esm/src/cache/backends/disk.d.ts.map +1 -1
  32. package/esm/src/cache/backends/disk.js +9 -1
  33. package/esm/src/cache/cache-key-builder.d.ts +1 -1
  34. package/esm/src/cache/cache-key-builder.d.ts.map +1 -1
  35. package/esm/src/cache/cache-key-builder.js +26 -4
  36. package/esm/src/cache/dependency-graph.d.ts.map +1 -1
  37. package/esm/src/cache/dependency-graph.js +33 -11
  38. package/esm/src/cache/keys/utils.d.ts.map +1 -1
  39. package/esm/src/cache/keys/utils.js +28 -14
  40. package/esm/src/cache/paths.d.ts.map +1 -1
  41. package/esm/src/cache/paths.js +17 -21
  42. package/esm/src/channels/invoke.d.ts.map +1 -1
  43. package/esm/src/channels/invoke.js +5 -2
  44. package/esm/src/chat/provider-errors.d.ts +1 -1
  45. package/esm/src/chat/provider-errors.d.ts.map +1 -1
  46. package/esm/src/chat/provider-errors.js +17 -1
  47. package/esm/src/chat/stream-watchdog.js +4 -1
  48. package/esm/src/config/loader.d.ts +2 -0
  49. package/esm/src/config/loader.d.ts.map +1 -1
  50. package/esm/src/config/loader.js +31 -1
  51. package/esm/src/data/static-data-fetcher.d.ts.map +1 -1
  52. package/esm/src/data/static-data-fetcher.js +5 -0
  53. package/esm/src/eval/agent-service/durable-run-canaries/runner.d.ts.map +1 -1
  54. package/esm/src/eval/agent-service/durable-run-canaries/runner.js +15 -1
  55. package/esm/src/eval/runner.js +1 -1
  56. package/esm/src/html/html-injection.d.ts.map +1 -1
  57. package/esm/src/html/html-injection.js +6 -3
  58. package/esm/src/integrations/remote-tools.d.ts.map +1 -1
  59. package/esm/src/integrations/remote-tools.js +33 -13
  60. package/esm/src/internal-agents/control-plane-auth.d.ts.map +1 -1
  61. package/esm/src/internal-agents/control-plane-auth.js +9 -15
  62. package/esm/src/issues/core.d.ts +6 -1
  63. package/esm/src/issues/core.d.ts.map +1 -1
  64. package/esm/src/issues/core.js +9 -2
  65. package/esm/src/mcp/server.d.ts +6 -0
  66. package/esm/src/mcp/server.d.ts.map +1 -1
  67. package/esm/src/mcp/server.js +23 -3
  68. package/esm/src/oauth/providers/base.d.ts.map +1 -1
  69. package/esm/src/oauth/providers/base.js +18 -3
  70. package/esm/src/observability/auto-instrument/http-instrumentation.d.ts.map +1 -1
  71. package/esm/src/observability/auto-instrument/http-instrumentation.js +17 -1
  72. package/esm/src/observability/simple-metrics/otel-instruments.d.ts.map +1 -1
  73. package/esm/src/observability/simple-metrics/otel-instruments.js +12 -6
  74. package/esm/src/platform/adapters/fs/cache/file-cache.d.ts +4 -0
  75. package/esm/src/platform/adapters/fs/cache/file-cache.d.ts.map +1 -1
  76. package/esm/src/platform/adapters/fs/cache/file-cache.js +37 -19
  77. package/esm/src/platform/adapters/fs/veryfront/proxy-manager.d.ts.map +1 -1
  78. package/esm/src/platform/adapters/fs/veryfront/proxy-manager.js +11 -18
  79. package/esm/src/platform/adapters/fs/veryfront/retry.d.ts.map +1 -1
  80. package/esm/src/platform/adapters/fs/veryfront/retry.js +20 -3
  81. package/esm/src/platform/adapters/fs/veryfront/websocket-manager-helpers.d.ts.map +1 -1
  82. package/esm/src/platform/adapters/fs/veryfront/websocket-manager-helpers.js +12 -1
  83. package/esm/src/platform/adapters/fs/veryfront/websocket-manager.d.ts +7 -0
  84. package/esm/src/platform/adapters/fs/veryfront/websocket-manager.d.ts.map +1 -1
  85. package/esm/src/platform/adapters/fs/veryfront/websocket-manager.js +47 -10
  86. package/esm/src/platform/adapters/veryfront-api-client/client.d.ts +2 -0
  87. package/esm/src/platform/adapters/veryfront-api-client/client.d.ts.map +1 -1
  88. package/esm/src/platform/adapters/veryfront-api-client/client.js +35 -24
  89. package/esm/src/platform/adapters/veryfront-api-client/operations.js +2 -2
  90. package/esm/src/platform/compat/esbuild-init.js +10 -1
  91. package/esm/src/platform/compat/kv/factory.d.ts.map +1 -1
  92. package/esm/src/platform/compat/kv/factory.js +6 -2
  93. package/esm/src/platform/compat/process/command.d.ts.map +1 -1
  94. package/esm/src/platform/compat/process/command.js +13 -2
  95. package/esm/src/provider/local/local-engine.d.ts.map +1 -1
  96. package/esm/src/provider/local/local-engine.js +13 -6
  97. package/esm/src/provider/model-registry.d.ts.map +1 -1
  98. package/esm/src/provider/model-registry.js +2 -1
  99. package/esm/src/provider/runtime-loader/provider-http.d.ts +7 -1
  100. package/esm/src/provider/runtime-loader/provider-http.d.ts.map +1 -1
  101. package/esm/src/provider/runtime-loader/provider-http.js +19 -4
  102. package/esm/src/provider/runtime-loader/provider-request-init.d.ts.map +1 -1
  103. package/esm/src/provider/runtime-loader/provider-request-init.js +8 -1
  104. package/esm/src/provider/veryfront-cloud/model-catalog.d.ts +6 -1
  105. package/esm/src/provider/veryfront-cloud/model-catalog.d.ts.map +1 -1
  106. package/esm/src/provider/veryfront-cloud/model-catalog.js +17 -6
  107. package/esm/src/proxy/control-plane-signature.d.ts +12 -0
  108. package/esm/src/proxy/control-plane-signature.d.ts.map +1 -0
  109. package/esm/src/proxy/control-plane-signature.js +164 -0
  110. package/esm/src/proxy/handler.d.ts.map +1 -1
  111. package/esm/src/proxy/handler.js +29 -32
  112. package/esm/src/proxy/proxy-access-control.d.ts.map +1 -1
  113. package/esm/src/proxy/proxy-access-control.js +8 -1
  114. package/esm/src/proxy/token-manager.d.ts.map +1 -1
  115. package/esm/src/proxy/token-manager.js +9 -3
  116. package/esm/src/react/compat/hooks-adapter.d.ts.map +1 -1
  117. package/esm/src/react/compat/hooks-adapter.js +6 -5
  118. package/esm/src/react/compat/ssr-adapter/stream-renderer.d.ts.map +1 -1
  119. package/esm/src/react/compat/ssr-adapter/stream-renderer.js +14 -7
  120. package/esm/src/react/components/chat/chat/components/inline-citation.d.ts.map +1 -1
  121. package/esm/src/react/components/chat/chat/components/inline-citation.js +7 -1
  122. package/esm/src/react/components/chat/chat/components/tool-ui.d.ts.map +1 -1
  123. package/esm/src/react/components/chat/chat/components/tool-ui.js +11 -4
  124. package/esm/src/react/components/chat/chat/hooks/use-clipboard.d.ts.map +1 -1
  125. package/esm/src/react/components/chat/chat/hooks/use-clipboard.js +8 -1
  126. package/esm/src/react/components/chat/chat/hooks/use-conversations.d.ts.map +1 -1
  127. package/esm/src/react/components/chat/chat/hooks/use-conversations.js +15 -5
  128. package/esm/src/react/components/chat/chat/hooks/use-upload.d.ts.map +1 -1
  129. package/esm/src/react/components/chat/chat/hooks/use-upload.js +5 -0
  130. package/esm/src/react/components/chat/chat/hooks/use-uploads-registry.d.ts +4 -0
  131. package/esm/src/react/components/chat/chat/hooks/use-uploads-registry.d.ts.map +1 -1
  132. package/esm/src/react/components/chat/chat/hooks/use-uploads-registry.js +11 -1
  133. package/esm/src/react/components/chat/markdown.d.ts.map +1 -1
  134. package/esm/src/react/components/chat/markdown.js +26 -11
  135. package/esm/src/react/components/ui/app-shell.d.ts.map +1 -1
  136. package/esm/src/react/components/ui/app-shell.js +14 -2
  137. package/esm/src/react/components/ui/code-block.d.ts.map +1 -1
  138. package/esm/src/react/components/ui/code-block.js +27 -9
  139. package/esm/src/react/components/ui/floating.d.ts.map +1 -1
  140. package/esm/src/react/components/ui/floating.js +9 -3
  141. package/esm/src/release-assets/build-executor.js +18 -4
  142. package/esm/src/rendering/cache/stores/filesystem-store.d.ts.map +1 -1
  143. package/esm/src/rendering/cache/stores/filesystem-store.js +6 -2
  144. package/esm/src/rendering/orchestrator/html.d.ts.map +1 -1
  145. package/esm/src/rendering/orchestrator/html.js +57 -21
  146. package/esm/src/rendering/orchestrator/module-loader/index.d.ts.map +1 -1
  147. package/esm/src/rendering/orchestrator/module-loader/index.js +5 -0
  148. package/esm/src/rendering/page-rendering.d.ts.map +1 -1
  149. package/esm/src/rendering/page-rendering.js +6 -0
  150. package/esm/src/rendering/rsc/hydrate-client.ts +7 -2
  151. package/esm/src/rendering/script-page-handling.d.ts.map +1 -1
  152. package/esm/src/rendering/script-page-handling.js +9 -2
  153. package/esm/src/rendering/snippet-renderer.d.ts.map +1 -1
  154. package/esm/src/rendering/snippet-renderer.js +6 -3
  155. package/esm/src/rendering/ssr/component-registry.d.ts.map +1 -1
  156. package/esm/src/rendering/ssr/component-registry.js +5 -1
  157. package/esm/src/rendering/ssr-globals/fetch-interceptor.d.ts +12 -0
  158. package/esm/src/rendering/ssr-globals/fetch-interceptor.d.ts.map +1 -1
  159. package/esm/src/rendering/ssr-globals/fetch-interceptor.js +25 -1
  160. package/esm/src/rendering/virtual-module-system.d.ts +2 -2
  161. package/esm/src/rendering/virtual-module-system.d.ts.map +1 -1
  162. package/esm/src/rendering/virtual-module-system.js +28 -17
  163. package/esm/src/sandbox/config.d.ts.map +1 -1
  164. package/esm/src/sandbox/config.js +10 -3
  165. package/esm/src/sandbox/lazy-sandbox.d.ts +2 -0
  166. package/esm/src/sandbox/lazy-sandbox.d.ts.map +1 -1
  167. package/esm/src/sandbox/lazy-sandbox.js +28 -2
  168. package/esm/src/sandbox/sandbox.d.ts.map +1 -1
  169. package/esm/src/sandbox/sandbox.js +13 -2
  170. package/esm/src/security/csrf/helpers.d.ts.map +1 -1
  171. package/esm/src/security/csrf/helpers.js +7 -2
  172. package/esm/src/security/http/auth.d.ts.map +1 -1
  173. package/esm/src/security/http/auth.js +6 -1
  174. package/esm/src/security/http/config.d.ts.map +1 -1
  175. package/esm/src/security/http/config.js +8 -3
  176. package/esm/src/security/http/csrf/csrf-handler.d.ts.map +1 -1
  177. package/esm/src/security/http/csrf/csrf-handler.js +15 -3
  178. package/esm/src/security/secure-fs.d.ts.map +1 -1
  179. package/esm/src/security/secure-fs.js +5 -1
  180. package/esm/src/server/bootstrap.d.ts.map +1 -1
  181. package/esm/src/server/bootstrap.js +6 -0
  182. package/esm/src/server/build-routes.js +4 -0
  183. package/esm/src/server/dev-server/server.d.ts.map +1 -1
  184. package/esm/src/server/dev-server/server.js +8 -2
  185. package/esm/src/server/handlers/dev/framework-candidates.generated.d.ts.map +1 -1
  186. package/esm/src/server/handlers/dev/framework-candidates.generated.js +193 -13
  187. package/esm/src/server/handlers/request/api/pages-api-handler.d.ts.map +1 -1
  188. package/esm/src/server/handlers/request/api/pages-api-handler.js +9 -2
  189. package/esm/src/server/handlers/request/css.handler.d.ts.map +1 -1
  190. package/esm/src/server/handlers/request/css.handler.js +4 -1
  191. package/esm/src/server/handlers/request/ssr/ssr.handler.d.ts.map +1 -1
  192. package/esm/src/server/handlers/request/ssr/ssr.handler.js +20 -2
  193. package/esm/src/server/handlers/response/cors.d.ts.map +1 -1
  194. package/esm/src/server/handlers/response/cors.js +4 -1
  195. package/esm/src/server/production-server.js +13 -2
  196. package/esm/src/server/project-env/fetcher.d.ts.map +1 -1
  197. package/esm/src/server/project-env/fetcher.js +24 -14
  198. package/esm/src/server/runtime-handler/request-utils.d.ts.map +1 -1
  199. package/esm/src/server/runtime-handler/request-utils.js +4 -1
  200. package/esm/src/server/service-server.d.ts.map +1 -1
  201. package/esm/src/server/service-server.js +6 -2
  202. package/esm/src/server/services/rsc/endpoints/rsc-bundles.generated.d.ts.map +1 -1
  203. package/esm/src/server/services/rsc/endpoints/rsc-bundles.generated.js +1 -1
  204. package/esm/src/server/shared/renderer/adapter.d.ts.map +1 -1
  205. package/esm/src/server/shared/renderer/adapter.js +7 -0
  206. package/esm/src/server/shared/renderer/memory/pressure.d.ts.map +1 -1
  207. package/esm/src/server/shared/renderer/memory/pressure.js +4 -0
  208. package/esm/src/server/utils/domain-lookup.d.ts +11 -0
  209. package/esm/src/server/utils/domain-lookup.d.ts.map +1 -1
  210. package/esm/src/server/utils/domain-lookup.js +25 -3
  211. package/esm/src/skill/executor.d.ts.map +1 -1
  212. package/esm/src/skill/executor.js +5 -2
  213. package/esm/src/tool/remote-mcp.d.ts.map +1 -1
  214. package/esm/src/tool/remote-mcp.js +15 -3
  215. package/esm/src/transforms/esm/lexer.d.ts.map +1 -1
  216. package/esm/src/transforms/esm/lexer.js +15 -3
  217. package/esm/src/transforms/esm/package-registry.d.ts.map +1 -1
  218. package/esm/src/transforms/esm/package-registry.js +15 -1
  219. package/esm/src/transforms/mdx/compiler/import-rewriter.d.ts.map +1 -1
  220. package/esm/src/transforms/mdx/compiler/import-rewriter.js +17 -17
  221. package/esm/src/transforms/mdx/esm-module-loader/cache/index.d.ts +1 -2
  222. package/esm/src/transforms/mdx/esm-module-loader/cache/index.d.ts.map +1 -1
  223. package/esm/src/transforms/mdx/esm-module-loader/cache/index.js +7 -2
  224. package/esm/src/transforms/mdx/esm-module-loader/metadata/extractor.d.ts.map +1 -1
  225. package/esm/src/transforms/mdx/esm-module-loader/metadata/extractor.js +37 -4
  226. package/esm/src/transforms/mdx/esm-module-loader/metadata/string-parser.d.ts.map +1 -1
  227. package/esm/src/transforms/mdx/esm-module-loader/metadata/string-parser.js +14 -2
  228. package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/dependency-recovery.d.ts.map +1 -1
  229. package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/dependency-recovery.js +5 -1
  230. package/esm/src/transforms/mdx/esm-module-loader/utils/source-spans.d.ts.map +1 -1
  231. package/esm/src/transforms/mdx/esm-module-loader/utils/source-spans.js +12 -0
  232. package/esm/src/transforms/mdx/mdx-cache-adapter.js +2 -2
  233. package/esm/src/transforms/npm-import-rewrites.d.ts.map +1 -1
  234. package/esm/src/transforms/npm-import-rewrites.js +6 -1
  235. package/esm/src/transforms/pipeline/stages/ssr-vf-modules/constants.d.ts +3 -2
  236. package/esm/src/transforms/pipeline/stages/ssr-vf-modules/constants.d.ts.map +1 -1
  237. package/esm/src/transforms/pipeline/stages/ssr-vf-modules/constants.js +16 -4
  238. package/esm/src/transforms/pipeline/stages/ssr-vf-modules/transform.d.ts.map +1 -1
  239. package/esm/src/transforms/pipeline/stages/ssr-vf-modules/transform.js +17 -3
  240. package/esm/src/utils/env-loader.d.ts.map +1 -1
  241. package/esm/src/utils/env-loader.js +7 -3
  242. package/esm/src/utils/redis-client.d.ts +2 -0
  243. package/esm/src/utils/redis-client.d.ts.map +1 -1
  244. package/esm/src/utils/redis-client.js +53 -18
  245. package/esm/src/utils/version-constant.d.ts +1 -1
  246. package/esm/src/utils/version-constant.js +1 -1
  247. package/esm/src/workflow/backends/memory.d.ts.map +1 -1
  248. package/esm/src/workflow/backends/memory.js +23 -5
  249. package/esm/src/workflow/backends/redis/index.d.ts +22 -0
  250. package/esm/src/workflow/backends/redis/index.d.ts.map +1 -1
  251. package/esm/src/workflow/backends/redis/index.js +126 -15
  252. package/esm/src/workflow/claude-code/workspace-sync.d.ts +16 -2
  253. package/esm/src/workflow/claude-code/workspace-sync.d.ts.map +1 -1
  254. package/esm/src/workflow/claude-code/workspace-sync.js +43 -10
  255. package/esm/src/workflow/executor/dag/index.d.ts.map +1 -1
  256. package/esm/src/workflow/executor/dag/index.js +39 -21
  257. package/esm/src/workflow/executor/step-executor.d.ts +9 -0
  258. package/esm/src/workflow/executor/step-executor.d.ts.map +1 -1
  259. package/esm/src/workflow/executor/step-executor.js +22 -11
  260. package/esm/src/workflow/executor/workflow-executor.d.ts +2 -0
  261. package/esm/src/workflow/executor/workflow-executor.d.ts.map +1 -1
  262. package/esm/src/workflow/executor/workflow-executor.js +45 -5
  263. package/esm/src/workflow/react/use-workflow.d.ts.map +1 -1
  264. package/esm/src/workflow/react/use-workflow.js +3 -0
  265. package/esm/src/workflow/runtime/approval-manager.d.ts +6 -0
  266. package/esm/src/workflow/runtime/approval-manager.d.ts.map +1 -1
  267. package/esm/src/workflow/runtime/approval-manager.js +8 -2
  268. package/esm/src/workflow/schemas/workflow.schema.d.ts +2 -0
  269. package/esm/src/workflow/schemas/workflow.schema.d.ts.map +1 -1
  270. package/esm/src/workflow/schemas/workflow.schema.js +4 -0
  271. package/esm/src/workflow/worker/executors/process.d.ts.map +1 -1
  272. package/esm/src/workflow/worker/executors/process.js +6 -4
  273. package/esm/src/workflow/worker/run-manager.d.ts.map +1 -1
  274. package/esm/src/workflow/worker/run-manager.js +24 -9
  275. package/esm/src/workflow/worker/workflow-worker.d.ts.map +1 -1
  276. package/esm/src/workflow/worker/workflow-worker.js +13 -2
  277. package/package.json +4 -4
package/esm/deno.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export default {
2
2
  "name": "veryfront",
3
- "version": "0.1.1043",
3
+ "version": "0.1.1044",
4
4
  "license": "Apache-2.0",
5
5
  "nodeModulesDir": "auto",
6
6
  "minimumDependencyAge": {
@@ -1 +1 @@
1
- {"version":3,"file":"detached-start.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/ag-ui/detached-start.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"detached-start.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/ag-ui/detached-start.ts"],"names":[],"mappings":"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"}
@@ -200,7 +200,12 @@ export async function executeAgUiDetachedStart(options, input) {
200
200
  error,
201
201
  });
202
202
  }
203
- })().catch(() => undefined);
203
+ })().catch((error) => {
204
+ // The inner try/catch handles all expected errors (execution failure, onError, failRun).
205
+ // Reaching here means the session manager or onError callback itself threw — log so
206
+ // the broken error-reporting pipeline is visible and the run is not silently abandoned.
207
+ console.error("[detachedStart] Unexpected error escaped inner error handler for run", input.request.runId, error);
208
+ });
204
209
  scheduleDetachedTask(input.requestOrCtx, detachedTask);
205
210
  return Response.json({
206
211
  accepted: true,
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-handler.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/ag-ui/runtime-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,KAAK,EAAiB,MAAM,aAAa,CAAC;AACxD,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,KAAK,eAAe,EAAwB,MAAM,kBAAkB,CAAC;AAkB9E,2CAA2C;AAC3C,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,kBAAkB,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AA2SD,uDAAuD;AACvD,MAAM,WAAW,8BAA8B;IAC7C,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,kBAAkB,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,qBAAqB,CAAC,EAAE,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;CACjD;AAED,6DAA6D;AAC7D,MAAM,MAAM,yBAAyB,GAAG,CACtC,KAAK,EAAE,8BAA8B,KAClC,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;AAElC,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,MAAM,sBAAsB,GAAG,CACnC,KAAK,EAAE,2BAA2B,KAC/B,OAAO,CAAC,QAAQ,GAAG,SAAS,GAAG,IAAI,CAAC,GAAG,QAAQ,GAAG,SAAS,GAAG,IAAI,CAAC;AAExE,MAAM,WAAW,+BAA+B;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,MAAM,MAAM,kCAAkC,GAAG,CAC/C,KAAK,EAAE,+BAA+B,KACnC,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;AAElC,iDAAiD;AACjD,MAAM,WAAW,yBAAyB;IACxC,OAAO,CAAC,EACJ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvB,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACvF,WAAW,CAAC,EAAE,sBAAsB,CAAC;IACrC,uBAAuB,CAAC,EAAE,kCAAkC,CAAC;IAC7D,cAAc,CAAC,EAAE,uBAAuB,CAAC,eAAe,CAAC,CAAC;IAC1D,OAAO,CAAC,EAAE,yBAAyB,CAAC;IACpC,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,2BAA2B,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAChF,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,2BAA2B,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1E,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,2BAA2B,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAC1E;AAED,uEAAuE;AACvE,MAAM,WAAW,iCAAkC,SAAQ,yBAAyB;IAClF,KAAK,EAAE,KAAK,CAAC;CACd;AAED,mDAAmD;AACnD,MAAM,MAAM,wBAAwB,GAChC,iCAAiC,GACjC,CAAC,yBAAyB,GAAG;IAAE,KAAK,CAAC,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,yBAAyB,CAAA;CAAE,CAAC,CAAC;AAE5F,wCAAwC;AACxC,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,wBAAwB,GAC/B,CAAC,YAAY,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAmJ9C"}
1
+ {"version":3,"file":"runtime-handler.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/ag-ui/runtime-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,KAAK,EAAiB,MAAM,aAAa,CAAC;AACxD,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,KAAK,eAAe,EAAwB,MAAM,kBAAkB,CAAC;AAkB9E,2CAA2C;AAC3C,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,kBAAkB,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AA6SD,uDAAuD;AACvD,MAAM,WAAW,8BAA8B;IAC7C,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,kBAAkB,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,qBAAqB,CAAC,EAAE,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;CACjD;AAED,6DAA6D;AAC7D,MAAM,MAAM,yBAAyB,GAAG,CACtC,KAAK,EAAE,8BAA8B,KAClC,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;AAElC,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,MAAM,sBAAsB,GAAG,CACnC,KAAK,EAAE,2BAA2B,KAC/B,OAAO,CAAC,QAAQ,GAAG,SAAS,GAAG,IAAI,CAAC,GAAG,QAAQ,GAAG,SAAS,GAAG,IAAI,CAAC;AAExE,MAAM,WAAW,+BAA+B;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,MAAM,MAAM,kCAAkC,GAAG,CAC/C,KAAK,EAAE,+BAA+B,KACnC,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;AAElC,iDAAiD;AACjD,MAAM,WAAW,yBAAyB;IACxC,OAAO,CAAC,EACJ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvB,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACvF,WAAW,CAAC,EAAE,sBAAsB,CAAC;IACrC,uBAAuB,CAAC,EAAE,kCAAkC,CAAC;IAC7D,cAAc,CAAC,EAAE,uBAAuB,CAAC,eAAe,CAAC,CAAC;IAC1D,OAAO,CAAC,EAAE,yBAAyB,CAAC;IACpC,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,2BAA2B,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAChF,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,2BAA2B,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1E,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,2BAA2B,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAC1E;AAED,uEAAuE;AACvE,MAAM,WAAW,iCAAkC,SAAQ,yBAAyB;IAClF,KAAK,EAAE,KAAK,CAAC;CACd;AAED,mDAAmD;AACnD,MAAM,MAAM,wBAAwB,GAChC,iCAAiC,GACjC,CAAC,yBAAyB,GAAG;IAAE,KAAK,CAAC,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,yBAAyB,CAAA;CAAE,CAAC,CAAC;AAE5F,wCAAwC;AACxC,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,wBAAwB,GAC/B,CAAC,YAAY,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAmJ9C"}
@@ -16,10 +16,12 @@ function invokeLifecycleCallback(callback, context) {
16
16
  return;
17
17
  try {
18
18
  const result = callback(context);
19
- void Promise.resolve(result).catch(() => undefined);
19
+ void Promise.resolve(result).catch((error) => {
20
+ console.error("[AgUiRuntime] Lifecycle callback rejected:", error);
21
+ });
20
22
  }
21
- catch {
22
- return;
23
+ catch (error) {
24
+ console.error("[AgUiRuntime] Lifecycle callback threw:", error);
23
25
  }
24
26
  }
25
27
  async function invokeLifecycleCallbackAndWait(callback, context) {
@@ -28,8 +30,8 @@ async function invokeLifecycleCallbackAndWait(callback, context) {
28
30
  try {
29
31
  await callback(context);
30
32
  }
31
- catch {
32
- return;
33
+ catch (error) {
34
+ console.error("[AgUiRuntime] Lifecycle callback (await) threw:", error);
33
35
  }
34
36
  }
35
37
  function isRecord(value) {
@@ -1 +1 @@
1
- {"version":3,"file":"chat-execution-runtime.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/chat-execution-runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-execution-runtime.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/chat-execution-runtime.ts"],"names":[],"mappings":"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"}
@@ -37,8 +37,13 @@ function createHostedChatExecutionCleanup(cleanup) {
37
37
  await cleanup();
38
38
  };
39
39
  }
40
+ // `invoke_agent` can legitimately run longer than the idle timeout (it delegates
41
+ // to a sub-agent), so hosted runs must exempt it from the watchdog's idle abort.
42
+ // The shared watchdog no longer bakes this product-specific name into its default,
43
+ // so the exemption is passed explicitly here at the hosted call site.
44
+ const HOSTED_LONG_RUNNING_TOOL_NAMES = ["invoke_agent"];
40
45
  function createDefaultHostedChatExecutionRootStreamWatchdog() {
41
- return createChatStreamWatchdog();
46
+ return createChatStreamWatchdog({ longRunningToolNames: HOSTED_LONG_RUNNING_TOOL_NAMES });
42
47
  }
43
48
  function resolveStreamBootstrapKeepaliveIntervalMs(intervalMs) {
44
49
  if (typeof intervalMs !== "number" || !Number.isFinite(intervalMs) || intervalMs <= 0) {
@@ -43,6 +43,8 @@ export interface MonitorHostedChildRunStatusInput {
43
43
  abortSignal?: AbortSignal;
44
44
  pollIntervalMs: number;
45
45
  onTerminal: (error: HostedChildTerminalStateError) => void;
46
+ /** Called when a poll attempt fails; receives the error and consecutive failure count. */
47
+ onMonitoringError?: (error: unknown, consecutiveFailures: number) => void;
46
48
  }
47
49
  /** Monitor hosted child run status helper. */
48
50
  export declare function monitorHostedChildRunStatus(input: MonitorHostedChildRunStatusInput): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"child-status.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/child-status.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,yBAAyB,EAAsB,MAAM,4BAA4B,CAAC;AAEhG,4DAA4D;AAC5D,MAAM,WAAW,yBAAyB;IACxC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,2BAA2B,EAAE,MAAM,CAAC;CACrC;AAED,KAAK,2BAA2B,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;AAEvE,sDAAsD;AACtD,eAAO,MAAM,6BAA6B;;;;EAIxC,CAAC;AAEH,uEAAuE;AACvE,MAAM,MAAM,4BAA4B,GACtC,CAAC,OAAO,6BAA6B,CAAC,CAAC,MAAM,OAAO,6BAA6B,CAAC,CAAC;AAErF,6DAA6D;AAC7D,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,4BAA4B,CAMvC;AAED,yEAAyE;AACzE,MAAM,WAAW,mCAAmC;IAClD,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAOD,wDAAwD;AACxD,wBAAgB,mCAAmC,CACjD,MAAM,EAAE,OAAO,GACd,MAAM,IAAI,mCAAmC,CAa/C;AAED,4DAA4D;AAC5D,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAC7C,2BAA2B,EAC3B,WAAW,GAAG,QAAQ,GAAG,WAAW,CACrC,CAAC;AAEF,mDAAmD;AACnD,qBAAa,6BAA8B,SAAQ,KAAK;IAEpD,QAAQ,CAAC,MAAM,EAAE,yBAAyB;IAC1C,QAAQ,CAAC,WAAW,EAAE,yBAAyB;gBADtC,MAAM,EAAE,yBAAyB,EACjC,WAAW,EAAE,yBAAyB;CAOlD;AAQD,wDAAwD;AACxD,wBAAgB,mCAAmC,CACjD,MAAM,EAAE,yBAAyB,GAChC,4BAA4B,CAW9B;AA2BD,yDAAyD;AACzD,MAAM,WAAW,gCAAgC;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,yBAAyB,CAAC;IACvC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,CAAC,KAAK,EAAE,6BAA6B,KAAK,IAAI,CAAC;CAC5D;AAED,8CAA8C;AAC9C,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,gCAAgC,GACtC,OAAO,CAAC,IAAI,CAAC,CAiCf"}
1
+ {"version":3,"file":"child-status.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/child-status.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,yBAAyB,EAAsB,MAAM,4BAA4B,CAAC;AAEhG,4DAA4D;AAC5D,MAAM,WAAW,yBAAyB;IACxC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,2BAA2B,EAAE,MAAM,CAAC;CACrC;AAED,KAAK,2BAA2B,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;AAEvE,sDAAsD;AACtD,eAAO,MAAM,6BAA6B;;;;EAIxC,CAAC;AAEH,uEAAuE;AACvE,MAAM,MAAM,4BAA4B,GACtC,CAAC,OAAO,6BAA6B,CAAC,CAAC,MAAM,OAAO,6BAA6B,CAAC,CAAC;AAErF,6DAA6D;AAC7D,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,4BAA4B,CAMvC;AAED,yEAAyE;AACzE,MAAM,WAAW,mCAAmC;IAClD,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAOD,wDAAwD;AACxD,wBAAgB,mCAAmC,CACjD,MAAM,EAAE,OAAO,GACd,MAAM,IAAI,mCAAmC,CAY/C;AAED,4DAA4D;AAC5D,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAC7C,2BAA2B,EAC3B,WAAW,GAAG,QAAQ,GAAG,WAAW,CACrC,CAAC;AAEF,mDAAmD;AACnD,qBAAa,6BAA8B,SAAQ,KAAK;IAEpD,QAAQ,CAAC,MAAM,EAAE,yBAAyB;IAC1C,QAAQ,CAAC,WAAW,EAAE,yBAAyB;gBADtC,MAAM,EAAE,yBAAyB,EACjC,WAAW,EAAE,yBAAyB;CAOlD;AAQD,wDAAwD;AACxD,wBAAgB,mCAAmC,CACjD,MAAM,EAAE,yBAAyB,GAChC,4BAA4B,CAW9B;AA8BD,yDAAyD;AACzD,MAAM,WAAW,gCAAgC;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,yBAAyB,CAAC;IACvC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,CAAC,KAAK,EAAE,6BAA6B,KAAK,IAAI,CAAC;IAC3D,0FAA0F;IAC1F,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3E;AAED,8CAA8C;AAC9C,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,gCAAgC,GACtC,OAAO,CAAC,IAAI,CAAC,CAgDf"}
@@ -22,10 +22,9 @@ export function shouldBlockHostedChildSameTurnRetry(result) {
22
22
  return false;
23
23
  }
24
24
  const terminalErrorCode = getOptionalStringProperty(result, "terminalErrorCode");
25
- const terminalErrorMessage = getOptionalStringProperty(result, "terminalErrorMessage");
25
+ // Rely only on the structured error code — message text is an unstable implementation detail.
26
26
  return (terminalErrorCode === "CANCELLED" ||
27
- terminalErrorCode === hostedChildTerminalErrorCodes.cancelled ||
28
- terminalErrorMessage === "Child run cancelled");
27
+ terminalErrorCode === hostedChildTerminalErrorCodes.cancelled);
29
28
  }
30
29
  /** Error shape for hosted child terminal state. */
31
30
  export class HostedChildTerminalStateError extends Error {
@@ -74,8 +73,11 @@ async function waitForHostedChildStatusPoll(ms, abortSignal) {
74
73
  function isAbortError(error) {
75
74
  return error instanceof DOMException && error.name === "AbortError";
76
75
  }
76
+ /** Maximum number of consecutive poll failures before the monitor aborts. */
77
+ const MAX_CONSECUTIVE_POLL_FAILURES = 5;
77
78
  /** Monitor hosted child run status helper. */
78
79
  export async function monitorHostedChildRunStatus(input) {
80
+ let consecutiveFailures = 0;
79
81
  while (!input.abortSignal?.aborted) {
80
82
  await waitForHostedChildStatusPoll(input.pollIntervalMs, input.abortSignal);
81
83
  if (input.abortSignal?.aborted) {
@@ -89,6 +91,7 @@ export async function monitorHostedChildRunStatus(input) {
89
91
  runId: input.identifiers.childRunId,
90
92
  abortSignal: input.abortSignal,
91
93
  });
94
+ consecutiveFailures = 0;
92
95
  if (isActiveHostedChildStatus(run.status)) {
93
96
  continue;
94
97
  }
@@ -99,6 +102,12 @@ export async function monitorHostedChildRunStatus(input) {
99
102
  if (input.abortSignal?.aborted || isAbortError(error)) {
100
103
  return;
101
104
  }
105
+ consecutiveFailures++;
106
+ input.onMonitoringError?.(error, consecutiveFailures);
107
+ if (consecutiveFailures >= MAX_CONSECUTIVE_POLL_FAILURES) {
108
+ console.error(`[monitorHostedChildRunStatus] Aborting status monitor after ${MAX_CONSECUTIVE_POLL_FAILURES} consecutive failures for run ${input.identifiers.childRunId}`, error);
109
+ return;
110
+ }
102
111
  }
103
112
  }
104
113
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cloud-prepared-chat-execution-runtime.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/cloud-prepared-chat-execution-runtime.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,yBAAyB,EAE/B,MAAM,+BAA+B,CAAC;AAGvC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,6BAA6B,CAAC;AACpF,OAAO,KAAK,EAAE,yCAAyC,EAAE,MAAM,8BAA8B,CAAC;AAE9F,2DAA2D;AAC3D,eAAO,MAAM,sCAAsC,0CAA0C,CAAC;AAC9F,kEAAkE;AAClE,eAAO,MAAM,sCAAsC,0CAA0C,CAAC;AAE9F,KAAK,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;AAWhE,8FAA8F;AAC9F,wBAAgB,8CAA8C,CAC5D,GAAG,GAAE,qBAGJ,GACA,IAAI,CAAC,yBAAyB,EAAE,eAAe,GAAG,sBAAsB,CAAC,CAQ3E;AAED,gGAAgG;AAChG,wBAAgB,mDAAmD,CACjE,OAAO,EAAE,IAAI,CAAC,yBAAyB,EAAE,eAAe,GAAG,sBAAsB,CAAC,GACjF,IAAI,CACL,yCAAyC,EACzC,oCAAoC,GAAG,0BAA0B,CAClE,CAaA;AAED,+FAA+F;AAC/F,MAAM,MAAM,kEAAkE,GAAG;IAC/E,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;IACrB,MAAM,EAAE,yCAAyC,CAAC,QAAQ,CAAC,CAAC;IAC5D,MAAM,CAAC,EAAE,gCAAgC,CAAC;IAC1C,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAChG,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/E,uBAAuB,CAAC,EAAE,CAAC,UAAU,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACrE,wBAAwB,CAAC,EAAE,yCAAyC,CAAC,0BAA0B,CAAC,CAAC;IACjG,kCAAkC,CAAC,EAAE,yCAAyC,CAC5E,oCAAoC,CACrC,CAAC;IACF,wBAAwB,CAAC,EAAE,yCAAyC,CAClE,0BAA0B,CAC3B,CAAC;CACH,CAAC;AAEF,yFAAyF;AACzF,wBAAgB,6DAA6D,CAC3E,KAAK,EAAE,kEAAkE,GACxE,yCAAyC,CA0B3C"}
1
+ {"version":3,"file":"cloud-prepared-chat-execution-runtime.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/cloud-prepared-chat-execution-runtime.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,yBAAyB,EAE/B,MAAM,+BAA+B,CAAC;AAGvC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,6BAA6B,CAAC;AACpF,OAAO,KAAK,EAAE,yCAAyC,EAAE,MAAM,8BAA8B,CAAC;AAE9F,2DAA2D;AAC3D,eAAO,MAAM,sCAAsC,0CAA0C,CAAC;AAC9F,kEAAkE;AAClE,eAAO,MAAM,sCAAsC,0CAA0C,CAAC;AAE9F,KAAK,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;AAWhE,8FAA8F;AAC9F,wBAAgB,8CAA8C,CAC5D,GAAG,GAAE,qBAGJ,GACA,IAAI,CAAC,yBAAyB,EAAE,eAAe,GAAG,sBAAsB,CAAC,CAQ3E;AAED,gGAAgG;AAChG,wBAAgB,mDAAmD,CACjE,OAAO,EAAE,IAAI,CAAC,yBAAyB,EAAE,eAAe,GAAG,sBAAsB,CAAC,GACjF,IAAI,CACL,yCAAyC,EACzC,oCAAoC,GAAG,0BAA0B,CAClE,CAaA;AAED,+FAA+F;AAC/F,MAAM,MAAM,kEAAkE,GAAG;IAC/E,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;IACrB,MAAM,EAAE,yCAAyC,CAAC,QAAQ,CAAC,CAAC;IAC5D,MAAM,CAAC,EAAE,gCAAgC,CAAC;IAC1C,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAChG,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/E,uBAAuB,CAAC,EAAE,CAAC,UAAU,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACrE,wBAAwB,CAAC,EAAE,yCAAyC,CAAC,0BAA0B,CAAC,CAAC;IACjG,kCAAkC,CAAC,EAAE,yCAAyC,CAC5E,oCAAoC,CACrC,CAAC;IACF,wBAAwB,CAAC,EAAE,yCAAyC,CAClE,0BAA0B,CAC3B,CAAC;CACH,CAAC;AAEF,yFAAyF;AACzF,wBAAgB,6DAA6D,CAC3E,KAAK,EAAE,kEAAkE,GACxE,yCAAyC,CA8B3C"}
@@ -52,6 +52,10 @@ export function createVeryfrontCloudPreparedHostedChatExecutionRuntimeOptions(in
52
52
  createRootStreamWatchdog: input.createRootStreamWatchdog ??
53
53
  (() => createChatStreamWatchdog({
54
54
  ...watchdogOptions,
55
+ // `invoke_agent` delegates to a sub-agent and can outlast the idle
56
+ // timeout; the shared watchdog no longer defaults this product-specific
57
+ // exemption, so pass it explicitly for hosted runs.
58
+ longRunningToolNames: ["invoke_agent"],
55
59
  setTimeoutFn: dntShim.dntGlobalThis.setTimeout,
56
60
  clearTimeoutFn: globalThis.clearTimeout,
57
61
  })),
@@ -20,6 +20,8 @@ export interface RunHostedResponseStreamWithHeartbeatOptions<TChunk> {
20
20
  writer: HostedResponseStreamWriter<TChunk>;
21
21
  heartbeat?: HostedResponseStreamHeartbeat<TChunk>;
22
22
  runId?: string;
23
+ /** Optional abort signal for external cancellation of the hosted lifecycle. */
24
+ abortSignal?: AbortSignal;
23
25
  }
24
26
  /** Run hosted response stream with heartbeat. */
25
27
  export declare function runHostedResponseStreamWithHeartbeat<TChunk>(options: RunHostedResponseStreamWithHeartbeatOptions<TChunk>): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"response-stream.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/response-stream.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,wBAAwB,EAAsB,MAAM,gBAAgB,CAAC;AAEnF,6DAA6D;AAC7D,MAAM,WAAW,0BAA0B,CAAC,MAAM;IAChD,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAChC;AAED,kDAAkD;AAClD,MAAM,WAAW,kCAAkC;IACjD,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,gEAAgE;AAChE,MAAM,WAAW,6BAA6B,CAAC,MAAM;IACnD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,kCAAkC,KAAK,IAAI,CAAC;IAC7D,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,kCAAkC,KAAK,IAAI,CAAC;CAC9D;AAED,MAAM,WAAW,2CAA2C,CAAC,MAAM;IACjE,SAAS,EAAE,wBAAwB,CAAC,MAAM,CAAC,CAAC;IAC5C,MAAM,EAAE,0BAA0B,CAAC,MAAM,CAAC,CAAC;IAC3C,SAAS,CAAC,EAAE,6BAA6B,CAAC,MAAM,CAAC,CAAC;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAqCD,iDAAiD;AACjD,wBAAsB,oCAAoC,CAAC,MAAM,EAC/D,OAAO,EAAE,2CAA2C,CAAC,MAAM,CAAC,GAC3D,OAAO,CAAC,IAAI,CAAC,CAuBf"}
1
+ {"version":3,"file":"response-stream.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/response-stream.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,wBAAwB,EAAsB,MAAM,gBAAgB,CAAC;AAEnF,6DAA6D;AAC7D,MAAM,WAAW,0BAA0B,CAAC,MAAM;IAChD,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAChC;AAED,kDAAkD;AAClD,MAAM,WAAW,kCAAkC;IACjD,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,gEAAgE;AAChE,MAAM,WAAW,6BAA6B,CAAC,MAAM;IACnD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,kCAAkC,KAAK,IAAI,CAAC;IAC7D,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,kCAAkC,KAAK,IAAI,CAAC;CAC9D;AAED,MAAM,WAAW,2CAA2C,CAAC,MAAM;IACjE,SAAS,EAAE,wBAAwB,CAAC,MAAM,CAAC,CAAC;IAC5C,MAAM,EAAE,0BAA0B,CAAC,MAAM,CAAC,CAAC;IAC3C,SAAS,CAAC,EAAE,6BAA6B,CAAC,MAAM,CAAC,CAAC;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+EAA+E;IAC/E,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAqCD,iDAAiD;AACjD,wBAAsB,oCAAoC,CAAC,MAAM,EAC/D,OAAO,EAAE,2CAA2C,CAAC,MAAM,CAAC,GAC3D,OAAO,CAAC,IAAI,CAAC,CAuBf"}
@@ -36,7 +36,7 @@ export async function runHostedResponseStreamWithHeartbeat(options) {
36
36
  : null;
37
37
  try {
38
38
  await runHostedLifecycle({
39
- abortSignal: new AbortController().signal,
39
+ abortSignal: options.abortSignal ?? new AbortController().signal,
40
40
  execution: options.execution,
41
41
  adapter: {
42
42
  startRun: () => ({ runId: options.runId ?? "response-stream" }),
@@ -1 +1 @@
1
- {"version":3,"file":"veryfront-cloud-agent-service.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/veryfront-cloud-agent-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"veryfront-cloud-agent-service.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/veryfront-cloud-agent-service.ts"],"names":[],"mappings":"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"}
@@ -206,6 +206,10 @@ async function importOpenTelemetryNodeTelemetryProvider() {
206
206
  return null;
207
207
  }
208
208
  }
209
+ // Runtime heuristic: detects a missing optional npm/Deno package by error message text.
210
+ // These strings come from Node, Deno, and bundler runtimes and can vary by version.
211
+ // If the wording changes, a missing optional package will throw instead of returning null,
212
+ // turning an optional dependency into a hard startup failure — the safe fallback.
209
213
  function isMissingOptionalPackageError(error) {
210
214
  const message = error instanceof Error ? error.message : String(error);
211
215
  return message.includes("Cannot find package") ||
@@ -1 +1 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../../../src/src/agent/middleware/cache/cache.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAOrE,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,QAAQ,GAAG,KAAK,GAAG,KAAK,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC;CAC7E;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,aAAa,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;CACxB;AAkLD,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG;IAChD,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,aAAa,GAAG,IAAI,CAAC;IAC5E,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACrF,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC;IAC/D,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC/D,KAAK,IAAI,IAAI,CAAC;IACd,IAAI,IAAI,MAAM,CAAC;IACf,OAAO,IAAI,IAAI,CAAC;CACjB,CAmCA;AAkCD,wBAAgB,eAAe,CAC7B,MAAM,EAAE,WAAW,GAClB,eAAe,GAAG;IAAE,OAAO,IAAI,IAAI,CAAA;CAAE,CAuCvC"}
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../../../src/src/agent/middleware/cache/cache.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAOrE,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,QAAQ,GAAG,KAAK,GAAG,KAAK,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC;CAC7E;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,aAAa,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;CACxB;AAuLD,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG;IAChD,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,aAAa,GAAG,IAAI,CAAC;IAC5E,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACrF,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC;IAC/D,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC/D,KAAK,IAAI,IAAI,CAAC;IACd,IAAI,IAAI,MAAM,CAAC;IACf,OAAO,IAAI,IAAI,CAAC;CACjB,CAmCA;AAwCD,wBAAgB,eAAe,CAC7B,MAAM,EAAE,WAAW,GAClB,eAAe,GAAG;IAAE,OAAO,IAAI,IAAI,CAAA;CAAE,CAuCvC"}
@@ -139,6 +139,10 @@ class TTLCache {
139
139
  }
140
140
  }
141
141
  }, TTL_CLEANUP_INTERVAL_MS);
142
+ // Unref so this timer does not keep the process alive when all other work
143
+ // is done. destroy() handles explicit cleanup when the cache is torn down.
144
+ const interval = this.cleanupInterval;
145
+ interval.unref?.();
142
146
  }
143
147
  }
144
148
  function createCacheByStrategy(config) {
@@ -186,13 +190,19 @@ export function createCache(config) {
186
190
  },
187
191
  };
188
192
  }
193
+ // FNV-1a 64-bit hash — far fewer collisions than a 32-bit DJB2 for the long
194
+ // prompt strings used as cache keys. BigInt keeps arithmetic exact across the
195
+ // full 64-bit range without overflow.
189
196
  function hashString(str) {
190
- let hash = 0;
197
+ const FNV_OFFSET_BASIS = 14695981039346656037n;
198
+ const FNV_PRIME = 1099511628211n;
199
+ const MASK_64 = (1n << 64n) - 1n;
200
+ let hash = FNV_OFFSET_BASIS;
191
201
  for (let i = 0; i < str.length; i++) {
192
- hash = (hash << 5) - hash + str.charCodeAt(i);
193
- hash &= hash;
202
+ hash ^= BigInt(str.charCodeAt(i));
203
+ hash = (hash * FNV_PRIME) & MASK_64;
194
204
  }
195
- return Math.abs(hash).toString(36);
205
+ return hash.toString(36);
196
206
  }
197
207
  /**
198
208
  * Default key generator that includes project context to prevent multi-tenant
@@ -2,6 +2,12 @@ export declare const DEFAULT_MAX_TOKENS: 4096;
2
2
  export declare const DEFAULT_TEMPERATURE: 0;
3
3
  export declare const MAX_STREAM_BUFFER_SIZE: number;
4
4
  export declare const DEFAULT_MAX_STEPS = 20;
5
+ /**
6
+ * Conservative fallback max output token limit for models not in MODEL_MAX_OUTPUT_TOKENS.
7
+ * Using a lower bound prevents unbounded generation on unknown models; update the table
8
+ * with the actual limit once the model is confirmed.
9
+ */
10
+ export declare const FALLBACK_MODEL_MAX_OUTPUT_TOKENS = 4096;
5
11
  /** Look up max output tokens for a model, stripping the `veryfront-cloud/` prefix. */
6
- export declare function getModelMaxOutputTokens(modelString: string): number | undefined;
12
+ export declare function getModelMaxOutputTokens(modelString: string): number;
7
13
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/runtime/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,kBAAkB,MAA2B,CAAC;AAC3D,eAAO,MAAM,mBAAmB,GAA6B,CAAC;AAC9D,eAAO,MAAM,sBAAsB,QAAmC,CAAC;AACvE,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAmCpC,sFAAsF;AACtF,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAK/E"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/runtime/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,kBAAkB,MAA2B,CAAC;AAC3D,eAAO,MAAM,mBAAmB,GAA6B,CAAC;AAC9D,eAAO,MAAM,sBAAsB,QAAmC,CAAC;AACvE,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAwCpC;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,OAAQ,CAAC;AAEtD,sFAAsF;AACtF,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAMnE"}
@@ -3,7 +3,12 @@ export const DEFAULT_MAX_TOKENS = AGENT_DEFAULTS.maxTokens;
3
3
  export const DEFAULT_TEMPERATURE = AGENT_DEFAULTS.temperature;
4
4
  export const MAX_STREAM_BUFFER_SIZE = STREAMING_DEFAULTS.maxBufferSize;
5
5
  export const DEFAULT_MAX_STEPS = 20;
6
- /** Max output token limits per model (normalized IDs without `veryfront-cloud/` prefix). */
6
+ /**
7
+ * Max output token limits per model (normalized IDs without `veryfront-cloud/` prefix).
8
+ *
9
+ * MAINTENANCE: This table must be updated whenever a new model is added or an existing
10
+ * model's limit changes. Models absent from the table fall back to FALLBACK_MODEL_MAX_OUTPUT_TOKENS.
11
+ */
7
12
  const MODEL_MAX_OUTPUT_TOKENS = {
8
13
  "anthropic/claude-opus-4-8": 128_000,
9
14
  "anthropic/claude-opus-4-6": 128_000,
@@ -34,10 +39,17 @@ const MODEL_MAX_OUTPUT_TOKEN_ALIASES = {
34
39
  "google/gemini-2.5-pro": "google-ai-studio/gemini-2.5-pro",
35
40
  "google/gemini-2.5-flash": "google-ai-studio/gemini-2.5-flash",
36
41
  };
42
+ /**
43
+ * Conservative fallback max output token limit for models not in MODEL_MAX_OUTPUT_TOKENS.
44
+ * Using a lower bound prevents unbounded generation on unknown models; update the table
45
+ * with the actual limit once the model is confirmed.
46
+ */
47
+ export const FALLBACK_MODEL_MAX_OUTPUT_TOKENS = 4_096;
37
48
  /** Look up max output tokens for a model, stripping the `veryfront-cloud/` prefix. */
38
49
  export function getModelMaxOutputTokens(modelString) {
39
50
  const normalized = modelString.startsWith("veryfront-cloud/")
40
51
  ? modelString.slice("veryfront-cloud/".length)
41
52
  : modelString;
42
- return MODEL_MAX_OUTPUT_TOKENS[MODEL_MAX_OUTPUT_TOKEN_ALIASES[normalized] ?? normalized];
53
+ return MODEL_MAX_OUTPUT_TOKENS[MODEL_MAX_OUTPUT_TOKEN_ALIASES[normalized] ?? normalized] ??
54
+ FALLBACK_MODEL_MAX_OUTPUT_TOKENS;
43
55
  }
@@ -1 +1 @@
1
- {"version":3,"file":"model-capabilities.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/runtime/model-capabilities.ts"],"names":[],"mappings":"AA4BA,wBAAgB,mBAAmB,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAetF;AAED,wBAAgB,0BAA0B,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAKnF;AAED,wBAAgB,4BAA4B,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAI1E;AAED,wBAAgB,4BAA4B,CAC1C,WAAW,CAAC,EAAE,MAAM,EACpB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACxC,MAAM,GAAG,SAAS,CASpB;AAED,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,oBAAoB,EAAE,MAAM,GAAG,SAAS,EACxC,kBAAkB,EAAE,MAAM,EAC1B,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACxC,MAAM,GAAG,SAAS,CAWpB"}
1
+ {"version":3,"file":"model-capabilities.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/runtime/model-capabilities.ts"],"names":[],"mappings":"AAgCA,wBAAgB,mBAAmB,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAetF;AAED,wBAAgB,0BAA0B,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAKnF;AAED,wBAAgB,4BAA4B,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAI1E;AAED,wBAAgB,4BAA4B,CAC1C,WAAW,CAAC,EAAE,MAAM,EACpB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACxC,MAAM,GAAG,SAAS,CASpB;AAED,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,oBAAoB,EAAE,MAAM,GAAG,SAAS,EACxC,kBAAkB,EAAE,MAAM,EAC1B,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACxC,MAAM,GAAG,SAAS,CAWpB"}
@@ -1,4 +1,8 @@
1
1
  const VERYFRONT_CLOUD_MODEL_PREFIX = "veryfront-cloud/";
2
+ // MAINTENANCE: Update this set whenever a new model is released that does not
3
+ // accept a temperature parameter. Models absent from this set are assumed to
4
+ // support temperature; the consequence of a missing entry is an ignored parameter,
5
+ // not a hard error.
2
6
  const MODELS_WITHOUT_TEMPERATURE_PARAMETER = new Set([
3
7
  "anthropic/claude-opus-4-7",
4
8
  "anthropic/claude-opus-4-8",
@@ -1 +1 @@
1
- {"version":3,"file":"sse-utils.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/runtime/sse-utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH;;;GAGG;AACH,wBAAgB,OAAO,CACrB,UAAU,EAAE,+BAA+B,EAC3C,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,IAAI,CAUN;AAED,wBAAgB,cAAc,CAAC,UAAU,EAAE,+BAA+B,GAAG,IAAI,CAUhF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C"}
1
+ {"version":3,"file":"sse-utils.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/runtime/sse-utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAcH;;;GAGG;AACH,wBAAgB,OAAO,CACrB,UAAU,EAAE,+BAA+B,EAC3C,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,IAAI,CAUN;AAED,wBAAgB,cAAc,CAAC,UAAU,EAAE,+BAA+B,GAAG,IAAI,CAUhF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C"}
@@ -5,6 +5,12 @@
5
5
  *
6
6
  * @module ai/agent/runtime/sse-utils
7
7
  */
8
+ // Runtime heuristic: detects a write to an already-closed ReadableStream controller.
9
+ // The matched message is a Deno/browser engine implementation detail and may change
10
+ // across runtime versions. If the wording ever changes, writes to closed controllers
11
+ // will throw instead of being silently tolerated — this is the safe failure mode
12
+ // (the stream is already gone) but it will appear as an unhandled error.
13
+ import * as dntShim from "../../../_dnt.shims.js";
8
14
  function isClosedStreamControllerError(error) {
9
15
  return error instanceof TypeError &&
10
16
  error.message.includes("The stream controller cannot close or enqueue");
@@ -39,5 +45,5 @@ export function closeSSEStream(controller) {
39
45
  * Generate a unique message ID for streaming.
40
46
  */
41
47
  export function generateMessageId() {
42
- return `msg-${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 8)}`;
48
+ return `msg-${dntShim.crypto.randomUUID()}`;
43
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/service/registration.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAmB,MAAM,kCAAkC,CAAC;AAIhF,+DAA+D;AAC/D,MAAM,MAAM,4BAA4B,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;AAC3E,wDAAwD;AACxD,MAAM,MAAM,8BAA8B,GAAG;IAC3C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,oCAAoC,EAAE,4BAA4B,CAAC;IACnE,6CAA6C,EAAE,MAAM,CAAC;IACtD,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AACF,6DAA6D;AAC7D,MAAM,MAAM,qCAAqC,GAAG;IAClD,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,QAAQ,GAAG,SAAS,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mBAAmB,EAAE,MAAM,CAAC;CAC7B,CAAC;AACF,+DAA+D;AAC/D,MAAM,MAAM,2BAA2B,GAAG;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,QAAQ,GAAG,SAAS,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC9B,YAAY,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AACF,+DAA+D;AAC/D,MAAM,MAAM,sCAAsC,GAAG;IACnD,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,QAAQ,GAAG,SAAS,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAQF,eAAO,MAAM,kCAAkC,sCAE9C,CAAC;AAEF,wDAAwD;AACxD,eAAO,MAAM,oCAAoC,wCAgBhD,CAAC;AAEF,gEAAgE;AAChE,eAAO,MAAM,2CAA2C,+CAkBvD,CAAC;AAoDF,iEAAiE;AACjE,MAAM,MAAM,8BAA8B,GAAG;IAC3C,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACrE,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACrE,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;CACvE,CAAC;AAEF,oEAAoE;AACpE,MAAM,MAAM,2CAA2C,GAAG;IACxD,MAAM,EAAE,8BAA8B,CAAC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,oEAAoE;AACpE,MAAM,MAAM,iCAAiC,GAAG;IAC9C,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,2BAA2B,CAAC;IACrC,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,EAAE,MAAM,IAAI,CAAC;CAClB,CAAC;AAEF,uEAAuE;AACvE,MAAM,MAAM,8CAA8C,GACtD,qCAAqC,GACrC;IACA,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC,MAAM,CAAC,EAAE,8BAA8B,CAAC;CACzC,CAAC;AA4DJ,4DAA4D;AAC5D,wBAAsB,oCAAoC,CACxD,OAAO,EAAE,2CAA2C,GACnD,OAAO,CAAC,qCAAqC,GAAG,IAAI,CAAC,CA+CvD;AA4DD,mDAAmD;AACnD,wBAAsB,uCAAuC,CAC3D,OAAO,EAAE,8CAA8C,GACtD,OAAO,CAAC,iCAAiC,CAAC,CA0C5C"}
1
+ {"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/service/registration.ts"],"names":[],"mappings":"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"}
@@ -214,12 +214,27 @@ export async function createAgentServiceRegistrationLifecycle(options) {
214
214
  serviceId: service.id,
215
215
  }, fetchImpl);
216
216
  };
217
+ let consecutiveHeartbeatFailures = 0;
217
218
  const interval = dntShim.setInterval(() => {
218
- void heartbeat().catch((error) => {
219
- options.logger?.warn?.("Agent service heartbeat failed", {
220
- serviceId: service.id,
221
- error: getErrorMessage(error),
222
- });
219
+ void heartbeat().then(() => {
220
+ consecutiveHeartbeatFailures = 0;
221
+ }).catch((error) => {
222
+ consecutiveHeartbeatFailures++;
223
+ // Escalate from warn to error after repeated failures — persistent heartbeat
224
+ // loss means the control plane considers this service dead while it keeps running.
225
+ if (consecutiveHeartbeatFailures >= 3) {
226
+ options.logger?.error?.("Agent service heartbeat failing persistently", {
227
+ serviceId: service.id,
228
+ consecutiveFailures: consecutiveHeartbeatFailures,
229
+ error: getErrorMessage(error),
230
+ });
231
+ }
232
+ else {
233
+ options.logger?.warn?.("Agent service heartbeat failed", {
234
+ serviceId: service.id,
235
+ error: getErrorMessage(error),
236
+ });
237
+ }
223
238
  });
224
239
  }, input.heartbeatIntervalMs);
225
240
  options.logger?.info?.("Agent service registered with control plane", {
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../src/src/cache/backends/api.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AA4BhD,qBAAa,eAAgB,YAAW,YAAY;IAClD,QAAQ,CAAC,IAAI,EAAG,KAAK,CAAU;IAC/B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,cAAc,CAAC;gBAGrB,OAAO,GAAE;QACP,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;KACxB;IAiBR,OAAO,CAAC,SAAS;YAIH,OAAO;IAsGf,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAQxC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;YAuBrD,eAAe;IAKvB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,SAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQhE,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAYrF,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/B,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAMrD"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../src/src/cache/backends/api.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAqDhD,qBAAa,eAAgB,YAAW,YAAY;IAClD,QAAQ,CAAC,IAAI,EAAG,KAAK,CAAU;IAC/B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,cAAc,CAAC;gBAGrB,OAAO,GAAE;QACP,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;KACxB;IAiBR,OAAO,CAAC,SAAS;YAIH,OAAO;IAsGf,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAQxC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;YAuBrD,eAAe;IAKvB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,SAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQhE,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAYrF,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/B,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAMrD"}
@@ -15,9 +15,29 @@ const CIRCUIT_BREAKER_RESET_TIMEOUT_MS = 15_000;
15
15
  const CIRCUIT_BREAKER_FAILURE_THRESHOLD = 10;
16
16
  const CIRCUIT_BREAKER_SUCCESS_THRESHOLD = 2;
17
17
  const ERROR_BODY_MAX_LENGTH = 500;
18
+ let warnedMissingAdapterContract = false;
19
+ function isRecord(value) {
20
+ return typeof value === "object" && value !== null;
21
+ }
18
22
  function getCurrentRequestContext() {
19
- const mod = dntShim.dntGlobalThis.__vf_multi_project_adapter;
20
- return mod?.getCurrentRequestContext?.() ?? null;
23
+ const adapter = dntShim.dntGlobalThis.__vf_multi_project_adapter;
24
+ // The adapter is installed dynamically, so validate its shape instead of an
25
+ // unchecked cast. If it exists but no longer exposes getCurrentRequestContext
26
+ // (e.g., renamed/moved), the API cache would otherwise silently fail to
27
+ // authenticate forever with only a debug log — so warn once, loudly.
28
+ if (adapter !== undefined &&
29
+ !(isRecord(adapter) && typeof adapter.getCurrentRequestContext === "function")) {
30
+ if (!warnedMissingAdapterContract) {
31
+ warnedMissingAdapterContract = true;
32
+ logger.warn("Multi-project adapter present but missing getCurrentRequestContext()");
33
+ }
34
+ return null;
35
+ }
36
+ if (!isRecord(adapter) || typeof adapter.getCurrentRequestContext !== "function") {
37
+ return null;
38
+ }
39
+ const ctx = adapter.getCurrentRequestContext();
40
+ return isRecord(ctx) ? ctx : null;
21
41
  }
22
42
  export class ApiCacheBackend {
23
43
  type = "api";
@@ -1 +1 @@
1
- {"version":3,"file":"disk.d.ts","sourceRoot":"","sources":["../../../../src/src/cache/backends/disk.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAgDhD,qBAAa,gBAAiB,YAAW,YAAY;IACnD,QAAQ,CAAC,IAAI,EAAG,MAAM,CAAU;IAChC,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,SAAS,CAAgC;gBAErC,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;IAKhD,OAAO,CAAC,QAAQ;YAIF,SAAS;IAKjB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA8BxC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA0BnE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB/B,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CA4CrD"}
1
+ {"version":3,"file":"disk.d.ts","sourceRoot":"","sources":["../../../../src/src/cache/backends/disk.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAgDhD,qBAAa,gBAAiB,YAAW,YAAY;IACnD,QAAQ,CAAC,IAAI,EAAG,MAAM,CAAU;IAChC,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,SAAS,CAAgC;gBAErC,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;IAKhD,OAAO,CAAC,QAAQ;YAIF,SAAS;IAKjB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAuCxC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA0BnE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB/B,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CA4CrD"}
@@ -61,8 +61,16 @@ export class DiskCacheBackend {
61
61
  const envelope = parseDiskCacheEnvelope(JSON.parse(raw));
62
62
  if (!envelope)
63
63
  return null;
64
- if (envelope.key !== key)
64
+ if (envelope.key !== key) {
65
+ // The filename hash collided: this file belongs to a different key, so a
66
+ // prior write for one of them silently overwrote the other's data. Surface
67
+ // it (instead of a silent miss) so collisions are diagnosable in prod.
68
+ logger.warn("[DiskCache] Filename hash collision; stored key does not match", {
69
+ requestedKey: key.slice(-60),
70
+ storedKey: envelope.key.slice(-60),
71
+ });
65
72
  return null;
73
+ }
66
74
  if (envelope.expiresAt != null && Date.now() > envelope.expiresAt) {
67
75
  this.del(key).catch((cleanupError) => {
68
76
  logger.debug("[DiskCache] Expired entry cleanup failed", {
@@ -16,6 +16,6 @@ export declare function getCurrentCacheKeyContext(): CacheKeyContext;
16
16
  export declare function tryGetCacheKeyContext(): CacheKeyContext | null;
17
17
  export declare function getProjectScopedKey(prefix: string, resourceKey: string): string | null;
18
18
  export declare function getProjectScopedKeyAlways(prefix: string, resourceKey: string): string | null;
19
- export declare function extractCacheKeyContext(handlerCtx: HandlerContext): CacheKeyContext;
19
+ export declare function extractCacheKeyContext(handlerCtx: HandlerContext): CacheKeyContext | null;
20
20
  export type { MultiProjectRequestContextType as MultiProjectRequestContext };
21
21
  //# sourceMappingURL=cache-key-builder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cache-key-builder.d.ts","sourceRoot":"","sources":["../../../src/src/cache/cache-key-builder.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,KAAK,eAAe,EAAyB,MAAM,oBAAoB,CAAC;AAIjF,KAAK,8BAA8B,GAAG;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC,CAAC;AAIF,YAAY,EAAE,eAAe,EAAE,CAAC;AAQhC,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,MAAM,GACd,MAAM,CAER;AAED,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAE9E;AAED,wBAAgB,yBAAyB,IAAI,eAAe,CAQ3D;AAkCD,wBAAgB,qBAAqB,IAAI,eAAe,GAAG,IAAI,CAQ9D;AAMD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAKtF;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAK5F;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,cAAc,GAAG,eAAe,CAYlF;AAED,YAAY,EAAE,8BAA8B,IAAI,0BAA0B,EAAE,CAAC"}
1
+ {"version":3,"file":"cache-key-builder.d.ts","sourceRoot":"","sources":["../../../src/src/cache/cache-key-builder.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,KAAK,eAAe,EAAyB,MAAM,oBAAoB,CAAC;AAIjF,KAAK,8BAA8B,GAAG;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC,CAAC;AAIF,YAAY,EAAE,eAAe,EAAE,CAAC;AAQhC,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,MAAM,GACd,MAAM,CAER;AAED,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAE9E;AAED,wBAAgB,yBAAyB,IAAI,eAAe,CAQ3D;AA2CD,wBAAgB,qBAAqB,IAAI,eAAe,GAAG,IAAI,CAQ9D;AAMD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAKtF;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAK5F;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,cAAc,GAAG,eAAe,GAAG,IAAI,CAyBzF;AAED,YAAY,EAAE,8BAA8B,IAAI,0BAA0B,EAAE,CAAC"}
@@ -37,13 +37,23 @@ function getRequestContextFn() {
37
37
  return _getCurrentRequestContext ?? null;
38
38
  }
39
39
  function extractCacheKeyContextFromMultiProjectContext(reqCtx) {
40
- const projectId = reqCtx.projectId || reqCtx.projectSlug || "default";
40
+ // A genuinely missing project identity must NOT collapse to a shared "default"
41
+ // bucket — that would let unrelated projects serve each other's cached pages.
42
+ // Return null instead so callers skip caching for this request.
43
+ const projectId = reqCtx.projectId || reqCtx.projectSlug;
44
+ if (!projectId)
45
+ return null;
41
46
  const mode = reqCtx.productionMode ? "production" : "preview";
42
47
  let versionId;
43
48
  if (reqCtx.productionMode) {
44
- versionId = reqCtx.releaseId || "latest";
49
+ // In production a missing releaseId is an invariant violation, not a bucket we
50
+ // can safely default to "latest" (all releases would collide). Skip caching.
51
+ if (!reqCtx.releaseId)
52
+ return null;
53
+ versionId = reqCtx.releaseId;
45
54
  }
46
55
  else {
56
+ // Preview: branch is a real scoping segment, and "main" is a safe default.
47
57
  versionId = reqCtx.branch || "main";
48
58
  }
49
59
  return { projectId, mode, versionId };
@@ -73,11 +83,23 @@ export function getProjectScopedKeyAlways(prefix, resourceKey) {
73
83
  return buildProjectScopedKey(prefix, resourceKey, ctx);
74
84
  }
75
85
  export function extractCacheKeyContext(handlerCtx) {
76
- const projectId = handlerCtx.projectId || handlerCtx.projectSlug || "default";
86
+ // Return null (skip caching) rather than collapsing to a shared "default"
87
+ // bucket when identity is missing — a shared bucket would be a cross-tenant
88
+ // risk, but crashing lightweight no-identity paths (e.g. local CSS/JIT) is
89
+ // worse than simply not caching. Callers must treat null as "do not cache".
90
+ const projectId = handlerCtx.projectId || handlerCtx.projectSlug;
91
+ if (!projectId) {
92
+ return null;
93
+ }
77
94
  const mode = handlerCtx.resolvedEnvironment ?? handlerCtx.requestContext?.mode ?? "preview";
78
95
  let versionId;
79
96
  if (mode === "production") {
80
- versionId = handlerCtx.releaseId || "latest";
97
+ // A production release without a releaseId cannot share a "latest" bucket
98
+ // across releases without cross-release cache pollution; skip caching.
99
+ if (!handlerCtx.releaseId) {
100
+ return null;
101
+ }
102
+ versionId = handlerCtx.releaseId;
81
103
  }
82
104
  else {
83
105
  versionId = handlerCtx.parsedDomain?.branch || "main";