n8n 2.33.2 → 2.34.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (982) hide show
  1. package/dist/active-executions.d.ts +2 -2
  2. package/dist/active-executions.js +18 -13
  3. package/dist/active-executions.js.map +1 -1
  4. package/dist/agent-library-bundle.js +158 -137
  5. package/dist/auth/auth.service.d.ts +1 -0
  6. package/dist/auth/auth.service.js +8 -1
  7. package/dist/auth/auth.service.js.map +1 -1
  8. package/dist/build.tsbuildinfo +1 -1
  9. package/dist/chat/chat-execution-manager.js +8 -5
  10. package/dist/chat/chat-execution-manager.js.map +1 -1
  11. package/dist/commands/base-command.js +3 -2
  12. package/dist/commands/base-command.js.map +1 -1
  13. package/dist/commands/import/workflow.js +1 -1
  14. package/dist/commands/import/workflow.js.map +1 -1
  15. package/dist/commands/start.d.ts +0 -1
  16. package/dist/commands/start.js +4 -32
  17. package/dist/commands/start.js.map +1 -1
  18. package/dist/constants/oauth2-triggers.d.ts +2 -0
  19. package/dist/constants/oauth2-triggers.js +11 -0
  20. package/dist/constants/oauth2-triggers.js.map +1 -0
  21. package/dist/controllers/api-keys.controller.js +0 -3
  22. package/dist/controllers/api-keys.controller.js.map +1 -1
  23. package/dist/controllers/e2e.controller.d.ts +7 -0
  24. package/dist/controllers/e2e.controller.js +12 -1
  25. package/dist/controllers/e2e.controller.js.map +1 -1
  26. package/dist/crash-journal.js +2 -2
  27. package/dist/crash-journal.js.map +1 -1
  28. package/dist/credentials/credentials.controller.d.ts +2 -0
  29. package/dist/credentials/credentials.controller.js +23 -4
  30. package/dist/credentials/credentials.controller.js.map +1 -1
  31. package/dist/credentials/credentials.service.d.ts +5 -1
  32. package/dist/credentials/credentials.service.js +45 -8
  33. package/dist/credentials/credentials.service.js.map +1 -1
  34. package/dist/credentials-helper.d.ts +3 -1
  35. package/dist/credentials-helper.js +39 -1
  36. package/dist/credentials-helper.js.map +1 -1
  37. package/dist/credentials-overwrites.d.ts +2 -1
  38. package/dist/credentials-overwrites.js +4 -5
  39. package/dist/credentials-overwrites.js.map +1 -1
  40. package/dist/environments.ee/variables/variables.service.ee.d.ts +4 -0
  41. package/dist/environments.ee/variables/variables.service.ee.js +10 -6
  42. package/dist/environments.ee/variables/variables.service.ee.js.map +1 -1
  43. package/dist/errors/http-error-serializers.js +10 -1
  44. package/dist/errors/http-error-serializers.js.map +1 -1
  45. package/dist/errors/response-errors/workflow-publish-blocked.error.d.ts +6 -0
  46. package/dist/errors/response-errors/workflow-publish-blocked.error.js +19 -0
  47. package/dist/errors/response-errors/workflow-publish-blocked.error.js.map +1 -0
  48. package/dist/errors/webhook-response-too-large.error.d.ts +7 -0
  49. package/dist/errors/webhook-response-too-large.error.js +11 -0
  50. package/dist/errors/webhook-response-too-large.error.js.map +1 -0
  51. package/dist/eventbus/event-message-classes/event-message-mcp.d.ts +33 -0
  52. package/dist/eventbus/event-message-classes/event-message-mcp.js +29 -0
  53. package/dist/eventbus/event-message-classes/event-message-mcp.js.map +1 -0
  54. package/dist/eventbus/event-message-classes/index.d.ts +6 -3
  55. package/dist/eventbus/event-message-classes/index.js +7 -1
  56. package/dist/eventbus/event-message-classes/index.js.map +1 -1
  57. package/dist/eventbus/message-event-bus/message-event-bus.d.ts +2 -0
  58. package/dist/eventbus/message-event-bus/message-event-bus.js +4 -0
  59. package/dist/eventbus/message-event-bus/message-event-bus.js.map +1 -1
  60. package/dist/eventbus/message-event-bus-writer/message-event-bus-log-writer.js +3 -0
  61. package/dist/eventbus/message-event-bus-writer/message-event-bus-log-writer.js.map +1 -1
  62. package/dist/events/maps/relay.event-map.d.ts +18 -1
  63. package/dist/events/maps/workflow-publication-metrics.event-map.d.ts +5 -0
  64. package/dist/events/relays/log-streaming.event-relay.d.ts +3 -0
  65. package/dist/events/relays/log-streaming.event-relay.js +33 -0
  66. package/dist/events/relays/log-streaming.event-relay.js.map +1 -1
  67. package/dist/events/relays/telemetry.event-relay.js +10 -0
  68. package/dist/events/relays/telemetry.event-relay.js.map +1 -1
  69. package/dist/execution-lifecycle/execution-lifecycle-hooks.js +46 -18
  70. package/dist/execution-lifecycle/execution-lifecycle-hooks.js.map +1 -1
  71. package/dist/executions/enqueued-execution-recovery.service.d.ts +21 -0
  72. package/dist/executions/enqueued-execution-recovery.service.js +79 -0
  73. package/dist/executions/enqueued-execution-recovery.service.js.map +1 -0
  74. package/dist/executions/execution-data/execution-data-json-store.d.ts +3 -6
  75. package/dist/executions/execution-data/execution-data-json-store.js +2 -15
  76. package/dist/executions/execution-data/execution-data-json-store.js.map +1 -1
  77. package/dist/executions/execution-persistence.js.map +1 -1
  78. package/dist/executions/execution-recovery.service.js +23 -12
  79. package/dist/executions/execution-recovery.service.js.map +1 -1
  80. package/dist/external-hooks.d.ts +3 -2
  81. package/dist/external-hooks.js.map +1 -1
  82. package/dist/instance-settings-loader/loaders/sso/oidc.instance-settings-loader.js +4 -0
  83. package/dist/instance-settings-loader/loaders/sso/oidc.instance-settings-loader.js.map +1 -1
  84. package/dist/interfaces.d.ts +6 -0
  85. package/dist/metrics/prometheus/scheduler-metrics.service.d.ts +7 -2
  86. package/dist/metrics/prometheus/scheduler-metrics.service.js +29 -1
  87. package/dist/metrics/prometheus/scheduler-metrics.service.js.map +1 -1
  88. package/dist/metrics/prometheus/workflow-publication-metrics.service.d.ts +1 -0
  89. package/dist/metrics/prometheus/workflow-publication-metrics.service.js +22 -1
  90. package/dist/metrics/prometheus/workflow-publication-metrics.service.js.map +1 -1
  91. package/dist/modules/agent-evals/agent-eval-case-generation.service.d.ts +25 -0
  92. package/dist/modules/agent-evals/agent-eval-case-generation.service.js +192 -0
  93. package/dist/modules/agent-evals/agent-eval-case-generation.service.js.map +1 -0
  94. package/dist/modules/agent-evals/agent-eval-rating.service.d.ts +23 -0
  95. package/dist/modules/agent-evals/agent-eval-rating.service.js +124 -0
  96. package/dist/modules/agent-evals/agent-eval-rating.service.js.map +1 -0
  97. package/dist/modules/agent-evals/agent-eval-record-mappers.d.ts +5 -0
  98. package/dist/modules/agent-evals/agent-eval-record-mappers.js +68 -0
  99. package/dist/modules/agent-evals/agent-eval-record-mappers.js.map +1 -0
  100. package/dist/modules/agent-evals/agent-eval-runner.service.d.ts +42 -0
  101. package/dist/modules/agent-evals/agent-eval-runner.service.js +409 -0
  102. package/dist/modules/agent-evals/agent-eval-runner.service.js.map +1 -0
  103. package/dist/modules/agent-evals/agent-eval.service.d.ts +31 -0
  104. package/dist/modules/agent-evals/agent-eval.service.js +138 -0
  105. package/dist/modules/agent-evals/agent-eval.service.js.map +1 -0
  106. package/dist/modules/agent-evals/agent-evals-flag-gate.d.ts +8 -0
  107. package/dist/{services/trigger-auth-identity-seeder-proxy.service.js → modules/agent-evals/agent-evals-flag-gate.js} +18 -16
  108. package/dist/modules/agent-evals/agent-evals-flag-gate.js.map +1 -0
  109. package/dist/modules/agent-evals/agent-evals-required-modules.d.ts +2 -0
  110. package/dist/modules/agent-evals/agent-evals-required-modules.js +12 -0
  111. package/dist/modules/agent-evals/agent-evals-required-modules.js.map +1 -0
  112. package/dist/modules/agent-evals/agent-evals.controller.d.ts +33 -0
  113. package/dist/modules/agent-evals/agent-evals.controller.js +172 -0
  114. package/dist/modules/agent-evals/agent-evals.controller.js.map +1 -0
  115. package/dist/modules/agent-evals/agent-evals.module.d.ts +4 -0
  116. package/dist/modules/agent-evals/agent-evals.module.js +24 -0
  117. package/dist/modules/agent-evals/agent-evals.module.js.map +1 -0
  118. package/dist/modules/agent-evals/case-generation/case-generation-prompt.d.ts +37 -0
  119. package/dist/modules/agent-evals/case-generation/case-generation-prompt.js +87 -0
  120. package/dist/modules/agent-evals/case-generation/case-generation-prompt.js.map +1 -0
  121. package/dist/modules/agent-evals/case-generation/dimensions.d.ts +11 -0
  122. package/dist/modules/agent-evals/case-generation/dimensions.js +54 -0
  123. package/dist/modules/agent-evals/case-generation/dimensions.js.map +1 -0
  124. package/dist/modules/agents/adapters/agents-credential-provider.d.ts +3 -1
  125. package/dist/modules/agents/adapters/agents-credential-provider.js +15 -0
  126. package/dist/modules/agents/adapters/agents-credential-provider.js.map +1 -1
  127. package/dist/modules/agents/agent-chat-attachment.service.d.ts +46 -0
  128. package/dist/modules/agents/agent-chat-attachment.service.js +144 -0
  129. package/dist/modules/agents/agent-chat-attachment.service.js.map +1 -0
  130. package/dist/modules/agents/agent-chat.controller.d.ts +15 -1
  131. package/dist/modules/agents/agent-chat.controller.js +177 -34
  132. package/dist/modules/agents/agent-chat.controller.js.map +1 -1
  133. package/dist/modules/agents/agent-config.service.d.ts +10 -3
  134. package/dist/modules/agents/agent-config.service.js +44 -5
  135. package/dist/modules/agents/agent-config.service.js.map +1 -1
  136. package/dist/modules/agents/agent-custom-tools.service.d.ts +7 -3
  137. package/dist/modules/agents/agent-custom-tools.service.js +44 -7
  138. package/dist/modules/agents/agent-custom-tools.service.js.map +1 -1
  139. package/dist/modules/agents/agent-execution-orchestrator.service.d.ts +14 -2
  140. package/dist/modules/agents/agent-execution-orchestrator.service.js +85 -9
  141. package/dist/modules/agents/agent-execution-orchestrator.service.js.map +1 -1
  142. package/dist/modules/agents/agent-execution.service.d.ts +4 -1
  143. package/dist/modules/agents/agent-execution.service.js +7 -2
  144. package/dist/modules/agents/agent-execution.service.js.map +1 -1
  145. package/dist/modules/agents/agent-integration-persistence.service.d.ts +14 -7
  146. package/dist/modules/agents/agent-integration-persistence.service.js +35 -7
  147. package/dist/modules/agents/agent-integration-persistence.service.js.map +1 -1
  148. package/dist/modules/agents/agent-integrations.controller.d.ts +1 -9
  149. package/dist/modules/agents/agent-integrations.controller.js +12 -16
  150. package/dist/modules/agents/agent-integrations.controller.js.map +1 -1
  151. package/dist/modules/agents/agent-knowledge-file-store.d.ts +24 -0
  152. package/dist/modules/agents/agent-knowledge-file-store.js +100 -0
  153. package/dist/modules/agents/agent-knowledge-file-store.js.map +1 -0
  154. package/dist/modules/agents/agent-knowledge-retrieval.d.ts +3 -1
  155. package/dist/modules/agents/agent-knowledge-retrieval.js +1 -1
  156. package/dist/modules/agents/agent-knowledge-retrieval.js.map +1 -1
  157. package/dist/modules/agents/agent-knowledge-sandbox.service.d.ts +4 -3
  158. package/dist/modules/agents/agent-knowledge-sandbox.service.js +17 -8
  159. package/dist/modules/agents/agent-knowledge-sandbox.service.js.map +1 -1
  160. package/dist/modules/agents/agent-knowledge-storage.d.ts +0 -1
  161. package/dist/modules/agents/agent-knowledge-storage.js +0 -10
  162. package/dist/modules/agents/agent-knowledge-storage.js.map +1 -1
  163. package/dist/modules/agents/agent-knowledge.service.d.ts +3 -4
  164. package/dist/modules/agents/agent-knowledge.service.js +25 -27
  165. package/dist/modules/agents/agent-knowledge.service.js.map +1 -1
  166. package/dist/modules/agents/agent-mcp-access.controller.d.ts +14 -0
  167. package/dist/modules/agents/agent-mcp-access.controller.js +49 -0
  168. package/dist/modules/agents/agent-mcp-access.controller.js.map +1 -0
  169. package/dist/modules/agents/agent-mcp-access.service.d.ts +22 -0
  170. package/dist/modules/agents/agent-mcp-access.service.js +83 -0
  171. package/dist/modules/agents/agent-mcp-access.service.js.map +1 -0
  172. package/dist/modules/agents/agent-message-mapper.js +9 -0
  173. package/dist/modules/agents/agent-message-mapper.js.map +1 -1
  174. package/dist/modules/agents/agent-model-catalog.service.d.ts +1 -1
  175. package/dist/modules/agents/agent-model-catalog.service.js +22 -7
  176. package/dist/modules/agents/agent-model-catalog.service.js.map +1 -1
  177. package/dist/modules/agents/agent-modification-telemetry.service.d.ts +25 -0
  178. package/dist/modules/agents/agent-modification-telemetry.service.js +119 -0
  179. package/dist/modules/agents/agent-modification-telemetry.service.js.map +1 -0
  180. package/dist/modules/agents/agent-publish.controller.js +4 -4
  181. package/dist/modules/agents/agent-publish.controller.js.map +1 -1
  182. package/dist/modules/agents/agent-publish.service.d.ts +23 -9
  183. package/dist/modules/agents/agent-publish.service.js +146 -33
  184. package/dist/modules/agents/agent-publish.service.js.map +1 -1
  185. package/dist/modules/agents/agent-runtime-cache.service.js +1 -1
  186. package/dist/modules/agents/agent-runtime-cache.service.js.map +1 -1
  187. package/dist/modules/agents/agent-runtime-reconstruction.service.d.ts +6 -2
  188. package/dist/modules/agents/agent-runtime-reconstruction.service.js +16 -6
  189. package/dist/modules/agents/agent-runtime-reconstruction.service.js.map +1 -1
  190. package/dist/modules/agents/agent-setup-completion.service.d.ts +19 -0
  191. package/dist/modules/agents/agent-setup-completion.service.js +79 -0
  192. package/dist/modules/agents/agent-setup-completion.service.js.map +1 -0
  193. package/dist/modules/agents/agent-skills.service.d.ts +8 -6
  194. package/dist/modules/agents/agent-skills.service.js +55 -12
  195. package/dist/modules/agents/agent-skills.service.js.map +1 -1
  196. package/dist/modules/agents/agent-sse-stream.js +35 -0
  197. package/dist/modules/agents/agent-sse-stream.js.map +1 -1
  198. package/dist/modules/agents/agent-task.service.d.ts +7 -5
  199. package/dist/modules/agents/agent-task.service.js +56 -21
  200. package/dist/modules/agents/agent-task.service.js.map +1 -1
  201. package/dist/modules/agents/agent-tasks.controller.js +18 -6
  202. package/dist/modules/agents/agent-tasks.controller.js.map +1 -1
  203. package/dist/modules/agents/agent-test-chat.service.d.ts +3 -1
  204. package/dist/modules/agents/agent-test-chat.service.js +7 -3
  205. package/dist/modules/agents/agent-test-chat.service.js.map +1 -1
  206. package/dist/modules/agents/agent-validation.service.d.ts +5 -2
  207. package/dist/modules/agents/agent-validation.service.js +22 -4
  208. package/dist/modules/agents/agent-validation.service.js.map +1 -1
  209. package/dist/modules/agents/agent-workflow-execution.service.d.ts +1 -1
  210. package/dist/modules/agents/agent-workflow-execution.service.js +13 -7
  211. package/dist/modules/agents/agent-workflow-execution.service.js.map +1 -1
  212. package/dist/modules/agents/agents-config.controller.d.ts +1 -5
  213. package/dist/modules/agents/agents-config.controller.js +7 -2
  214. package/dist/modules/agents/agents-config.controller.js.map +1 -1
  215. package/dist/modules/agents/agents-skills.controller.js +12 -3
  216. package/dist/modules/agents/agents-skills.controller.js.map +1 -1
  217. package/dist/modules/agents/agents-tools.service.js +1 -5
  218. package/dist/modules/agents/agents-tools.service.js.map +1 -1
  219. package/dist/modules/agents/agents.controller.js +3 -1
  220. package/dist/modules/agents/agents.controller.js.map +1 -1
  221. package/dist/modules/agents/agents.module.d.ts +1 -1
  222. package/dist/modules/agents/agents.module.js +10 -11
  223. package/dist/modules/agents/agents.module.js.map +1 -1
  224. package/dist/modules/agents/agents.service.d.ts +12 -4
  225. package/dist/modules/agents/agents.service.js +52 -4
  226. package/dist/modules/agents/agents.service.js.map +1 -1
  227. package/dist/modules/agents/builder/agents-builder-prompts.d.ts +2 -2
  228. package/dist/modules/agents/builder/agents-builder-prompts.js +13 -11
  229. package/dist/modules/agents/builder/agents-builder-prompts.js.map +1 -1
  230. package/dist/modules/agents/builder/agents-builder-tools.service.d.ts +3 -6
  231. package/dist/modules/agents/builder/agents-builder-tools.service.js +37 -84
  232. package/dist/modules/agents/builder/agents-builder-tools.service.js.map +1 -1
  233. package/dist/modules/agents/builder/agents-builder.service.d.ts +3 -7
  234. package/dist/modules/agents/builder/agents-builder.service.js +27 -34
  235. package/dist/modules/agents/builder/agents-builder.service.js.map +1 -1
  236. package/dist/modules/agents/builder/builder-config-telemetry.d.ts +1 -10
  237. package/dist/modules/agents/builder/builder-config-telemetry.js +0 -64
  238. package/dist/modules/agents/builder/builder-config-telemetry.js.map +1 -1
  239. package/dist/modules/agents/builder/builder-model-live-lookup.service.d.ts +5 -1
  240. package/dist/modules/agents/builder/builder-model-live-lookup.service.js +23 -2
  241. package/dist/modules/agents/builder/builder-model-live-lookup.service.js.map +1 -1
  242. package/dist/modules/agents/builder/format-preview-context.js +3 -0
  243. package/dist/modules/agents/builder/format-preview-context.js.map +1 -1
  244. package/dist/modules/agents/builder/get-resource-locator-options.tool.d.ts +2 -2
  245. package/dist/modules/agents/builder/interactive/configure-channel.tool.js +6 -5
  246. package/dist/modules/agents/builder/interactive/configure-channel.tool.js.map +1 -1
  247. package/dist/modules/agents/builder/interactive/finish-setup.tool.d.ts +0 -5
  248. package/dist/modules/agents/builder/interactive/finish-setup.tool.js +28 -45
  249. package/dist/modules/agents/builder/interactive/finish-setup.tool.js.map +1 -1
  250. package/dist/modules/agents/builder/interactive/resolve-llm.tool.d.ts +1 -0
  251. package/dist/modules/agents/builder/interactive/resolve-llm.tool.js +88 -8
  252. package/dist/modules/agents/builder/interactive/resolve-llm.tool.js.map +1 -1
  253. package/dist/modules/agents/builder/prompts/config-mutation.prompt.js +1 -1
  254. package/dist/modules/agents/builder/prompts/initial-build.prompt.d.ts +1 -1
  255. package/dist/modules/agents/builder/prompts/initial-build.prompt.js +8 -15
  256. package/dist/modules/agents/builder/prompts/initial-build.prompt.js.map +1 -1
  257. package/dist/modules/agents/builder/prompts/llm-selection.prompt.js +2 -2
  258. package/dist/modules/agents/builder/skills/external-services.skill.js +10 -11
  259. package/dist/modules/agents/builder/skills/external-services.skill.js.map +1 -1
  260. package/dist/modules/agents/entities/agent-chat-attachment.entity.d.ts +16 -0
  261. package/dist/modules/agents/entities/agent-chat-attachment.entity.js +70 -0
  262. package/dist/modules/agents/entities/agent-chat-attachment.entity.js.map +1 -0
  263. package/dist/modules/agents/entities/agent-execution.entity.d.ts +6 -0
  264. package/dist/modules/agents/entities/agent-execution.entity.js +4 -0
  265. package/dist/modules/agents/entities/agent-execution.entity.js.map +1 -1
  266. package/dist/modules/agents/entities/agent-file.entity.d.ts +3 -2
  267. package/dist/modules/agents/entities/agent-file.entity.js +6 -3
  268. package/dist/modules/agents/entities/agent-file.entity.js.map +1 -1
  269. package/dist/modules/agents/entities/agent.entity.d.ts +2 -0
  270. package/dist/modules/agents/entities/agent.entity.js +8 -0
  271. package/dist/modules/agents/entities/agent.entity.js.map +1 -1
  272. package/dist/modules/agents/execution-log/agent-execution-log-store.d.ts +3 -6
  273. package/dist/modules/agents/execution-log/agent-execution-log-store.js +2 -15
  274. package/dist/modules/agents/execution-log/agent-execution-log-store.js.map +1 -1
  275. package/dist/modules/agents/execution-recorder.d.ts +11 -0
  276. package/dist/modules/agents/execution-recorder.js +69 -0
  277. package/dist/modules/agents/execution-recorder.js.map +1 -1
  278. package/dist/modules/agents/instance-ai-builder-delegate.adapter.js +6 -2
  279. package/dist/modules/agents/instance-ai-builder-delegate.adapter.js.map +1 -1
  280. package/dist/modules/agents/integrations/agent-chat-bridge.d.ts +8 -2
  281. package/dist/modules/agents/integrations/agent-chat-bridge.js +114 -16
  282. package/dist/modules/agents/integrations/agent-chat-bridge.js.map +1 -1
  283. package/dist/modules/agents/integrations/agent-chat-hitl-resume-handler.d.ts +4 -1
  284. package/dist/modules/agents/integrations/agent-chat-hitl-resume-handler.js +40 -7
  285. package/dist/modules/agents/integrations/agent-chat-hitl-resume-handler.js.map +1 -1
  286. package/dist/modules/agents/integrations/agent-chat-integration.d.ts +16 -1
  287. package/dist/modules/agents/integrations/agent-chat-integration.js +1 -0
  288. package/dist/modules/agents/integrations/agent-chat-integration.js.map +1 -1
  289. package/dist/modules/agents/integrations/agent-chat-message-context.d.ts +2 -1
  290. package/dist/modules/agents/integrations/agent-chat-message-context.js +1 -0
  291. package/dist/modules/agents/integrations/agent-chat-message-context.js.map +1 -1
  292. package/dist/modules/agents/integrations/agent-chat-stream-consumer.d.ts +2 -0
  293. package/dist/modules/agents/integrations/agent-chat-stream-consumer.js +27 -12
  294. package/dist/modules/agents/integrations/agent-chat-stream-consumer.js.map +1 -1
  295. package/dist/modules/agents/integrations/agent-chat-suspension-cards.d.ts +7 -0
  296. package/dist/modules/agents/integrations/agent-chat-suspension-cards.js +1 -0
  297. package/dist/modules/agents/integrations/agent-chat-suspension-cards.js.map +1 -1
  298. package/dist/modules/agents/integrations/callback-store.d.ts +4 -1
  299. package/dist/modules/agents/integrations/callback-store.js +11 -3
  300. package/dist/modules/agents/integrations/callback-store.js.map +1 -1
  301. package/dist/modules/agents/integrations/chat-integration.service.d.ts +10 -4
  302. package/dist/modules/agents/integrations/chat-integration.service.js +108 -35
  303. package/dist/modules/agents/integrations/chat-integration.service.js.map +1 -1
  304. package/dist/modules/agents/integrations/integration-action-executor.d.ts +2 -0
  305. package/dist/modules/agents/integrations/integration-action-executor.js +52 -1
  306. package/dist/modules/agents/integrations/integration-action-executor.js.map +1 -1
  307. package/dist/modules/agents/integrations/integration-context-query-executor.js +2 -1
  308. package/dist/modules/agents/integrations/integration-context-query-executor.js.map +1 -1
  309. package/dist/modules/agents/integrations/integration-error-codes.d.ts +1 -0
  310. package/dist/modules/agents/integrations/integration-error-codes.js +1 -0
  311. package/dist/modules/agents/integrations/integration-error-codes.js.map +1 -1
  312. package/dist/modules/agents/integrations/integration-tool-definitions.js +20 -0
  313. package/dist/modules/agents/integrations/integration-tool-definitions.js.map +1 -1
  314. package/dist/modules/agents/integrations/integration-tool-descriptions.js +6 -0
  315. package/dist/modules/agents/integrations/integration-tool-descriptions.js.map +1 -1
  316. package/dist/modules/agents/integrations/integration-tool-execution.js +5 -0
  317. package/dist/modules/agents/integrations/integration-tool-execution.js.map +1 -1
  318. package/dist/modules/agents/integrations/integration-tool-factory.d.ts +7 -7
  319. package/dist/modules/agents/integrations/integration-tool-factory.js +1 -1
  320. package/dist/modules/agents/integrations/integration-tool-factory.js.map +1 -1
  321. package/dist/modules/agents/integrations/integration-tool-schema.d.ts +11 -8
  322. package/dist/modules/agents/integrations/integration-tool-schema.js +7 -7
  323. package/dist/modules/agents/integrations/integration-tool-schema.js.map +1 -1
  324. package/dist/modules/agents/integrations/integration-tool-types.d.ts +3 -1
  325. package/dist/modules/agents/integrations/n8n-checkpoint-storage.d.ts +8 -6
  326. package/dist/modules/agents/integrations/n8n-checkpoint-storage.js +39 -14
  327. package/dist/modules/agents/integrations/n8n-checkpoint-storage.js.map +1 -1
  328. package/dist/modules/agents/integrations/n8n-memory.js +2 -1
  329. package/dist/modules/agents/integrations/n8n-memory.js.map +1 -1
  330. package/dist/modules/agents/integrations/platforms/slack-bridge-behavior.d.ts +6 -1
  331. package/dist/modules/agents/integrations/platforms/slack-bridge-behavior.js +36 -24
  332. package/dist/modules/agents/integrations/platforms/slack-bridge-behavior.js.map +1 -1
  333. package/dist/modules/agents/integrations/platforms/slack-integration.d.ts +6 -1
  334. package/dist/modules/agents/integrations/platforms/slack-integration.js +3 -0
  335. package/dist/modules/agents/integrations/platforms/slack-integration.js.map +1 -1
  336. package/dist/modules/agents/integrations/platforms/slack-tool-definitions.d.ts +15 -2
  337. package/dist/modules/agents/integrations/platforms/slack-tool-definitions.js +9 -0
  338. package/dist/modules/agents/integrations/platforms/slack-tool-definitions.js.map +1 -1
  339. package/dist/modules/agents/integrations/platforms/telegram-integration.d.ts +4 -1
  340. package/dist/modules/agents/integrations/platforms/telegram-integration.js +22 -2
  341. package/dist/modules/agents/integrations/platforms/telegram-integration.js.map +1 -1
  342. package/dist/modules/agents/integrations/slack-app-setup.service.d.ts +1 -3
  343. package/dist/modules/agents/integrations/slack-app-setup.service.js +9 -10
  344. package/dist/modules/agents/integrations/slack-app-setup.service.js.map +1 -1
  345. package/dist/modules/agents/json-config/from-json-config.js +4 -3
  346. package/dist/modules/agents/json-config/from-json-config.js.map +1 -1
  347. package/dist/modules/agents/json-config/mcp-client-factory.d.ts +4 -0
  348. package/dist/modules/agents/json-config/mcp-client-factory.js +12 -0
  349. package/dist/modules/agents/json-config/mcp-client-factory.js.map +1 -1
  350. package/dist/modules/agents/json-config/model-config.d.ts +5 -2
  351. package/dist/modules/agents/json-config/model-config.js +15 -1
  352. package/dist/modules/agents/json-config/model-config.js.map +1 -1
  353. package/dist/modules/agents/json-config/sanitize-unknown-agent-credentials.js +22 -3
  354. package/dist/modules/agents/json-config/sanitize-unknown-agent-credentials.js.map +1 -1
  355. package/dist/modules/agents/register-blob-byte-stores.d.ts +8 -0
  356. package/dist/modules/agents/register-blob-byte-stores.js +21 -0
  357. package/dist/modules/agents/register-blob-byte-stores.js.map +1 -0
  358. package/dist/modules/agents/repositories/agent-chat-attachment.repository.d.ts +19 -0
  359. package/dist/modules/agents/repositories/agent-chat-attachment.repository.js +38 -0
  360. package/dist/modules/agents/repositories/agent-chat-attachment.repository.js.map +1 -0
  361. package/dist/modules/agents/repositories/agent-checkpoint.repository.d.ts +6 -1
  362. package/dist/modules/agents/repositories/agent-checkpoint.repository.js +22 -3
  363. package/dist/modules/agents/repositories/agent-checkpoint.repository.js.map +1 -1
  364. package/dist/modules/agents/repositories/agent.repository.d.ts +23 -1
  365. package/dist/modules/agents/repositories/agent.repository.js +85 -5
  366. package/dist/modules/agents/repositories/agent.repository.js.map +1 -1
  367. package/dist/modules/agents/sub-agents/delegate-sub-agent-tool.js +60 -1
  368. package/dist/modules/agents/sub-agents/delegate-sub-agent-tool.js.map +1 -1
  369. package/dist/modules/agents/sub-agents/sub-agent-foreground-runner.d.ts +12 -3
  370. package/dist/modules/agents/sub-agents/sub-agent-foreground-runner.js +124 -60
  371. package/dist/modules/agents/sub-agents/sub-agent-foreground-runner.js.map +1 -1
  372. package/dist/modules/agents/tools/workflow-tool-factory.js +30 -1
  373. package/dist/modules/agents/tools/workflow-tool-factory.js.map +1 -1
  374. package/dist/modules/agents/utils/agent-capabilities.d.ts +14 -0
  375. package/dist/modules/agents/utils/agent-capabilities.js +35 -0
  376. package/dist/modules/agents/utils/agent-capabilities.js.map +1 -0
  377. package/dist/modules/agents/utils/agent-config-hash.d.ts +2 -0
  378. package/dist/modules/agents/utils/agent-config-hash.js +23 -0
  379. package/dist/modules/agents/utils/agent-config-hash.js.map +1 -0
  380. package/dist/modules/agents/utils/agent-execution-counter.d.ts +3 -1
  381. package/dist/modules/agents/utils/agent-execution-counter.js +4 -1
  382. package/dist/modules/agents/utils/agent-execution-counter.js.map +1 -1
  383. package/dist/modules/agents/utils/execution-to-message-mapper.d.ts +1 -1
  384. package/dist/modules/agents/utils/execution-to-message-mapper.js +33 -16
  385. package/dist/modules/agents/utils/execution-to-message-mapper.js.map +1 -1
  386. package/dist/modules/agents/utils/inbound-attachments.d.ts +4 -0
  387. package/dist/modules/agents/utils/inbound-attachments.js +50 -0
  388. package/dist/modules/agents/utils/inbound-attachments.js.map +1 -0
  389. package/dist/modules/agents/utils/messages-envelope.js +5 -1
  390. package/dist/modules/agents/utils/messages-envelope.js.map +1 -1
  391. package/dist/modules/breaking-changes/breaking-changes.controller.d.ts +5 -2
  392. package/dist/modules/breaking-changes/breaking-changes.controller.js +16 -2
  393. package/dist/modules/breaking-changes/breaking-changes.controller.js.map +1 -1
  394. package/dist/modules/breaking-changes/breaking-changes.migration-registry.service.d.ts +10 -0
  395. package/dist/modules/breaking-changes/breaking-changes.migration-registry.service.js +42 -0
  396. package/dist/modules/breaking-changes/breaking-changes.migration-registry.service.js.map +1 -0
  397. package/dist/modules/breaking-changes/breaking-changes.migration.service.d.ts +31 -0
  398. package/dist/modules/breaking-changes/breaking-changes.migration.service.js +120 -0
  399. package/dist/modules/breaking-changes/breaking-changes.migration.service.js.map +1 -0
  400. package/dist/modules/breaking-changes/breaking-changes.module.js +2 -0
  401. package/dist/modules/breaking-changes/breaking-changes.module.js.map +1 -1
  402. package/dist/modules/breaking-changes/breaking-changes.service.d.ts +3 -2
  403. package/dist/modules/breaking-changes/breaking-changes.service.js +9 -13
  404. package/dist/modules/breaking-changes/breaking-changes.service.js.map +1 -1
  405. package/dist/modules/breaking-changes/group-nodes-by-type.d.ts +2 -0
  406. package/dist/modules/breaking-changes/group-nodes-by-type.js +15 -0
  407. package/dist/modules/breaking-changes/group-nodes-by-type.js.map +1 -0
  408. package/dist/modules/breaking-changes/migrations/ai-transform-to-code.migration.d.ts +2 -0
  409. package/dist/modules/breaking-changes/migrations/ai-transform-to-code.migration.js +24 -0
  410. package/dist/modules/breaking-changes/migrations/ai-transform-to-code.migration.js.map +1 -0
  411. package/dist/modules/breaking-changes/migrations/index.d.ts +2 -0
  412. package/dist/modules/breaking-changes/migrations/index.js +6 -0
  413. package/dist/modules/breaking-changes/migrations/index.js.map +1 -0
  414. package/dist/modules/breaking-changes/migrations/node-migration.d.ts +10 -0
  415. package/dist/modules/breaking-changes/migrations/node-migration.js +3 -0
  416. package/dist/modules/breaking-changes/migrations/node-migration.js.map +1 -0
  417. package/dist/modules/breaking-changes/rules/index.d.ts +2 -0
  418. package/dist/modules/breaking-changes/rules/index.js +2 -0
  419. package/dist/modules/breaking-changes/rules/index.js.map +1 -1
  420. package/dist/modules/breaking-changes/rules/v3/ai-transform-deprecated.rule.d.ts +11 -0
  421. package/dist/modules/breaking-changes/rules/v3/ai-transform-deprecated.rule.js +53 -0
  422. package/dist/modules/breaking-changes/rules/v3/ai-transform-deprecated.rule.js.map +1 -0
  423. package/dist/modules/breaking-changes/rules/v3/execute-workflow-source-modes.rule.d.ts +10 -0
  424. package/dist/modules/breaking-changes/rules/v3/execute-workflow-source-modes.rule.js +62 -0
  425. package/dist/modules/breaking-changes/rules/v3/execute-workflow-source-modes.rule.js.map +1 -0
  426. package/dist/modules/chat-hub/chat-hub-execution.service.js +2 -1
  427. package/dist/modules/chat-hub/chat-hub-execution.service.js.map +1 -1
  428. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.js +0 -3
  429. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.js.map +1 -1
  430. package/dist/modules/dynamic-credentials.ee/services/credential-check-proxy.service.d.ts +4 -2
  431. package/dist/modules/dynamic-credentials.ee/services/credential-check-proxy.service.js +7 -4
  432. package/dist/modules/dynamic-credentials.ee/services/credential-check-proxy.service.js.map +1 -1
  433. package/dist/modules/external-secrets.ee/external-secrets-manager.ee.d.ts +2 -4
  434. package/dist/modules/external-secrets.ee/external-secrets-manager.ee.js +27 -20
  435. package/dist/modules/external-secrets.ee/external-secrets-manager.ee.js.map +1 -1
  436. package/dist/modules/external-secrets.ee/external-secrets-provider-connection-manager.ee.d.ts +24 -6
  437. package/dist/modules/external-secrets.ee/external-secrets-provider-connection-manager.ee.js +184 -43
  438. package/dist/modules/external-secrets.ee/external-secrets-provider-connection-manager.ee.js.map +1 -1
  439. package/dist/modules/insights/insights-collection.service.js +3 -0
  440. package/dist/modules/insights/insights-collection.service.js.map +1 -1
  441. package/dist/modules/insights/insights-compaction.service.js +2 -2
  442. package/dist/modules/insights/insights-compaction.service.js.map +1 -1
  443. package/dist/modules/instance-ai/eval/agent-execution.service.d.ts +1 -1
  444. package/dist/modules/instance-ai/eval/agent-execution.service.js +16 -7
  445. package/dist/modules/instance-ai/eval/agent-execution.service.js.map +1 -1
  446. package/dist/modules/instance-ai/eval/execution.service.d.ts +6 -1
  447. package/dist/modules/instance-ai/eval/execution.service.js +45 -3
  448. package/dist/modules/instance-ai/eval/execution.service.js.map +1 -1
  449. package/dist/modules/instance-ai/eval/ledger-snapshot.d.ts +1 -0
  450. package/dist/modules/instance-ai/eval/ledger-snapshot.js +11 -0
  451. package/dist/modules/instance-ai/eval/ledger-snapshot.js.map +1 -0
  452. package/dist/modules/instance-ai/eval/llm-wire-server.js +26 -2
  453. package/dist/modules/instance-ai/eval/llm-wire-server.js.map +1 -1
  454. package/dist/modules/instance-ai/eval/mock-handler.d.ts +3 -1
  455. package/dist/modules/instance-ai/eval/mock-handler.js +60 -2
  456. package/dist/modules/instance-ai/eval/mock-handler.js.map +1 -1
  457. package/dist/modules/instance-ai/eval/mock-quirks.js +5 -4
  458. package/dist/modules/instance-ai/eval/mock-quirks.js.map +1 -1
  459. package/dist/modules/instance-ai/eval/openai-responses-envelope.js +11 -2
  460. package/dist/modules/instance-ai/eval/openai-responses-envelope.js.map +1 -1
  461. package/dist/modules/instance-ai/eval/pin-data-generator.d.ts +2 -1
  462. package/dist/modules/instance-ai/eval/pin-data-generator.js +28 -12
  463. package/dist/modules/instance-ai/eval/pin-data-generator.js.map +1 -1
  464. package/dist/modules/instance-ai/eval/provider-shapes.js +101 -8
  465. package/dist/modules/instance-ai/eval/provider-shapes.js.map +1 -1
  466. package/dist/modules/instance-ai/eval/thread-credential-allowlist.service.d.ts +3 -1
  467. package/dist/modules/instance-ai/eval/thread-credential-allowlist.service.js +8 -1
  468. package/dist/modules/instance-ai/eval/thread-credential-allowlist.service.js.map +1 -1
  469. package/dist/modules/instance-ai/eval/workflow-analysis.d.ts +2 -0
  470. package/dist/modules/instance-ai/eval/workflow-analysis.js +9 -0
  471. package/dist/modules/instance-ai/eval/workflow-analysis.js.map +1 -1
  472. package/dist/modules/instance-ai/event-bus/interrupted-run-sweeper.js +3 -1
  473. package/dist/modules/instance-ai/event-bus/interrupted-run-sweeper.js.map +1 -1
  474. package/dist/modules/instance-ai/instance-ai-credit.service.js +2 -1
  475. package/dist/modules/instance-ai/instance-ai-credit.service.js.map +1 -1
  476. package/dist/modules/instance-ai/instance-ai-error-reporter.service.d.ts +9 -2
  477. package/dist/modules/instance-ai/instance-ai-error-reporter.service.js +25 -11
  478. package/dist/modules/instance-ai/instance-ai-error-reporter.service.js.map +1 -1
  479. package/dist/modules/instance-ai/instance-ai.adapter.service.d.ts +1 -1
  480. package/dist/modules/instance-ai/instance-ai.adapter.service.js +33 -21
  481. package/dist/modules/instance-ai/instance-ai.adapter.service.js.map +1 -1
  482. package/dist/modules/instance-ai/instance-ai.controller.js +1 -1
  483. package/dist/modules/instance-ai/instance-ai.controller.js.map +1 -1
  484. package/dist/modules/instance-ai/instance-ai.service.js +160 -38
  485. package/dist/modules/instance-ai/instance-ai.service.js.map +1 -1
  486. package/dist/modules/instance-ai/node-definition-resolver.js +1 -5
  487. package/dist/modules/instance-ai/node-definition-resolver.js.map +1 -1
  488. package/dist/modules/instance-ai/repositories/instance-ai-checkpoint.repository.d.ts +2 -0
  489. package/dist/modules/instance-ai/repositories/instance-ai-checkpoint.repository.js +20 -0
  490. package/dist/modules/instance-ai/repositories/instance-ai-checkpoint.repository.js.map +1 -1
  491. package/dist/modules/instance-ai/sandbox/instance-ai-sandbox.service.js +5 -1
  492. package/dist/modules/instance-ai/sandbox/instance-ai-sandbox.service.js.map +1 -1
  493. package/dist/modules/instance-ai/storage/typeorm-agent-checkpoint-store.d.ts +1 -0
  494. package/dist/modules/instance-ai/storage/typeorm-agent-checkpoint-store.js +3 -0
  495. package/dist/modules/instance-ai/storage/typeorm-agent-checkpoint-store.js.map +1 -1
  496. package/dist/modules/instance-ai/tracing/instance-ai-tracing.service.d.ts +2 -0
  497. package/dist/modules/instance-ai/tracing/instance-ai-tracing.service.js +7 -2
  498. package/dist/modules/instance-ai/tracing/instance-ai-tracing.service.js.map +1 -1
  499. package/dist/modules/ldap.ee/helpers.ee.d.ts +2 -1
  500. package/dist/modules/ldap.ee/helpers.ee.js +11 -2
  501. package/dist/modules/ldap.ee/helpers.ee.js.map +1 -1
  502. package/dist/modules/ldap.ee/ldap.errors.d.ts +5 -0
  503. package/dist/modules/ldap.ee/ldap.errors.js +11 -0
  504. package/dist/modules/ldap.ee/ldap.errors.js.map +1 -0
  505. package/dist/modules/ldap.ee/ldap.service.ee.d.ts +2 -2
  506. package/dist/modules/ldap.ee/ldap.service.ee.js +29 -7
  507. package/dist/modules/ldap.ee/ldap.service.ee.js.map +1 -1
  508. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination-webhook.ee.d.ts +1 -1
  509. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination-webhook.ee.js +10 -2
  510. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination-webhook.ee.js.map +1 -1
  511. package/dist/modules/mcp/mcp-protected-resource.d.ts +4 -2
  512. package/dist/modules/mcp/mcp-protected-resource.js +17 -5
  513. package/dist/modules/mcp/mcp-protected-resource.js.map +1 -1
  514. package/dist/modules/mcp/mcp-scopes.d.ts +1 -0
  515. package/dist/modules/mcp/mcp-scopes.js +35 -7
  516. package/dist/modules/mcp/mcp-scopes.js.map +1 -1
  517. package/dist/modules/mcp/mcp-tool-availability.d.ts +3 -0
  518. package/dist/modules/mcp/mcp-tool-availability.js +7 -0
  519. package/dist/modules/mcp/mcp-tool-availability.js.map +1 -0
  520. package/dist/modules/mcp/mcp.constants.d.ts +1 -0
  521. package/dist/modules/mcp/mcp.constants.js +2 -1
  522. package/dist/modules/mcp/mcp.constants.js.map +1 -1
  523. package/dist/modules/mcp/mcp.controller.d.ts +1 -1
  524. package/dist/modules/mcp/mcp.controller.js +10 -18
  525. package/dist/modules/mcp/mcp.controller.js.map +1 -1
  526. package/dist/modules/mcp/mcp.service.d.ts +6 -2
  527. package/dist/modules/mcp/mcp.service.js +72 -4
  528. package/dist/modules/mcp/mcp.service.js.map +1 -1
  529. package/dist/modules/mcp/mcp.settings.controller.d.ts +4 -2
  530. package/dist/modules/mcp/mcp.settings.controller.js +6 -3
  531. package/dist/modules/mcp/mcp.settings.controller.js.map +1 -1
  532. package/dist/modules/mcp/mcp.types.d.ts +2 -1
  533. package/dist/modules/mcp/mcp.types.js.map +1 -1
  534. package/dist/modules/mcp/tools/agents/agent-reference.d.ts +9 -0
  535. package/dist/modules/mcp/tools/agents/agent-reference.js +169 -0
  536. package/dist/modules/mcp/tools/agents/agent-reference.js.map +1 -0
  537. package/dist/modules/mcp/tools/agents/agent-tools.service.d.ts +87 -0
  538. package/dist/modules/mcp/tools/agents/agent-tools.service.js +1157 -0
  539. package/dist/modules/mcp/tools/agents/agent-tools.service.js.map +1 -0
  540. package/dist/modules/mcp/tools/get-execution.tool.js +4 -4
  541. package/dist/modules/mcp/tools/get-execution.tool.js.map +1 -1
  542. package/dist/modules/mcp/tools/get-workflow-details.tool.d.ts +1 -1
  543. package/dist/modules/mcp/tools/get-workflow-details.tool.js +7 -4
  544. package/dist/modules/mcp/tools/get-workflow-details.tool.js.map +1 -1
  545. package/dist/modules/mcp/tools/get-workflow-version.tool.js +1 -1
  546. package/dist/modules/mcp/tools/get-workflow-version.tool.js.map +1 -1
  547. package/dist/modules/mcp/tools/list-credentials.tool.js +1 -1
  548. package/dist/modules/mcp/tools/list-credentials.tool.js.map +1 -1
  549. package/dist/modules/mcp/tools/list-tags.tool.js +3 -3
  550. package/dist/modules/mcp/tools/list-tags.tool.js.map +1 -1
  551. package/dist/modules/mcp/tools/prepare-workflow-pin-data.tool.js +3 -3
  552. package/dist/modules/mcp/tools/prepare-workflow-pin-data.tool.js.map +1 -1
  553. package/dist/modules/mcp/tools/publish-workflow.tool.js +14 -2
  554. package/dist/modules/mcp/tools/publish-workflow.tool.js.map +1 -1
  555. package/dist/modules/mcp/tools/schemas.d.ts +381 -0
  556. package/dist/modules/mcp/tools/schemas.js +25 -1
  557. package/dist/modules/mcp/tools/schemas.js.map +1 -1
  558. package/dist/modules/mcp/tools/search-executions.tool.js +3 -3
  559. package/dist/modules/mcp/tools/search-executions.tool.js.map +1 -1
  560. package/dist/modules/mcp/tools/search-projects.tool.js +1 -1
  561. package/dist/modules/mcp/tools/search-projects.tool.js.map +1 -1
  562. package/dist/modules/mcp/tools/test-workflow.tool.js +2 -2
  563. package/dist/modules/mcp/tools/test-workflow.tool.js.map +1 -1
  564. package/dist/modules/mcp/tools/webhook-utils.d.ts +1 -1
  565. package/dist/modules/mcp/tools/webhook-utils.js +5 -1
  566. package/dist/modules/mcp/tools/webhook-utils.js.map +1 -1
  567. package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.js +12 -1
  568. package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.js.map +1 -1
  569. package/dist/modules/mcp/tools/workflow-builder/credentials-auto-assign.js +55 -29
  570. package/dist/modules/mcp/tools/workflow-builder/credentials-auto-assign.js.map +1 -1
  571. package/dist/modules/mcp/tools/workflow-builder/get-workflow-best-practices.tool.js +1 -1
  572. package/dist/modules/mcp/tools/workflow-builder/get-workflow-best-practices.tool.js.map +1 -1
  573. package/dist/modules/mcp/tools/workflow-builder/get-workflow-node-types.tool.js +1 -1
  574. package/dist/modules/mcp/tools/workflow-builder/get-workflow-node-types.tool.js.map +1 -1
  575. package/dist/modules/mcp/tools/workflow-builder/get-workflow-sdk-reference.tool.js +1 -1
  576. package/dist/modules/mcp/tools/workflow-builder/get-workflow-sdk-reference.tool.js.map +1 -1
  577. package/dist/modules/mcp/tools/workflow-builder/mcp-instructions.d.ts +1 -0
  578. package/dist/modules/mcp/tools/workflow-builder/mcp-instructions.js +27 -3
  579. package/dist/modules/mcp/tools/workflow-builder/mcp-instructions.js.map +1 -1
  580. package/dist/modules/mcp/tools/workflow-builder/search-workflow-nodes.tool.d.ts +10 -1
  581. package/dist/modules/mcp/tools/workflow-builder/search-workflow-nodes.tool.js +14 -4
  582. package/dist/modules/mcp/tools/workflow-builder/search-workflow-nodes.tool.js.map +1 -1
  583. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.js +119 -15
  584. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.js.map +1 -1
  585. package/dist/modules/mcp/tools/workflow-builder/validate-workflow-code.tool.js +1 -1
  586. package/dist/modules/mcp/tools/workflow-builder/validate-workflow-code.tool.js.map +1 -1
  587. package/dist/modules/mcp/tools/workflow-builder/workflow-operations.d.ts +15 -1
  588. package/dist/modules/mcp/tools/workflow-builder/workflow-operations.js +46 -18
  589. package/dist/modules/mcp/tools/workflow-builder/workflow-operations.js.map +1 -1
  590. package/dist/modules/mcp-registry/registry/mcp-registry-search.d.ts +1 -0
  591. package/dist/modules/mcp-registry/registry/mcp-registry-search.js +8 -6
  592. package/dist/modules/mcp-registry/registry/mcp-registry-search.js.map +1 -1
  593. package/dist/modules/mcp-registry/registry/mcp-registry.service.d.ts +1 -0
  594. package/dist/modules/mcp-registry/registry/mcp-registry.service.js +3 -0
  595. package/dist/modules/mcp-registry/registry/mcp-registry.service.js.map +1 -1
  596. package/dist/modules/n8n-packages/engine/import-blocked.error.js +3 -1
  597. package/dist/modules/n8n-packages/engine/import-blocked.error.js.map +1 -1
  598. package/dist/modules/n8n-packages/engine/import-gates.d.ts +11 -0
  599. package/dist/modules/n8n-packages/engine/import-gates.js +34 -0
  600. package/dist/modules/n8n-packages/engine/import-gates.js.map +1 -0
  601. package/dist/modules/n8n-packages/engine/import-orchestrator.d.ts +17 -8
  602. package/dist/modules/n8n-packages/engine/import-orchestrator.js +42 -24
  603. package/dist/modules/n8n-packages/engine/import-orchestrator.js.map +1 -1
  604. package/dist/modules/n8n-packages/engine/import-result.d.ts +16 -4
  605. package/dist/modules/n8n-packages/engine/import-result.js +56 -20
  606. package/dist/modules/n8n-packages/engine/import-result.js.map +1 -1
  607. package/dist/modules/n8n-packages/engine/import-telemetry.d.ts +4 -2
  608. package/dist/modules/n8n-packages/engine/import-telemetry.js +25 -5
  609. package/dist/modules/n8n-packages/engine/import-telemetry.js.map +1 -1
  610. package/dist/modules/n8n-packages/engine/n8n-package-parser.js +4 -0
  611. package/dist/modules/n8n-packages/engine/n8n-package-parser.js.map +1 -1
  612. package/dist/modules/n8n-packages/engine/package-layout.d.ts +1 -0
  613. package/dist/modules/n8n-packages/engine/package-layout.js +9 -0
  614. package/dist/modules/n8n-packages/engine/package-layout.js.map +1 -1
  615. package/dist/modules/n8n-packages/engine/project-package-importer.d.ts +3 -1
  616. package/dist/modules/n8n-packages/engine/project-package-importer.js +68 -25
  617. package/dist/modules/n8n-packages/engine/project-package-importer.js.map +1 -1
  618. package/dist/modules/n8n-packages/engine/workflow-package-importer.d.ts +3 -1
  619. package/dist/modules/n8n-packages/engine/workflow-package-importer.js +54 -16
  620. package/dist/modules/n8n-packages/engine/workflow-package-importer.js.map +1 -1
  621. package/dist/modules/n8n-packages/entities/folder/folder.exporter.d.ts +1 -0
  622. package/dist/modules/n8n-packages/entities/folder/folder.exporter.js +1 -0
  623. package/dist/modules/n8n-packages/entities/folder/folder.exporter.js.map +1 -1
  624. package/dist/modules/n8n-packages/entities/project/project-import.types.d.ts +2 -0
  625. package/dist/modules/n8n-packages/entities/project/project-importer.js +9 -1
  626. package/dist/modules/n8n-packages/entities/project/project-importer.js.map +1 -1
  627. package/dist/modules/n8n-packages/entities/project/project.exporter.d.ts +1 -0
  628. package/dist/modules/n8n-packages/entities/project/project.exporter.js +2 -0
  629. package/dist/modules/n8n-packages/entities/project/project.exporter.js.map +1 -1
  630. package/dist/modules/n8n-packages/entities/project/project.serializer.js +3 -0
  631. package/dist/modules/n8n-packages/entities/project/project.serializer.js.map +1 -1
  632. package/dist/modules/n8n-packages/entities/reference.d.ts +6 -0
  633. package/dist/modules/n8n-packages/entities/reference.js +3 -0
  634. package/dist/modules/n8n-packages/entities/reference.js.map +1 -0
  635. package/dist/modules/n8n-packages/entities/requirements.types.d.ts +2 -0
  636. package/dist/modules/n8n-packages/entities/requirements.types.js +1 -0
  637. package/dist/modules/n8n-packages/entities/requirements.types.js.map +1 -1
  638. package/dist/modules/n8n-packages/entities/tag/tag-import-decision.d.ts +24 -0
  639. package/dist/modules/n8n-packages/entities/tag/tag-import-decision.js +69 -0
  640. package/dist/modules/n8n-packages/entities/tag/tag-import-decision.js.map +1 -0
  641. package/dist/modules/n8n-packages/entities/tag/tag-importer.d.ts +14 -0
  642. package/dist/modules/n8n-packages/entities/tag/tag-importer.js +142 -0
  643. package/dist/modules/n8n-packages/entities/tag/tag-importer.js.map +1 -0
  644. package/dist/modules/n8n-packages/entities/tag/tag-requirements.extractor.d.ts +6 -0
  645. package/dist/modules/n8n-packages/entities/tag/tag-requirements.extractor.js +23 -0
  646. package/dist/modules/n8n-packages/entities/tag/tag-requirements.extractor.js.map +1 -0
  647. package/dist/modules/n8n-packages/entities/tag/tag.exporter.d.ts +15 -0
  648. package/dist/modules/n8n-packages/entities/tag/tag.exporter.js +45 -0
  649. package/dist/modules/n8n-packages/entities/tag/tag.exporter.js.map +1 -0
  650. package/dist/modules/n8n-packages/entities/tag/tag.types.d.ts +48 -0
  651. package/dist/modules/n8n-packages/entities/tag/tag.types.js +10 -0
  652. package/dist/modules/n8n-packages/entities/tag/tag.types.js.map +1 -0
  653. package/dist/modules/n8n-packages/entities/variable/variable-importer.d.ts +8 -2
  654. package/dist/modules/n8n-packages/entities/variable/variable-importer.js +82 -6
  655. package/dist/modules/n8n-packages/entities/variable/variable-importer.js.map +1 -1
  656. package/dist/modules/n8n-packages/entities/variable/variable-missing-mode.d.ts +1 -0
  657. package/dist/modules/n8n-packages/entities/variable/variable-missing-mode.js +9 -4
  658. package/dist/modules/n8n-packages/entities/variable/variable-missing-mode.js.map +1 -1
  659. package/dist/modules/n8n-packages/entities/variable/variable.types.d.ts +31 -1
  660. package/dist/modules/n8n-packages/entities/variable/variable.types.js +36 -0
  661. package/dist/modules/n8n-packages/entities/variable/variable.types.js.map +1 -1
  662. package/dist/modules/n8n-packages/entities/workflow/auto-included-workflow-resolver.d.ts +1 -0
  663. package/dist/modules/n8n-packages/entities/workflow/auto-included-workflow-resolver.js +4 -3
  664. package/dist/modules/n8n-packages/entities/workflow/auto-included-workflow-resolver.js.map +1 -1
  665. package/dist/modules/n8n-packages/entities/workflow/auto-included-workflow.exporter.d.ts +4 -1
  666. package/dist/modules/n8n-packages/entities/workflow/auto-included-workflow.exporter.js +10 -6
  667. package/dist/modules/n8n-packages/entities/workflow/auto-included-workflow.exporter.js.map +1 -1
  668. package/dist/modules/n8n-packages/entities/workflow/references/caller-ids.reference.d.ts +3 -0
  669. package/dist/modules/n8n-packages/entities/workflow/references/caller-ids.reference.js +20 -0
  670. package/dist/modules/n8n-packages/entities/workflow/references/caller-ids.reference.js.map +1 -0
  671. package/dist/modules/n8n-packages/entities/workflow/references/error-workflow.reference.d.ts +3 -0
  672. package/dist/modules/n8n-packages/entities/workflow/references/error-workflow.reference.js +25 -0
  673. package/dist/modules/n8n-packages/entities/workflow/references/error-workflow.reference.js.map +1 -0
  674. package/dist/modules/n8n-packages/entities/workflow/references/extract-workflow-requirements.d.ts +3 -0
  675. package/dist/modules/n8n-packages/entities/workflow/references/extract-workflow-requirements.js +16 -0
  676. package/dist/modules/n8n-packages/entities/workflow/references/extract-workflow-requirements.js.map +1 -0
  677. package/dist/modules/n8n-packages/entities/workflow/references/sub-workflow-node.reference.d.ts +6 -0
  678. package/dist/modules/n8n-packages/entities/workflow/references/sub-workflow-node.reference.js +55 -0
  679. package/dist/modules/n8n-packages/entities/workflow/references/sub-workflow-node.reference.js.map +1 -0
  680. package/dist/modules/n8n-packages/entities/workflow/references/workflow-references.d.ts +3 -0
  681. package/dist/modules/n8n-packages/entities/workflow/references/workflow-references.js +12 -0
  682. package/dist/modules/n8n-packages/entities/workflow/references/workflow-references.js.map +1 -0
  683. package/dist/modules/n8n-packages/entities/workflow/sub-workflow-ordering.d.ts +4 -0
  684. package/dist/modules/n8n-packages/entities/workflow/sub-workflow-ordering.js +45 -0
  685. package/dist/modules/n8n-packages/entities/workflow/sub-workflow-ordering.js.map +1 -0
  686. package/dist/modules/n8n-packages/entities/workflow/workflow-dependency-resolver.d.ts +2 -3
  687. package/dist/modules/n8n-packages/entities/workflow/workflow-dependency-resolver.js +7 -5
  688. package/dist/modules/n8n-packages/entities/workflow/workflow-dependency-resolver.js.map +1 -1
  689. package/dist/modules/n8n-packages/entities/workflow/workflow-import.types.d.ts +14 -3
  690. package/dist/modules/n8n-packages/entities/workflow/workflow-importer.d.ts +5 -6
  691. package/dist/modules/n8n-packages/entities/workflow/workflow-importer.js +25 -19
  692. package/dist/modules/n8n-packages/entities/workflow/workflow-importer.js.map +1 -1
  693. package/dist/modules/n8n-packages/entities/workflow/workflow-publisher.d.ts +11 -2
  694. package/dist/modules/n8n-packages/entities/workflow/workflow-publisher.js +17 -2
  695. package/dist/modules/n8n-packages/entities/workflow/workflow-publisher.js.map +1 -1
  696. package/dist/modules/n8n-packages/entities/workflow/workflow-requirement.exporter.d.ts +7 -1
  697. package/dist/modules/n8n-packages/entities/workflow/workflow-requirement.exporter.js +28 -7
  698. package/dist/modules/n8n-packages/entities/workflow/workflow-requirement.exporter.js.map +1 -1
  699. package/dist/modules/n8n-packages/entities/workflow/workflow.exporter.d.ts +4 -1
  700. package/dist/modules/n8n-packages/entities/workflow/workflow.exporter.js +11 -5
  701. package/dist/modules/n8n-packages/entities/workflow/workflow.exporter.js.map +1 -1
  702. package/dist/modules/n8n-packages/entities/workflow/workflow.serializer.d.ts +3 -1
  703. package/dist/modules/n8n-packages/entities/workflow/workflow.serializer.js +6 -1
  704. package/dist/modules/n8n-packages/entities/workflow/workflow.serializer.js.map +1 -1
  705. package/dist/modules/n8n-packages/n8n-packages.service.d.ts +5 -1
  706. package/dist/modules/n8n-packages/n8n-packages.service.js +32 -9
  707. package/dist/modules/n8n-packages/n8n-packages.service.js.map +1 -1
  708. package/dist/modules/n8n-packages/n8n-packages.types.d.ts +49 -4
  709. package/dist/modules/n8n-packages/n8n-packages.types.js +15 -1
  710. package/dist/modules/n8n-packages/n8n-packages.types.js.map +1 -1
  711. package/dist/modules/n8n-packages/spec/manifest.schema.d.ts +95 -11
  712. package/dist/modules/n8n-packages/spec/manifest.schema.js +2 -0
  713. package/dist/modules/n8n-packages/spec/manifest.schema.js.map +1 -1
  714. package/dist/modules/n8n-packages/spec/requirements.schema.d.ts +52 -7
  715. package/dist/modules/n8n-packages/spec/requirements.schema.js +10 -1
  716. package/dist/modules/n8n-packages/spec/requirements.schema.js.map +1 -1
  717. package/dist/modules/n8n-packages/spec/serialized/project.schema.d.ts +18 -0
  718. package/dist/modules/n8n-packages/spec/serialized/project.schema.js +5 -0
  719. package/dist/modules/n8n-packages/spec/serialized/project.schema.js.map +1 -1
  720. package/dist/modules/n8n-packages/spec/serialized/tag.schema.d.ts +12 -0
  721. package/dist/modules/n8n-packages/spec/serialized/tag.schema.js +11 -0
  722. package/dist/modules/n8n-packages/spec/serialized/tag.schema.js.map +1 -0
  723. package/dist/modules/n8n-packages/spec/serialized/workflow.schema.d.ts +3 -0
  724. package/dist/modules/n8n-packages/spec/serialized/workflow.schema.js +1 -0
  725. package/dist/modules/n8n-packages/spec/serialized/workflow.schema.js.map +1 -1
  726. package/dist/modules/oauth-server/database/entities/oauth-client.entity.d.ts +1 -0
  727. package/dist/modules/oauth-server/database/entities/oauth-client.entity.js +4 -0
  728. package/dist/modules/oauth-server/database/entities/oauth-client.entity.js.map +1 -1
  729. package/dist/modules/oauth-server/database/repositories/oauth-user-consent.repository.d.ts +1 -0
  730. package/dist/modules/oauth-server/database/repositories/oauth-user-consent.repository.js +13 -1
  731. package/dist/modules/oauth-server/database/repositories/oauth-user-consent.repository.js.map +1 -1
  732. package/dist/modules/oauth-server/oauth-flow.service.d.ts +17 -0
  733. package/dist/modules/oauth-server/oauth-flow.service.js +100 -0
  734. package/dist/modules/oauth-server/oauth-flow.service.js.map +1 -0
  735. package/dist/modules/oauth-server/oauth-server.module.js +5 -5
  736. package/dist/modules/oauth-server/oauth-server.module.js.map +1 -1
  737. package/dist/modules/oauth-server/oauth-server.service.d.ts +8 -2
  738. package/dist/modules/oauth-server/oauth-server.service.js +64 -11
  739. package/dist/modules/oauth-server/oauth-server.service.js.map +1 -1
  740. package/dist/modules/oauth-server/oauth.controller.js +3 -1
  741. package/dist/modules/oauth-server/oauth.controller.js.map +1 -1
  742. package/dist/modules/oauth-server/protected-resource-resolvers/form-trigger-resource.resolver.d.ts +38 -0
  743. package/dist/modules/oauth-server/protected-resource-resolvers/form-trigger-resource.resolver.js +95 -0
  744. package/dist/modules/oauth-server/protected-resource-resolvers/form-trigger-resource.resolver.js.map +1 -0
  745. package/dist/modules/oauth-server/protected-resource-resolvers/form-trigger-test-resource.resolver.d.ts +37 -0
  746. package/dist/modules/oauth-server/protected-resource-resolvers/form-trigger-test-resource.resolver.js +88 -0
  747. package/dist/modules/oauth-server/protected-resource-resolvers/form-trigger-test-resource.resolver.js.map +1 -0
  748. package/dist/modules/oauth-server/protected-resource-resolvers/index.d.ts +1 -0
  749. package/dist/modules/oauth-server/protected-resource-resolvers/index.js +20 -0
  750. package/dist/modules/oauth-server/protected-resource-resolvers/index.js.map +1 -0
  751. package/dist/modules/oauth-server/protected-resource-resolvers/utils.d.ts +5 -0
  752. package/dist/modules/oauth-server/protected-resource-resolvers/utils.js +16 -1
  753. package/dist/modules/oauth-server/protected-resource-resolvers/utils.js.map +1 -1
  754. package/dist/modules/oauth-server/protected-resource-resolvers/workflow-webhook-test-trigger-resource.resolver.d.ts +19 -0
  755. package/dist/modules/oauth-server/protected-resource-resolvers/workflow-webhook-test-trigger-resource.resolver.js +107 -0
  756. package/dist/modules/oauth-server/protected-resource-resolvers/workflow-webhook-test-trigger-resource.resolver.js.map +1 -0
  757. package/dist/modules/oauth-server/protected-resource-resolvers/workflow-webhook-trigger-resource.resolver.d.ts +21 -0
  758. package/dist/modules/oauth-server/protected-resource-resolvers/workflow-webhook-trigger-resource.resolver.js +109 -0
  759. package/dist/modules/oauth-server/protected-resource-resolvers/workflow-webhook-trigger-resource.resolver.js.map +1 -0
  760. package/dist/modules/otel/otel-lifecycle-handler.d.ts +0 -1
  761. package/dist/modules/otel/otel-lifecycle-handler.js +1 -4
  762. package/dist/modules/otel/otel-lifecycle-handler.js.map +1 -1
  763. package/dist/modules/provisioning.ee/provisioning.service.ee.d.ts +4 -0
  764. package/dist/modules/provisioning.ee/provisioning.service.ee.js +102 -20
  765. package/dist/modules/provisioning.ee/provisioning.service.ee.js.map +1 -1
  766. package/dist/modules/provisioning.ee/role-deletion-checker.ee.d.ts +3 -1
  767. package/dist/modules/provisioning.ee/role-deletion-checker.ee.js +13 -5
  768. package/dist/modules/provisioning.ee/role-deletion-checker.ee.js.map +1 -1
  769. package/dist/modules/source-control.ee/source-control-import.service.ee.d.ts +7 -1
  770. package/dist/modules/source-control.ee/source-control-import.service.ee.js +33 -7
  771. package/dist/modules/source-control.ee/source-control-import.service.ee.js.map +1 -1
  772. package/dist/modules/source-control.ee/source-control.controller.ee.d.ts +8 -0
  773. package/dist/modules/source-control.ee/source-control.service.ee.d.ts +4 -0
  774. package/dist/modules/source-control.ee/source-control.service.ee.js +5 -2
  775. package/dist/modules/source-control.ee/source-control.service.ee.js.map +1 -1
  776. package/dist/modules/source-control.ee/types/import-result.d.ts +2 -0
  777. package/dist/modules/sso-oidc/constants.d.ts +2 -0
  778. package/dist/modules/sso-oidc/constants.js +3 -1
  779. package/dist/modules/sso-oidc/constants.js.map +1 -1
  780. package/dist/modules/sso-oidc/oidc.controller.ee.d.ts +4 -1
  781. package/dist/modules/sso-oidc/oidc.controller.ee.js +54 -1
  782. package/dist/modules/sso-oidc/oidc.controller.ee.js.map +1 -1
  783. package/dist/modules/sso-oidc/oidc.service.ee.d.ts +9 -2
  784. package/dist/modules/sso-oidc/oidc.service.ee.js +44 -15
  785. package/dist/modules/sso-oidc/oidc.service.ee.js.map +1 -1
  786. package/dist/modules/sso-saml/saml-helpers.js +2 -3
  787. package/dist/modules/sso-saml/saml-helpers.js.map +1 -1
  788. package/dist/modules/sso-saml/saml.service.ee.js +2 -3
  789. package/dist/modules/sso-saml/saml.service.ee.js.map +1 -1
  790. package/dist/modules/workflow-reviews.ee/workflow-review-feature-gate.service.d.ts +10 -0
  791. package/dist/modules/workflow-reviews.ee/workflow-review-feature-gate.service.js +54 -0
  792. package/dist/modules/workflow-reviews.ee/workflow-review-feature-gate.service.js.map +1 -0
  793. package/dist/modules/workflow-reviews.ee/workflow-review-inbox.service.d.ts +31 -0
  794. package/dist/modules/workflow-reviews.ee/workflow-review-inbox.service.js +219 -0
  795. package/dist/modules/workflow-reviews.ee/workflow-review-inbox.service.js.map +1 -0
  796. package/dist/modules/workflow-reviews.ee/workflow-review-publish-guard.service.d.ts +9 -0
  797. package/dist/modules/workflow-reviews.ee/workflow-review-publish-guard.service.js +40 -0
  798. package/dist/modules/workflow-reviews.ee/workflow-review-publish-guard.service.js.map +1 -0
  799. package/dist/modules/workflow-reviews.ee/workflow-review-request.service.d.ts +19 -18
  800. package/dist/modules/workflow-reviews.ee/workflow-review-request.service.js +163 -155
  801. package/dist/modules/workflow-reviews.ee/workflow-review-request.service.js.map +1 -1
  802. package/dist/modules/workflow-reviews.ee/workflow-review-requests.controller.d.ts +6 -2
  803. package/dist/modules/workflow-reviews.ee/workflow-review-requests.controller.js +29 -4
  804. package/dist/modules/workflow-reviews.ee/workflow-review-requests.controller.js.map +1 -1
  805. package/dist/modules/workflow-reviews.ee/workflow-review.mapper.d.ts +3 -0
  806. package/dist/modules/workflow-reviews.ee/workflow-review.mapper.js +12 -0
  807. package/dist/modules/workflow-reviews.ee/workflow-review.mapper.js.map +1 -0
  808. package/dist/modules/workflow-reviews.ee/workflow-reviews.module.js +4 -0
  809. package/dist/modules/workflow-reviews.ee/workflow-reviews.module.js.map +1 -1
  810. package/dist/node-catalog/node-catalog.service.d.ts +1 -0
  811. package/dist/node-catalog/node-catalog.service.js +11 -3
  812. package/dist/node-catalog/node-catalog.service.js.map +1 -1
  813. package/dist/node-execution/ephemeral-node-executor.js.map +1 -1
  814. package/dist/permissions.ee/project-scope.service.d.ts +9 -0
  815. package/dist/permissions.ee/project-scope.service.js +34 -0
  816. package/dist/permissions.ee/project-scope.service.js.map +1 -0
  817. package/dist/public-api/types.d.ts +11 -1
  818. package/dist/public-api/v1/handlers/ldap/ldap.handler.d.ts +10 -0
  819. package/dist/public-api/v1/handlers/ldap/ldap.handler.js +76 -0
  820. package/dist/public-api/v1/handlers/ldap/ldap.handler.js.map +1 -0
  821. package/dist/public-api/v1/handlers/ldap/ldap.mapper.d.ts +17 -0
  822. package/dist/public-api/v1/handlers/ldap/ldap.mapper.js +35 -0
  823. package/dist/public-api/v1/handlers/ldap/ldap.mapper.js.map +1 -0
  824. package/dist/public-api/v1/handlers/n8n-packages/n8n-packages.handler.d.ts +1 -0
  825. package/dist/public-api/v1/handlers/n8n-packages/n8n-packages.handler.js +4 -0
  826. package/dist/public-api/v1/handlers/n8n-packages/n8n-packages.handler.js.map +1 -1
  827. package/dist/public-api/v1/handlers/sso-oidc/sso-oidc.handler.d.ts +8 -0
  828. package/dist/public-api/v1/handlers/sso-oidc/sso-oidc.handler.js +38 -0
  829. package/dist/public-api/v1/handlers/sso-oidc/sso-oidc.handler.js.map +1 -0
  830. package/dist/public-api/v1/handlers/sso-oidc/sso-oidc.mapper.d.ts +5 -0
  831. package/dist/public-api/v1/handlers/sso-oidc/sso-oidc.mapper.js +12 -0
  832. package/dist/public-api/v1/handlers/sso-oidc/sso-oidc.mapper.js.map +1 -0
  833. package/dist/public-api/v1/openapi.yml +789 -9
  834. package/dist/push/index.js +1 -1
  835. package/dist/push/index.js.map +1 -1
  836. package/dist/push/origin-validator.d.ts +2 -1
  837. package/dist/push/origin-validator.js +15 -2
  838. package/dist/push/origin-validator.js.map +1 -1
  839. package/dist/push/sse.push.js +2 -0
  840. package/dist/push/sse.push.js.map +1 -1
  841. package/dist/scaling/job-processor.d.ts +3 -2
  842. package/dist/scaling/job-processor.js +17 -14
  843. package/dist/scaling/job-processor.js.map +1 -1
  844. package/dist/scaling/scaling.service.d.ts +3 -2
  845. package/dist/scaling/scaling.service.js +19 -16
  846. package/dist/scaling/scaling.service.js.map +1 -1
  847. package/dist/scaling/webhook-response-relay.d.ts +34 -0
  848. package/dist/scaling/webhook-response-relay.js +323 -0
  849. package/dist/scaling/webhook-response-relay.js.map +1 -0
  850. package/dist/scheduling/durable-job-provisioner.d.ts +2 -1
  851. package/dist/scheduling/durable-job-provisioner.js +21 -3
  852. package/dist/scheduling/durable-job-provisioner.js.map +1 -1
  853. package/dist/scheduling/durable-scheduler.js +22 -0
  854. package/dist/scheduling/durable-scheduler.js.map +1 -1
  855. package/dist/scheduling/poll-trigger-node/poll-trigger-job-registrar.js +2 -1
  856. package/dist/scheduling/poll-trigger-node/poll-trigger-job-registrar.js.map +1 -1
  857. package/dist/scheduling/schedule-trigger-node/schedule-trigger-job-registrar.js +11 -4
  858. package/dist/scheduling/schedule-trigger-node/schedule-trigger-job-registrar.js.map +1 -1
  859. package/dist/security-audit/security-audit.service.js +1 -1
  860. package/dist/security-audit/security-audit.service.js.map +1 -1
  861. package/dist/services/ai-gateway.service.d.ts +3 -0
  862. package/dist/services/ai-gateway.service.js +16 -0
  863. package/dist/services/ai-gateway.service.js.map +1 -1
  864. package/dist/services/credentials-tester.service.d.ts +7 -0
  865. package/dist/services/credentials-tester.service.js +69 -9
  866. package/dist/services/credentials-tester.service.js.map +1 -1
  867. package/dist/services/frontend.service.js +14 -0
  868. package/dist/services/frontend.service.js.map +1 -1
  869. package/dist/services/oauth2-flow-proxy.service.d.ts +11 -0
  870. package/dist/services/oauth2-flow-proxy.service.js +34 -0
  871. package/dist/services/oauth2-flow-proxy.service.js.map +1 -0
  872. package/dist/services/ownership-transfer/ownership-transfer.manifest.json +5 -0
  873. package/dist/services/project.service.ee.d.ts +5 -0
  874. package/dist/services/project.service.ee.js +15 -1
  875. package/dist/services/project.service.ee.js.map +1 -1
  876. package/dist/services/protected-resource.registry.d.ts +2 -1
  877. package/dist/services/protected-resource.registry.js +7 -2
  878. package/dist/services/protected-resource.registry.js.map +1 -1
  879. package/dist/services/pruning/workflow-history-compaction.service.js +3 -2
  880. package/dist/services/pruning/workflow-history-compaction.service.js.map +1 -1
  881. package/dist/services/tag.service.d.ts +2 -1
  882. package/dist/services/tag.service.js +14 -31
  883. package/dist/services/tag.service.js.map +1 -1
  884. package/dist/sso.ee/sso-helpers.d.ts +1 -0
  885. package/dist/sso.ee/sso-helpers.js +8 -0
  886. package/dist/sso.ee/sso-helpers.js.map +1 -1
  887. package/dist/task-runners/errors/task-request-timeout.error.d.ts +2 -2
  888. package/dist/task-runners/errors/task-request-timeout.error.js +3 -3
  889. package/dist/task-runners/errors/task-request-timeout.error.js.map +1 -1
  890. package/dist/task-runners/task-broker/errors/task-requester-accept-timeout.error.d.ts +4 -0
  891. package/dist/task-runners/task-broker/errors/task-requester-accept-timeout.error.js +11 -0
  892. package/dist/task-runners/task-broker/errors/task-requester-accept-timeout.error.js.map +1 -0
  893. package/dist/task-runners/task-broker/errors/task-runner-unreachable.error.d.ts +4 -0
  894. package/dist/task-runners/task-broker/errors/task-runner-unreachable.error.js +11 -0
  895. package/dist/task-runners/task-broker/errors/task-runner-unreachable.error.js.map +1 -0
  896. package/dist/task-runners/task-broker/task-broker-ws-server.d.ts +9 -1
  897. package/dist/task-runners/task-broker/task-broker-ws-server.js +61 -32
  898. package/dist/task-runners/task-broker/task-broker-ws-server.js.map +1 -1
  899. package/dist/task-runners/task-broker/task-broker.service.d.ts +18 -1
  900. package/dist/task-runners/task-broker/task-broker.service.js +134 -63
  901. package/dist/task-runners/task-broker/task-broker.service.js.map +1 -1
  902. package/dist/task-runners/task-managers/task-requester.d.ts +1 -0
  903. package/dist/task-runners/task-managers/task-requester.js +4 -1
  904. package/dist/task-runners/task-managers/task-requester.js.map +1 -1
  905. package/dist/task-runners/task-runner-module.js +2 -2
  906. package/dist/task-runners/task-runner-module.js.map +1 -1
  907. package/dist/telemetry/index.d.ts +3 -1
  908. package/dist/telemetry/index.js +15 -8
  909. package/dist/telemetry/index.js.map +1 -1
  910. package/dist/utils/ai-service-retry.js +2 -4
  911. package/dist/utils/ai-service-retry.js.map +1 -1
  912. package/dist/wait-tracker.js +6 -2
  913. package/dist/wait-tracker.js.map +1 -1
  914. package/dist/webhooks/test-webhooks.d.ts +1 -0
  915. package/dist/webhooks/test-webhooks.js +14 -9
  916. package/dist/webhooks/test-webhooks.js.map +1 -1
  917. package/dist/webhooks/webhook-helpers.js +69 -16
  918. package/dist/webhooks/webhook-helpers.js.map +1 -1
  919. package/dist/webhooks/webhook.service.d.ts +4 -0
  920. package/dist/webhooks/webhook.service.js +40 -12
  921. package/dist/webhooks/webhook.service.js.map +1 -1
  922. package/dist/workflow-execute-additional-data.js +2 -0
  923. package/dist/workflow-execute-additional-data.js.map +1 -1
  924. package/dist/workflow-helpers.d.ts +4 -1
  925. package/dist/workflow-helpers.js +22 -0
  926. package/dist/workflow-helpers.js.map +1 -1
  927. package/dist/workflow-runner.d.ts +2 -1
  928. package/dist/workflow-runner.js +4 -4
  929. package/dist/workflow-runner.js.map +1 -1
  930. package/dist/workflows/publication/published-workflow-trigger-deactivator.d.ts +11 -3
  931. package/dist/workflows/publication/published-workflow-trigger-deactivator.js +66 -23
  932. package/dist/workflows/publication/published-workflow-trigger-deactivator.js.map +1 -1
  933. package/dist/workflows/publication/workflow-publication-lifecycle-lock.d.ts +0 -5
  934. package/dist/workflows/publication/workflow-publication-lifecycle-lock.js +0 -44
  935. package/dist/workflows/publication/workflow-publication-lifecycle-lock.js.map +1 -1
  936. package/dist/workflows/publication/workflow-publication-outbox-consumer.js +3 -0
  937. package/dist/workflows/publication/workflow-publication-outbox-consumer.js.map +1 -1
  938. package/dist/workflows/publication/workflow-publication-reconciler.service.d.ts +4 -2
  939. package/dist/workflows/publication/workflow-publication-reconciler.service.js +43 -30
  940. package/dist/workflows/publication/workflow-publication-reconciler.service.js.map +1 -1
  941. package/dist/workflows/triggers/trigger-activation-retry.js +2 -1
  942. package/dist/workflows/triggers/trigger-activation-retry.js.map +1 -1
  943. package/dist/workflows/triggers/workflow-trigger-activator.js +8 -1
  944. package/dist/workflows/triggers/workflow-trigger-activator.js.map +1 -1
  945. package/dist/workflows/workflow-finder.service.d.ts +1 -0
  946. package/dist/workflows/workflow-finder.service.js +3 -1
  947. package/dist/workflows/workflow-finder.service.js.map +1 -1
  948. package/dist/workflows/workflow-publish-guard-proxy.service.d.ts +8 -0
  949. package/dist/workflows/workflow-publish-guard-proxy.service.js +26 -0
  950. package/dist/workflows/workflow-publish-guard-proxy.service.js.map +1 -0
  951. package/dist/workflows/workflow-validation.service.d.ts +1 -0
  952. package/dist/workflows/workflow-validation.service.js +23 -8
  953. package/dist/workflows/workflow-validation.service.js.map +1 -1
  954. package/dist/workflows/workflow.service.d.ts +7 -3
  955. package/dist/workflows/workflow.service.ee.d.ts +4 -1
  956. package/dist/workflows/workflow.service.js +75 -30
  957. package/dist/workflows/workflow.service.js.map +1 -1
  958. package/dist/workflows/workflows.controller.d.ts +4 -1
  959. package/package.json +39 -39
  960. package/dist/modules/dynamic-credentials.ee/context-establishment-hooks/n8n-oauth/index.d.ts +0 -2
  961. package/dist/modules/dynamic-credentials.ee/context-establishment-hooks/n8n-oauth/index.js +0 -19
  962. package/dist/modules/dynamic-credentials.ee/context-establishment-hooks/n8n-oauth/index.js.map +0 -1
  963. package/dist/modules/dynamic-credentials.ee/context-establishment-hooks/n8n-oauth/metadata.d.ts +0 -20
  964. package/dist/modules/dynamic-credentials.ee/context-establishment-hooks/n8n-oauth/metadata.js +0 -12
  965. package/dist/modules/dynamic-credentials.ee/context-establishment-hooks/n8n-oauth/metadata.js.map +0 -1
  966. package/dist/modules/dynamic-credentials.ee/context-establishment-hooks/n8n-oauth/n8n-oauth-extractor.d.ts +0 -12
  967. package/dist/modules/dynamic-credentials.ee/context-establishment-hooks/n8n-oauth/n8n-oauth-extractor.js +0 -85
  968. package/dist/modules/dynamic-credentials.ee/context-establishment-hooks/n8n-oauth/n8n-oauth-extractor.js.map +0 -1
  969. package/dist/modules/dynamic-credentials.ee/context-establishment-hooks/n8n-oauth/n8n-oauth-seeder.d.ts +0 -10
  970. package/dist/modules/dynamic-credentials.ee/context-establishment-hooks/n8n-oauth/n8n-oauth-seeder.js +0 -77
  971. package/dist/modules/dynamic-credentials.ee/context-establishment-hooks/n8n-oauth/n8n-oauth-seeder.js.map +0 -1
  972. package/dist/modules/n8n-packages/entities/workflow/static-sub-workflow-id.d.ts +0 -2
  973. package/dist/modules/n8n-packages/entities/workflow/static-sub-workflow-id.js +0 -23
  974. package/dist/modules/n8n-packages/entities/workflow/static-sub-workflow-id.js.map +0 -1
  975. package/dist/modules/n8n-packages/entities/workflow/workflow-requirements.extractor.d.ts +0 -7
  976. package/dist/modules/n8n-packages/entities/workflow/workflow-requirements.extractor.js +0 -41
  977. package/dist/modules/n8n-packages/entities/workflow/workflow-requirements.extractor.js.map +0 -1
  978. package/dist/services/trigger-auth-identity-seeder-proxy.service.d.ts +0 -10
  979. package/dist/services/trigger-auth-identity-seeder-proxy.service.js.map +0 -1
  980. package/dist/workflows/publication/published-workflow-enqueuer.d.ts +0 -13
  981. package/dist/workflows/publication/published-workflow-enqueuer.js +0 -50
  982. package/dist/workflows/publication/published-workflow-enqueuer.js.map +0 -1
@@ -14,6 +14,7 @@ const backend_common_1 = require("@n8n/backend-common");
14
14
  const config_1 = require("@n8n/config");
15
15
  const constants_1 = require("@n8n/constants");
16
16
  const di_1 = require("@n8n/di");
17
+ const sleep_1 = require("@n8n/utils/sleep");
17
18
  const n8n_workflow_1 = require("n8n-workflow");
18
19
  const constants_2 = require("../../constants");
19
20
  const default_task_runner_disconnect_analyzer_1 = require("../../task-runners/default-task-runner-disconnect-analyzer");
@@ -40,17 +41,27 @@ let TaskBrokerWsServer = class TaskBrokerWsServer {
40
41
  if (heartbeatInterval <= 0) {
41
42
  throw new n8n_workflow_1.UserError('Heartbeat interval must be greater than 0');
42
43
  }
43
- this.heartbeatTimer = setInterval(() => {
44
- for (const [runnerId, connection] of this.runnerConnections.entries()) {
45
- if (!connection.isAlive) {
46
- void this.removeConnection(runnerId, 'failed-heartbeat-check', constants_2.WsStatusCodes.CloseProtocolError);
47
- this.runnerLifecycleEvents.emit('runner:failed-heartbeat-check');
48
- return;
49
- }
44
+ this.heartbeatTimer = setInterval(() => this.checkConnectionLiveness(), heartbeatInterval * constants_1.Time.seconds.toMilliseconds);
45
+ }
46
+ checkConnectionLiveness() {
47
+ let anyDead = false;
48
+ for (const [runnerId, connection] of this.runnerConnections) {
49
+ if (connection.isAlive) {
50
50
  connection.isAlive = false;
51
51
  connection.ping();
52
52
  }
53
- }, heartbeatInterval * constants_1.Time.seconds.toMilliseconds);
53
+ else {
54
+ anyDead = true;
55
+ void this.removeConnection(runnerId, {
56
+ reason: 'failed-heartbeat-check',
57
+ code: constants_2.WsStatusCodes.CloseProtocolError,
58
+ expectedConnection: connection,
59
+ });
60
+ }
61
+ }
62
+ if (anyDead) {
63
+ this.runnerLifecycleEvents.emit('runner:failed-heartbeat-check');
64
+ }
54
65
  }
55
66
  async stop() {
56
67
  if (this.heartbeatTimer) {
@@ -80,23 +91,23 @@ let TaskBrokerWsServer = class TaskBrokerWsServer {
80
91
  ? Buffer.from(data)
81
92
  : data;
82
93
  const message = JSON.parse(buffer.toString('utf8'));
83
- if (!isConnected && message.type !== 'runner:info') {
84
- return;
94
+ if (!isConnected) {
95
+ if (message.type === 'runner:info') {
96
+ await this.removeConnection(id);
97
+ isConnected = true;
98
+ this.runnerConnections.set(id, connection);
99
+ this.taskBroker.registerRunner({
100
+ id,
101
+ taskTypes: message.types,
102
+ lastSeen: new Date(),
103
+ name: message.name,
104
+ }, this.sendMessage.bind(this, id), () => this.isRunnerReachable(id, connection));
105
+ this.logger.info(`Registered runner "${message.name}" (${id}) `);
106
+ }
85
107
  }
86
- else if (!isConnected && message.type === 'runner:info') {
87
- await this.removeConnection(id);
88
- isConnected = true;
89
- this.runnerConnections.set(id, connection);
90
- this.taskBroker.registerRunner({
91
- id,
92
- taskTypes: message.types,
93
- lastSeen: new Date(),
94
- name: message.name,
95
- }, this.sendMessage.bind(this, id));
96
- this.logger.info(`Registered runner "${message.name}" (${id}) `);
97
- return;
108
+ else if (this.isCurrentConnection(id, connection)) {
109
+ void this.taskBroker.onRunnerMessage(id, message);
98
110
  }
99
- void this.taskBroker.onRunnerMessage(id, message);
100
111
  }
101
112
  catch (error) {
102
113
  this.logger.error(`Couldn't parse message from runner "${id}"`, {
@@ -109,31 +120,49 @@ let TaskBrokerWsServer = class TaskBrokerWsServer {
109
120
  connection.once('close', async () => {
110
121
  connection.off('pong', heartbeat);
111
122
  connection.off('message', onMessage);
112
- await this.removeConnection(id);
123
+ await this.removeConnection(id, { expectedConnection: connection });
113
124
  });
114
125
  connection.on('message', onMessage);
115
126
  connection.send(JSON.stringify({ type: 'broker:inforequest' }));
116
127
  }
117
- async removeConnection(id, reason = 'unknown', code = constants_2.WsStatusCodes.CloseNormal) {
128
+ async removeConnection(id, { reason = 'unknown', code = constants_2.WsStatusCodes.CloseNormal, expectedConnection, } = {}) {
118
129
  const connection = this.runnerConnections.get(id);
119
- if (connection) {
130
+ const isStaleRemoval = expectedConnection !== undefined && !this.isCurrentConnection(id, expectedConnection);
131
+ if (connection && !isStaleRemoval) {
132
+ this.runnerConnections.delete(id);
133
+ connection.close(code);
134
+ const inFlightTaskIds = this.taskBroker.getInFlightTaskIds(id);
120
135
  const disconnectError = await this.disconnectAnalyzer.toDisconnectError({
121
136
  runnerId: id,
122
137
  reason,
123
138
  heartbeatInterval: this.taskRunnersConfig.heartbeatInterval,
124
139
  });
125
- this.taskBroker.deregisterRunner(id, disconnectError);
126
- this.logger.debug(`Deregistered runner "${id}"`);
127
- connection.close(code);
128
- this.runnerConnections.delete(id);
140
+ const hasReconnected = this.runnerConnections.has(id);
141
+ if (hasReconnected) {
142
+ this.taskBroker.failTasks(inFlightTaskIds, disconnectError);
143
+ }
144
+ else {
145
+ this.taskBroker.deregisterRunner(id, disconnectError);
146
+ this.logger.debug(`Deregistered runner "${id}"`);
147
+ }
129
148
  }
130
149
  }
131
150
  handleRequest(req, _res) {
132
151
  this.add(req.query.id, req.ws);
133
152
  }
153
+ isCurrentConnection(id, connection) {
154
+ return this.runnerConnections.get(id) === connection;
155
+ }
156
+ isRunnerReachable(id, connection) {
157
+ return this.isCurrentConnection(id, connection) && connection.readyState === connection.OPEN;
158
+ }
134
159
  async stopConnectedRunners() {
135
160
  await this.drainActiveTasks();
136
- await Promise.all(Array.from(this.runnerConnections.keys()).map(async (id) => await this.removeConnection(id, 'shutting-down', constants_2.WsStatusCodes.CloseGoingAway)));
161
+ await Promise.all(Array.from(this.runnerConnections.entries()).map(async ([id, connection]) => await this.removeConnection(id, {
162
+ reason: 'shutting-down',
163
+ code: constants_2.WsStatusCodes.CloseGoingAway,
164
+ expectedConnection: connection,
165
+ })));
137
166
  }
138
167
  async drainActiveTasks() {
139
168
  const drainTimeout = Math.floor(this.globalConfig.generic.gracefulShutdownTimeout * 0.8);
@@ -148,7 +177,7 @@ let TaskBrokerWsServer = class TaskBrokerWsServer {
148
177
  }
149
178
  const start = Date.now();
150
179
  while (this.taskBroker.hasActiveTasks() && Date.now() - start < drainTimeoutMs) {
151
- await (0, n8n_workflow_1.sleep)(100);
180
+ await (0, sleep_1.sleep)(100);
152
181
  }
153
182
  if (this.taskBroker.hasActiveTasks()) {
154
183
  this.logger.warn(`Drain timeout reached after ${drainTimeout}s, will force-shutdown with active tasks...`);
@@ -1 +1 @@
1
- {"version":3,"file":"task-broker-ws-server.js","sourceRoot":"","sources":["../../../src/task-runners/task-broker/task-broker-ws-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-broker-ws-server.js","sourceRoot":"","sources":["../../../src/task-runners/task-broker/task-broker-ws-server.ts"],"names":[],"mappings":"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"}
@@ -30,11 +30,14 @@ export interface TaskRequest {
30
30
  taskType: string;
31
31
  timeout?: NodeJS.Timeout;
32
32
  acceptInProgress?: boolean;
33
+ timeoutRefreshes?: number;
33
34
  }
34
35
  export type MessageCallback = (message: BrokerMessage.ToRunner.All) => Promise<void> | void;
35
36
  export type RequesterMessageCallback = (message: BrokerMessage.ToRequester.All) => Promise<void> | void;
36
37
  type RunnerAcceptCallback = () => void;
38
+ type RequesterAcceptCallback = (settings: RequesterMessage.ToBroker.TaskSettings['settings']) => void;
37
39
  type TaskRejectCallback = (reason: TaskRejectError | TaskDeferredError) => void;
40
+ export type RunnerReachabilityCheck = () => boolean;
38
41
  export declare class TaskBroker {
39
42
  private readonly logger;
40
43
  private readonly taskRunnersConfig;
@@ -51,10 +54,16 @@ export declare class TaskBroker {
51
54
  private mismatchWarned;
52
55
  constructor(logger: Logger, taskRunnersConfig: TaskRunnersConfig, taskRunnerLifecycleEvents: TaskRunnerLifecycleEvents, globalConfig: GlobalConfig);
53
56
  private createRequestTimeout;
57
+ private refreshRequestTimeout;
54
58
  private handleRequestTimeout;
59
+ private discardOffers;
55
60
  expireTasks(): void;
56
- registerRunner(runner: TaskRunner, messageCallback: MessageCallback): void;
61
+ private discardOffersFrom;
62
+ private discardOffersFromUnreachableRunners;
63
+ registerRunner(runner: TaskRunner, messageCallback: MessageCallback, isRunnerReachable?: RunnerReachabilityCheck): void;
57
64
  deregisterRunner(runnerId: string, error: Error): void;
65
+ getInFlightTaskIds(runnerId: TaskRunner['id']): Array<Task['id']>;
66
+ failTasks(taskIds: Array<Task['id']>, error: Error): void;
58
67
  registerRequester(requesterId: string, messageCallback: RequesterMessageCallback): void;
59
68
  deregisterRequester(requesterId: string): void;
60
69
  private messageRunner;
@@ -73,6 +82,7 @@ export declare class TaskBroker {
73
82
  handleRequesterNodeTypesResponse(taskId: Task['id'], requestId: RequesterMessage.ToBroker.NodeTypesResponse['requestId'], nodeTypes: RequesterMessage.ToBroker.NodeTypesResponse['nodeTypes']): Promise<void>;
74
83
  handleRequesterAccept(taskId: Task['id'], settings: RequesterMessage.ToBroker.TaskSettings['settings']): void;
75
84
  handleRequesterReject(taskId: Task['id'], reason: string): void;
85
+ private untrackTask;
76
86
  private cancelTask;
77
87
  private failTask;
78
88
  private getRunnerOrFailTask;
@@ -94,11 +104,17 @@ export declare class TaskBroker {
94
104
  getKnownRunners(): Map<string, {
95
105
  runner: TaskRunner;
96
106
  messageCallback: MessageCallback;
107
+ isRunnerReachable: RunnerReachabilityCheck;
97
108
  }>;
98
109
  getKnownRequesters(): Map<string, RequesterMessageCallback>;
99
110
  getRunnerAcceptRejects(): Map<string, {
100
111
  accept: RunnerAcceptCallback;
101
112
  reject: TaskRejectCallback;
113
+ runnerId: TaskRunner['id'];
114
+ }>;
115
+ getRequesterAcceptRejects(): Map<string, {
116
+ accept: RequesterAcceptCallback;
117
+ reject: TaskRejectCallback;
102
118
  }>;
103
119
  setTasks(tasks: Record<string, Task>): void;
104
120
  setPendingTaskOffers(pendingTaskOffers: TaskOffer[]): void;
@@ -106,6 +122,7 @@ export declare class TaskBroker {
106
122
  setRunnerAcceptRejects(runnerAcceptRejects: Record<string, {
107
123
  accept: RunnerAcceptCallback;
108
124
  reject: TaskRejectCallback;
125
+ runnerId: TaskRunner['id'];
109
126
  }>): void;
110
127
  }
111
128
  export {};
@@ -18,9 +18,12 @@ const n8n_workflow_1 = require("n8n-workflow");
18
18
  const nanoid_1 = require("nanoid");
19
19
  const task_deferred_error_1 = require("../../task-runners/task-broker/errors/task-deferred.error");
20
20
  const task_reject_error_1 = require("../../task-runners/task-broker/errors/task-reject.error");
21
+ const task_requester_accept_timeout_error_1 = require("../../task-runners/task-broker/errors/task-requester-accept-timeout.error");
21
22
  const task_runner_accept_timeout_error_1 = require("../../task-runners/task-broker/errors/task-runner-accept-timeout.error");
22
23
  const task_runner_execution_timeout_error_1 = require("../../task-runners/task-broker/errors/task-runner-execution-timeout.error");
24
+ const task_runner_unreachable_error_1 = require("../../task-runners/task-broker/errors/task-runner-unreachable.error");
23
25
  const task_runner_lifecycle_events_1 = require("../../task-runners/task-runner-lifecycle-events");
26
+ const MAX_REQUEST_TIMEOUT_REFRESHES = 3;
24
27
  let TaskBroker = class TaskBroker {
25
28
  constructor(logger, taskRunnersConfig, taskRunnerLifecycleEvents, globalConfig) {
26
29
  this.logger = logger;
@@ -39,12 +42,27 @@ let TaskBroker = class TaskBroker {
39
42
  if (this.taskRunnersConfig.taskTimeout <= 0) {
40
43
  throw new n8n_workflow_1.UserError('Task timeout must be greater than 0');
41
44
  }
45
+ if (this.taskRunnersConfig.taskRequestTimeout <= 0) {
46
+ throw new n8n_workflow_1.UserError('Task request timeout must be greater than 0');
47
+ }
48
+ if (this.taskRunnersConfig.taskAcceptTimeout <= 0) {
49
+ throw new n8n_workflow_1.UserError('Task accept timeout must be greater than 0');
50
+ }
42
51
  }
43
52
  createRequestTimeout(requestId) {
44
53
  return setTimeout(() => {
45
54
  this.handleRequestTimeout(requestId);
46
55
  }, this.taskRunnersConfig.taskRequestTimeout * constants_1.Time.seconds.toMilliseconds);
47
56
  }
57
+ refreshRequestTimeout(request) {
58
+ const isPending = this.pendingTaskRequests.some((r) => r.requestId === request.requestId);
59
+ const refreshes = request.timeoutRefreshes ?? 0;
60
+ if (isPending && refreshes < MAX_REQUEST_TIMEOUT_REFRESHES) {
61
+ request.timeoutRefreshes = refreshes + 1;
62
+ clearTimeout(request.timeout);
63
+ request.timeout = this.createRequestTimeout(request.requestId);
64
+ }
65
+ }
48
66
  handleRequestTimeout(requestId) {
49
67
  const requestIndex = this.pendingTaskRequests.findIndex((r) => r.requestId === requestId);
50
68
  if (requestIndex === -1)
@@ -59,33 +77,45 @@ let TaskBroker = class TaskBroker {
59
77
  reason: 'timeout',
60
78
  });
61
79
  }
62
- expireTasks() {
63
- const now = process.hrtime.bigint();
80
+ discardOffers(shouldDiscard) {
64
81
  for (let i = this.pendingTaskOffers.length - 1; i >= 0; i--) {
65
- const offer = this.pendingTaskOffers[i];
66
- if (offer.validFor === -1)
67
- continue;
68
- if (offer.validUntil < now) {
82
+ if (shouldDiscard(this.pendingTaskOffers[i])) {
69
83
  this.pendingTaskOffers.splice(i, 1);
70
84
  }
71
85
  }
72
86
  }
73
- registerRunner(runner, messageCallback) {
74
- this.knownRunners.set(runner.id, { runner, messageCallback });
87
+ expireTasks() {
88
+ const now = process.hrtime.bigint();
89
+ this.discardOffers(({ validFor, validUntil }) => validFor !== -1 && validUntil < now);
90
+ }
91
+ discardOffersFrom(runnerId) {
92
+ this.discardOffers((offer) => offer.runnerId === runnerId);
93
+ }
94
+ discardOffersFromUnreachableRunners() {
95
+ this.discardOffers((offer) => this.knownRunners.get(offer.runnerId)?.isRunnerReachable() === false);
96
+ }
97
+ registerRunner(runner, messageCallback, isRunnerReachable = () => true) {
98
+ this.knownRunners.set(runner.id, { runner, messageCallback, isRunnerReachable });
75
99
  void this.knownRunners.get(runner.id).messageCallback({ type: 'broker:runnerregistered' });
76
100
  }
77
101
  deregisterRunner(runnerId, error) {
78
102
  this.knownRunners.delete(runnerId);
79
- for (let i = this.pendingTaskOffers.length - 1; i >= 0; i--) {
80
- if (this.pendingTaskOffers[i].runnerId === runnerId) {
81
- this.pendingTaskOffers.splice(i, 1);
103
+ this.discardOffersFrom(runnerId);
104
+ for (const [taskId, acceptReject] of this.runnerAcceptRejects) {
105
+ if (acceptReject.runnerId === runnerId) {
106
+ this.handleRunnerReject(taskId, `The Task Runner (${runnerId}) has disconnected: ${error.message}`);
82
107
  }
83
108
  }
84
- for (const task of this.tasks.values()) {
85
- if (task.runnerId === runnerId) {
86
- void this.failTask(task.id, error);
87
- this.handleRunnerReject(task.id, `The Task Runner (${runnerId}) has disconnected: ${error.message}`);
88
- }
109
+ this.failTasks(this.getInFlightTaskIds(runnerId), error);
110
+ }
111
+ getInFlightTaskIds(runnerId) {
112
+ return [...this.tasks.values()]
113
+ .filter((task) => task.runnerId === runnerId)
114
+ .map((task) => task.id);
115
+ }
116
+ failTasks(taskIds, error) {
117
+ for (const taskId of taskIds) {
118
+ void this.failTask(taskId, error);
89
119
  }
90
120
  }
91
121
  registerRequester(requesterId, messageCallback) {
@@ -290,29 +320,33 @@ let TaskBroker = class TaskBroker {
290
320
  this.requesterAcceptRejects.delete(taskId);
291
321
  }
292
322
  }
293
- async cancelTask(taskId, reason) {
323
+ untrackTask(taskId) {
294
324
  const task = this.tasks.get(taskId);
295
- if (!task) {
296
- return;
325
+ if (task) {
326
+ clearTimeout(task.timeout);
327
+ this.tasks.delete(taskId);
328
+ }
329
+ return task;
330
+ }
331
+ async cancelTask(taskId, reason) {
332
+ const task = this.untrackTask(taskId);
333
+ if (task) {
334
+ await this.messageRunner(task.runnerId, {
335
+ type: 'broker:taskcancel',
336
+ taskId,
337
+ reason,
338
+ });
297
339
  }
298
- this.tasks.delete(taskId);
299
- await this.messageRunner(task.runnerId, {
300
- type: 'broker:taskcancel',
301
- taskId,
302
- reason,
303
- });
304
340
  }
305
341
  async failTask(taskId, error) {
306
- const task = this.tasks.get(taskId);
307
- if (!task) {
308
- return;
342
+ const task = this.untrackTask(taskId);
343
+ if (task) {
344
+ await this.messageRequester(task.requesterId, {
345
+ type: 'broker:taskerror',
346
+ taskId,
347
+ error,
348
+ });
309
349
  }
310
- this.tasks.delete(taskId);
311
- await this.messageRequester(task.requesterId, {
312
- type: 'broker:taskerror',
313
- taskId,
314
- error,
315
- });
316
350
  }
317
351
  async getRunnerOrFailTask(taskId) {
318
352
  const task = this.tasks.get(taskId);
@@ -325,6 +359,11 @@ let TaskBroker = class TaskBroker {
325
359
  await this.failTask(taskId, error);
326
360
  throw error;
327
361
  }
362
+ if (!runner.isRunnerReachable()) {
363
+ const error = new task_runner_unreachable_error_1.TaskRunnerUnreachableError(taskId, task.runnerId);
364
+ await this.failTask(taskId, error);
365
+ throw error;
366
+ }
328
367
  return runner.runner;
329
368
  }
330
369
  async sendTaskSettings(taskId, settings) {
@@ -365,37 +404,38 @@ let TaskBroker = class TaskBroker {
365
404
  }));
366
405
  }
367
406
  async taskDoneHandler(taskId, data) {
368
- const task = this.tasks.get(taskId);
369
- if (!task)
370
- return;
371
- clearTimeout(task.timeout);
372
- await this.requesters.get(task.requesterId)?.({
373
- type: 'broker:taskdone',
374
- taskId: task.id,
375
- data,
376
- });
377
- this.tasks.delete(task.id);
407
+ const task = this.untrackTask(taskId);
408
+ if (task) {
409
+ await this.requesters.get(task.requesterId)?.({
410
+ type: 'broker:taskdone',
411
+ taskId: task.id,
412
+ data,
413
+ });
414
+ }
378
415
  }
379
416
  async taskErrorHandler(taskId, error) {
380
- const task = this.tasks.get(taskId);
381
- if (!task)
382
- return;
383
- clearTimeout(task.timeout);
384
- await this.requesters.get(task.requesterId)?.({
385
- type: 'broker:taskerror',
386
- taskId: task.id,
387
- error,
388
- });
389
- this.tasks.delete(task.id);
417
+ const task = this.untrackTask(taskId);
418
+ if (task) {
419
+ await this.requesters.get(task.requesterId)?.({
420
+ type: 'broker:taskerror',
421
+ taskId: task.id,
422
+ error,
423
+ });
424
+ }
390
425
  }
391
426
  async acceptOffer(offer, request) {
392
427
  const taskId = (0, nanoid_1.nanoid)(8);
428
+ let runnerAcceptTimer;
393
429
  try {
394
430
  const acceptPromise = new Promise((resolve, reject) => {
395
- this.runnerAcceptRejects.set(taskId, { accept: resolve, reject });
396
- setTimeout(() => {
431
+ this.runnerAcceptRejects.set(taskId, {
432
+ accept: resolve,
433
+ reject,
434
+ runnerId: offer.runnerId,
435
+ });
436
+ runnerAcceptTimer = setTimeout(() => {
397
437
  reject(new task_runner_accept_timeout_error_1.TaskRunnerAcceptTimeoutError(taskId, offer.runnerId));
398
- }, 2000);
438
+ }, this.taskRunnersConfig.taskAcceptTimeout * constants_1.Time.seconds.toMilliseconds);
399
439
  });
400
440
  await this.messageRunner(offer.runnerId, {
401
441
  type: 'broker:taskofferaccept',
@@ -408,20 +448,32 @@ let TaskBroker = class TaskBroker {
408
448
  request.acceptInProgress = false;
409
449
  if (e instanceof task_reject_error_1.TaskRejectError) {
410
450
  this.logger.info(`Task (${taskId}) rejected by Runner with reason "${e.reason}"`);
451
+ this.settleTasks();
411
452
  return;
412
453
  }
413
454
  if (e instanceof task_deferred_error_1.TaskDeferredError) {
414
455
  this.logger.debug(`Task (${taskId}) deferred until runner is ready`);
415
- clearTimeout(request.timeout);
416
- request.timeout = this.createRequestTimeout(request.requestId);
456
+ this.refreshRequestTimeout(request);
417
457
  return;
418
458
  }
419
459
  if (e instanceof task_runner_accept_timeout_error_1.TaskRunnerAcceptTimeoutError) {
420
460
  this.logger.warn(e.message);
461
+ this.runnerAcceptRejects.delete(taskId);
462
+ this.refreshRequestTimeout(request);
463
+ await this.messageRunner(offer.runnerId, {
464
+ type: 'broker:taskcancel',
465
+ taskId,
466
+ reason: 'Acknowledgement window elapsed',
467
+ });
468
+ this.discardOffersFrom(offer.runnerId);
469
+ this.settleTasks();
421
470
  return;
422
471
  }
423
472
  throw e;
424
473
  }
474
+ finally {
475
+ clearTimeout(runnerAcceptTimer);
476
+ }
425
477
  clearTimeout(request.timeout);
426
478
  const task = {
427
479
  id: taskId,
@@ -432,19 +484,21 @@ let TaskBroker = class TaskBroker {
432
484
  this.tasks.set(taskId, task);
433
485
  const requestIndex = this.pendingTaskRequests.findIndex((r) => r.requestId === request.requestId);
434
486
  if (requestIndex === -1) {
435
- this.logger.error(`Failed to find task request (${request.requestId}) after a task was accepted. This shouldn't happen, and might be a race condition.`);
487
+ this.logger.warn(`Task request (${request.requestId}) expired while runner (${offer.runnerId}) was accepting task (${taskId}), canceling task`);
488
+ await this.cancelTask(taskId, 'Task request expired');
436
489
  return;
437
490
  }
438
491
  this.pendingTaskRequests.splice(requestIndex, 1);
492
+ let requesterAcceptTimer;
439
493
  try {
440
494
  const acceptPromise = new Promise((resolve, reject) => {
441
495
  this.requesterAcceptRejects.set(taskId, {
442
496
  accept: resolve,
443
497
  reject,
444
498
  });
445
- setTimeout(() => {
446
- reject('Requester timed out');
447
- }, 2000);
499
+ requesterAcceptTimer = setTimeout(() => {
500
+ reject(new task_requester_accept_timeout_error_1.TaskRequesterAcceptTimeoutError(taskId, request.requesterId));
501
+ }, this.taskRunnersConfig.taskAcceptTimeout * constants_1.Time.seconds.toMilliseconds);
448
502
  });
449
503
  await this.messageRequester(request.requesterId, {
450
504
  type: 'broker:taskready',
@@ -460,12 +514,26 @@ let TaskBroker = class TaskBroker {
460
514
  this.logger.info(`Task (${taskId}) rejected by Requester with reason "${e.reason}"`);
461
515
  return;
462
516
  }
517
+ if (e instanceof task_runner_unreachable_error_1.TaskRunnerUnreachableError) {
518
+ this.logger.warn(e.message);
519
+ return;
520
+ }
521
+ if (e instanceof task_requester_accept_timeout_error_1.TaskRequesterAcceptTimeoutError) {
522
+ this.logger.warn(e.message);
523
+ this.requesterAcceptRejects.delete(taskId);
524
+ await this.cancelTask(task.id, 'Requester took too long to acknowledge the task');
525
+ return;
526
+ }
463
527
  await this.cancelTask(task.id, 'Unknown reason');
464
528
  throw e;
465
529
  }
530
+ finally {
531
+ clearTimeout(requesterAcceptTimer);
532
+ }
466
533
  }
467
534
  settleTasks() {
468
535
  this.expireTasks();
536
+ this.discardOffersFromUnreachableRunners();
469
537
  for (const request of this.pendingTaskRequests) {
470
538
  if (request.acceptInProgress) {
471
539
  continue;
@@ -535,6 +603,9 @@ let TaskBroker = class TaskBroker {
535
603
  getRunnerAcceptRejects() {
536
604
  return this.runnerAcceptRejects;
537
605
  }
606
+ getRequesterAcceptRejects() {
607
+ return this.requesterAcceptRejects;
608
+ }
538
609
  setTasks(tasks) {
539
610
  this.tasks = new Map(Object.entries(tasks));
540
611
  }