n8n 2.40.5 → 2.41.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 (817) hide show
  1. package/dist/build.tsbuildinfo +1 -1
  2. package/dist/commands/import/credentials.js +12 -3
  3. package/dist/commands/import/credentials.js.map +1 -1
  4. package/dist/commands/import/workflow.js +4 -4
  5. package/dist/commands/import/workflow.js.map +1 -1
  6. package/dist/commands/start.js +5 -2
  7. package/dist/commands/start.js.map +1 -1
  8. package/dist/constants.d.ts +1 -0
  9. package/dist/constants.js +2 -1
  10. package/dist/constants.js.map +1 -1
  11. package/dist/controllers/ai-preference.controller.js +1 -1
  12. package/dist/controllers/ai-preference.controller.js.map +1 -1
  13. package/dist/controllers/ai.controller.d.ts +1 -0
  14. package/dist/controllers/dev.controller.d.ts +8 -0
  15. package/dist/controllers/dev.controller.js +35 -0
  16. package/dist/controllers/dev.controller.js.map +1 -0
  17. package/dist/controllers/me.controller.d.ts +2 -4
  18. package/dist/controllers/me.controller.js +9 -24
  19. package/dist/controllers/me.controller.js.map +1 -1
  20. package/dist/controllers/role.controller.js +1 -0
  21. package/dist/controllers/role.controller.js.map +1 -1
  22. package/dist/crash-journal.js +1 -1
  23. package/dist/crash-journal.js.map +1 -1
  24. package/dist/credentials/credential-dependency.service.d.ts +2 -2
  25. package/dist/credentials/credential-dependency.service.js +5 -4
  26. package/dist/credentials/credential-dependency.service.js.map +1 -1
  27. package/dist/credentials/credentials-finder.service.d.ts +1 -0
  28. package/dist/credentials/credentials.controller.d.ts +4 -0
  29. package/dist/credentials/credentials.controller.js +5 -0
  30. package/dist/credentials/credentials.controller.js.map +1 -1
  31. package/dist/credentials/credentials.service.d.ts +16 -3
  32. package/dist/credentials/credentials.service.ee.d.ts +2 -0
  33. package/dist/credentials/credentials.service.js +112 -30
  34. package/dist/credentials/credentials.service.js.map +1 -1
  35. package/dist/credentials/validation.d.ts +1 -0
  36. package/dist/credentials/validation.js +11 -0
  37. package/dist/credentials/validation.js.map +1 -1
  38. package/dist/credentials-helper.d.ts +3 -2
  39. package/dist/credentials-helper.js +39 -19
  40. package/dist/credentials-helper.js.map +1 -1
  41. package/dist/credentials-overwrites.js +2 -0
  42. package/dist/credentials-overwrites.js.map +1 -1
  43. package/dist/errors/response-errors/incompatible-nodes-api-version.error.d.ts +11 -0
  44. package/dist/errors/response-errors/incompatible-nodes-api-version.error.js +13 -0
  45. package/dist/errors/response-errors/incompatible-nodes-api-version.error.js.map +1 -0
  46. package/dist/errors/unsupported-end-user-credential-trigger.error.d.ts +4 -0
  47. package/dist/errors/unsupported-end-user-credential-trigger.error.js +13 -0
  48. package/dist/errors/unsupported-end-user-credential-trigger.error.js.map +1 -0
  49. package/dist/eventbus/event-message-classes/abstract-event-message.d.ts +1 -1
  50. package/dist/eventbus/event-message-classes/abstract-event-message.js +8 -0
  51. package/dist/eventbus/event-message-classes/abstract-event-message.js.map +1 -1
  52. package/dist/eventbus/event-message-classes/event-message-ai-node.d.ts +0 -2
  53. package/dist/eventbus/event-message-classes/event-message-ai-node.js +0 -8
  54. package/dist/eventbus/event-message-classes/event-message-ai-node.js.map +1 -1
  55. package/dist/eventbus/event-message-classes/event-message-audit.d.ts +1 -2
  56. package/dist/eventbus/event-message-classes/event-message-audit.js +0 -8
  57. package/dist/eventbus/event-message-classes/event-message-audit.js.map +1 -1
  58. package/dist/eventbus/event-message-classes/event-message-execution.d.ts +0 -2
  59. package/dist/eventbus/event-message-classes/event-message-execution.js +0 -8
  60. package/dist/eventbus/event-message-classes/event-message-execution.js.map +1 -1
  61. package/dist/eventbus/event-message-classes/event-message-generic.d.ts +0 -2
  62. package/dist/eventbus/event-message-classes/event-message-generic.js +0 -8
  63. package/dist/eventbus/event-message-classes/event-message-generic.js.map +1 -1
  64. package/dist/eventbus/event-message-classes/event-message-mcp.d.ts +0 -2
  65. package/dist/eventbus/event-message-classes/event-message-mcp.js +0 -8
  66. package/dist/eventbus/event-message-classes/event-message-mcp.js.map +1 -1
  67. package/dist/eventbus/event-message-classes/event-message-node.d.ts +0 -2
  68. package/dist/eventbus/event-message-classes/event-message-node.js +0 -8
  69. package/dist/eventbus/event-message-classes/event-message-node.js.map +1 -1
  70. package/dist/eventbus/event-message-classes/event-message-queue.d.ts +0 -2
  71. package/dist/eventbus/event-message-classes/event-message-queue.js +0 -8
  72. package/dist/eventbus/event-message-classes/event-message-queue.js.map +1 -1
  73. package/dist/eventbus/event-message-classes/event-message-runner.d.ts +0 -2
  74. package/dist/eventbus/event-message-classes/event-message-runner.js +0 -8
  75. package/dist/eventbus/event-message-classes/event-message-runner.js.map +1 -1
  76. package/dist/eventbus/event-message-classes/event-message-workflow.d.ts +1 -2
  77. package/dist/eventbus/event-message-classes/event-message-workflow.js +0 -8
  78. package/dist/eventbus/event-message-classes/event-message-workflow.js.map +1 -1
  79. package/dist/events/event.service.d.ts +3 -2
  80. package/dist/events/event.service.js.map +1 -1
  81. package/dist/events/maps/mcp-post-save-metrics.event-map.d.ts +7 -0
  82. package/dist/events/maps/mcp-post-save-metrics.event-map.js +3 -0
  83. package/dist/events/maps/mcp-post-save-metrics.event-map.js.map +1 -0
  84. package/dist/events/maps/relay.event-map.d.ts +3 -0
  85. package/dist/events/maps/system-task-metrics.event-map.d.ts +45 -0
  86. package/dist/events/maps/system-task-metrics.event-map.js +3 -0
  87. package/dist/events/maps/system-task-metrics.event-map.js.map +1 -0
  88. package/dist/events/relays/activity.event-relay.d.ts +9 -3
  89. package/dist/events/relays/activity.event-relay.js +33 -4
  90. package/dist/events/relays/activity.event-relay.js.map +1 -1
  91. package/dist/events/relays/telemetry.event-relay.js +34 -14
  92. package/dist/events/relays/telemetry.event-relay.js.map +1 -1
  93. package/dist/execution-lifecycle/execution-lifecycle-hooks.js +10 -6
  94. package/dist/execution-lifecycle/execution-lifecycle-hooks.js.map +1 -1
  95. package/dist/execution-lifecycle/shared/shared-hook-functions.d.ts +1 -1
  96. package/dist/execution-lifecycle/shared/shared-hook-functions.js +2 -1
  97. package/dist/execution-lifecycle/shared/shared-hook-functions.js.map +1 -1
  98. package/dist/executions/engine-v2-execution-reader.service.d.ts +26 -0
  99. package/dist/executions/engine-v2-execution-reader.service.js +58 -13
  100. package/dist/executions/engine-v2-execution-reader.service.js.map +1 -1
  101. package/dist/executions/engine-v2-mapping.d.ts +5 -0
  102. package/dist/executions/engine-v2-mapping.js +30 -0
  103. package/dist/executions/engine-v2-mapping.js.map +1 -0
  104. package/dist/executions/execution-cursor.d.ts +51 -0
  105. package/dist/executions/execution-cursor.js +39 -0
  106. package/dist/executions/execution-cursor.js.map +1 -0
  107. package/dist/executions/execution-id.js +2 -2
  108. package/dist/executions/execution-id.js.map +1 -1
  109. package/dist/executions/execution-list-v1.service.d.ts +27 -0
  110. package/dist/executions/execution-list-v1.service.js +98 -0
  111. package/dist/executions/execution-list-v1.service.js.map +1 -0
  112. package/dist/executions/execution-list-v2.service.d.ts +25 -0
  113. package/dist/executions/execution-list-v2.service.js +168 -0
  114. package/dist/executions/execution-list-v2.service.js.map +1 -0
  115. package/dist/executions/execution-list.service.d.ts +19 -0
  116. package/dist/executions/execution-list.service.js +67 -0
  117. package/dist/executions/execution-list.service.js.map +1 -0
  118. package/dist/executions/execution-recovery.service.d.ts +1 -2
  119. package/dist/executions/execution-recovery.service.js +1 -2
  120. package/dist/executions/execution-recovery.service.js.map +1 -1
  121. package/dist/executions/execution.service.d.ts +1 -34
  122. package/dist/executions/execution.service.js +4 -73
  123. package/dist/executions/execution.service.js.map +1 -1
  124. package/dist/executions/execution.types.d.ts +4 -2
  125. package/dist/executions/executions.controller.d.ts +4 -1
  126. package/dist/executions/executions.controller.js +12 -23
  127. package/dist/executions/executions.controller.js.map +1 -1
  128. package/dist/executions/merge-execution-pages.d.ts +10 -0
  129. package/dist/executions/merge-execution-pages.js +30 -0
  130. package/dist/executions/merge-execution-pages.js.map +1 -0
  131. package/dist/executions/parse-range-query.middleware.d.ts +2 -3
  132. package/dist/executions/parse-range-query.middleware.js +27 -21
  133. package/dist/executions/parse-range-query.middleware.js.map +1 -1
  134. package/dist/external-hooks.d.ts +6 -2
  135. package/dist/load-nodes-and-credentials.d.ts +3 -0
  136. package/dist/load-nodes-and-credentials.js +37 -15
  137. package/dist/load-nodes-and-credentials.js.map +1 -1
  138. package/dist/metrics/prometheus/constant.d.ts +1 -0
  139. package/dist/metrics/prometheus/constant.js +4 -1
  140. package/dist/metrics/prometheus/constant.js.map +1 -1
  141. package/dist/metrics/prometheus/mcp-post-save-metrics.service.d.ts +10 -0
  142. package/dist/metrics/prometheus/mcp-post-save-metrics.service.js +44 -0
  143. package/dist/metrics/prometheus/mcp-post-save-metrics.service.js.map +1 -0
  144. package/dist/metrics/prometheus/prometheus.service.d.ts +3 -1
  145. package/dist/metrics/prometheus/prometheus.service.js +6 -2
  146. package/dist/metrics/prometheus/prometheus.service.js.map +1 -1
  147. package/dist/metrics/prometheus/system-task-metrics.service.d.ts +12 -0
  148. package/dist/metrics/prometheus/system-task-metrics.service.js +157 -0
  149. package/dist/metrics/prometheus/system-task-metrics.service.js.map +1 -0
  150. package/dist/middlewares/list-query/dtos/credentials.select.dto.js +1 -0
  151. package/dist/middlewares/list-query/dtos/credentials.select.dto.js.map +1 -1
  152. package/dist/modules/agents/adapters/agents-credential-provider.d.ts +2 -1
  153. package/dist/modules/agents/adapters/agents-credential-provider.js +3 -1
  154. package/dist/modules/agents/adapters/agents-credential-provider.js.map +1 -1
  155. package/dist/modules/agents/agent-chat.controller.js +32 -37
  156. package/dist/modules/agents/agent-chat.controller.js.map +1 -1
  157. package/dist/modules/agents/agent-config.service.js +1 -1
  158. package/dist/modules/agents/agent-config.service.js.map +1 -1
  159. package/dist/modules/agents/agent-conversation-state.service.d.ts +12 -0
  160. package/dist/modules/agents/agent-conversation-state.service.js +34 -0
  161. package/dist/modules/agents/agent-conversation-state.service.js.map +1 -0
  162. package/dist/modules/agents/agent-custom-tools.service.js +2 -2
  163. package/dist/modules/agents/agent-custom-tools.service.js.map +1 -1
  164. package/dist/modules/agents/agent-execution-orchestrator.service.d.ts +13 -6
  165. package/dist/modules/agents/agent-execution-orchestrator.service.js +284 -417
  166. package/dist/modules/agents/agent-execution-orchestrator.service.js.map +1 -1
  167. package/dist/modules/agents/agent-execution-recording.error.d.ts +21 -0
  168. package/dist/modules/agents/agent-execution-recording.error.js +17 -0
  169. package/dist/modules/agents/agent-execution-recording.error.js.map +1 -0
  170. package/dist/modules/agents/agent-execution.service.d.ts +1 -1
  171. package/dist/modules/agents/agent-execution.service.js +51 -20
  172. package/dist/modules/agents/agent-execution.service.js.map +1 -1
  173. package/dist/modules/agents/agent-integration-management.service.d.ts +5 -3
  174. package/dist/modules/agents/agent-integration-management.service.js +9 -6
  175. package/dist/modules/agents/agent-integration-management.service.js.map +1 -1
  176. package/dist/modules/agents/agent-integrations.controller.d.ts +1 -3
  177. package/dist/modules/agents/agent-integrations.controller.js +4 -6
  178. package/dist/modules/agents/agent-integrations.controller.js.map +1 -1
  179. package/dist/modules/agents/agent-message-mapper.d.ts +1 -1
  180. package/dist/modules/agents/agent-message-mapper.js +3 -0
  181. package/dist/modules/agents/agent-message-mapper.js.map +1 -1
  182. package/dist/modules/agents/agent-modification-telemetry.service.d.ts +2 -2
  183. package/dist/modules/agents/agent-modification-telemetry.service.js.map +1 -1
  184. package/dist/modules/agents/agent-publish.service.js +5 -5
  185. package/dist/modules/agents/agent-publish.service.js.map +1 -1
  186. package/dist/modules/agents/agent-runnable-state.service.js +1 -1
  187. package/dist/modules/agents/agent-runnable-state.service.js.map +1 -1
  188. package/dist/modules/agents/agent-runtime-cache.service.js +1 -1
  189. package/dist/modules/agents/agent-runtime-cache.service.js.map +1 -1
  190. package/dist/modules/agents/agent-runtime-reconstruction.service.js +1 -1
  191. package/dist/modules/agents/agent-runtime-reconstruction.service.js.map +1 -1
  192. package/dist/modules/agents/agent-skills.service.js +3 -3
  193. package/dist/modules/agents/agent-skills.service.js.map +1 -1
  194. package/dist/modules/agents/agent-sse-stream.d.ts +4 -1
  195. package/dist/modules/agents/agent-sse-stream.js +46 -33
  196. package/dist/modules/agents/agent-sse-stream.js.map +1 -1
  197. package/dist/modules/agents/agent-task.service.js +3 -3
  198. package/dist/modules/agents/agent-task.service.js.map +1 -1
  199. package/dist/modules/agents/agent-test-run.service.d.ts +24 -41
  200. package/dist/modules/agents/agent-test-run.service.js +83 -59
  201. package/dist/modules/agents/agent-test-run.service.js.map +1 -1
  202. package/dist/modules/agents/agent-turn-execution.service.d.ts +49 -0
  203. package/dist/modules/agents/agent-turn-execution.service.js +212 -0
  204. package/dist/modules/agents/agent-turn-execution.service.js.map +1 -0
  205. package/dist/modules/agents/agent-workflow-execution.service.d.ts +6 -3
  206. package/dist/modules/agents/agent-workflow-execution.service.js +77 -105
  207. package/dist/modules/agents/agent-workflow-execution.service.js.map +1 -1
  208. package/dist/modules/agents/agent-workflow-tool-resume.service.d.ts +0 -1
  209. package/dist/modules/agents/agent-workflow-tool-resume.service.js +46 -20
  210. package/dist/modules/agents/agent-workflow-tool-resume.service.js.map +1 -1
  211. package/dist/modules/agents/agents-config.controller.js +1 -1
  212. package/dist/modules/agents/agents-config.controller.js.map +1 -1
  213. package/dist/modules/agents/background/agent-wake.service.d.ts +3 -5
  214. package/dist/modules/agents/background/agent-wake.service.js +6 -10
  215. package/dist/modules/agents/background/agent-wake.service.js.map +1 -1
  216. package/dist/modules/agents/builder/agents-builder-prompts.d.ts +1 -1
  217. package/dist/modules/agents/builder/agents-builder-prompts.js +21 -0
  218. package/dist/modules/agents/builder/agents-builder-prompts.js.map +1 -1
  219. package/dist/modules/agents/builder/get-resource-locator-options.tool.d.ts +2 -2
  220. package/dist/modules/agents/builder/skills/external-services.skill.js +4 -1
  221. package/dist/modules/agents/builder/skills/external-services.skill.js.map +1 -1
  222. package/dist/modules/agents/entities/agent-checkpoint.entity.d.ts +1 -0
  223. package/dist/modules/agents/entities/agent-checkpoint.entity.js +10 -1
  224. package/dist/modules/agents/entities/agent-checkpoint.entity.js.map +1 -1
  225. package/dist/modules/agents/instance-ai-builder-delegate.adapter.d.ts +1 -1
  226. package/dist/modules/agents/instance-ai-builder-delegate.adapter.js +3 -3
  227. package/dist/modules/agents/instance-ai-builder-delegate.adapter.js.map +1 -1
  228. package/dist/modules/agents/integrations/agent-chat-bridge.d.ts +11 -24
  229. package/dist/modules/agents/integrations/agent-chat-bridge.js +58 -28
  230. package/dist/modules/agents/integrations/agent-chat-bridge.js.map +1 -1
  231. package/dist/modules/agents/integrations/agent-chat-hitl-resume-handler.d.ts +5 -12
  232. package/dist/modules/agents/integrations/agent-chat-hitl-resume-handler.js +8 -3
  233. package/dist/modules/agents/integrations/agent-chat-hitl-resume-handler.js.map +1 -1
  234. package/dist/modules/agents/integrations/agent-chat-integration.d.ts +2 -1
  235. package/dist/modules/agents/integrations/agent-chat-integration.js.map +1 -1
  236. package/dist/modules/agents/integrations/agent-chat-message-context.d.ts +4 -4
  237. package/dist/modules/agents/integrations/agent-chat-message-context.js +4 -37
  238. package/dist/modules/agents/integrations/agent-chat-message-context.js.map +1 -1
  239. package/dist/modules/agents/integrations/integration-message-context.d.ts +7 -0
  240. package/dist/modules/agents/integrations/integration-message-context.js +115 -0
  241. package/dist/modules/agents/integrations/integration-message-context.js.map +1 -0
  242. package/dist/modules/agents/integrations/integration-message-context.service.d.ts +8 -3
  243. package/dist/modules/agents/integrations/integration-message-context.service.js +36 -58
  244. package/dist/modules/agents/integrations/integration-message-context.service.js.map +1 -1
  245. package/dist/modules/agents/integrations/integration-tool-definitions.js +1 -1
  246. package/dist/modules/agents/integrations/integration-tool-definitions.js.map +1 -1
  247. package/dist/modules/agents/integrations/integration-tool-execution.d.ts +0 -1
  248. package/dist/modules/agents/integrations/integration-tool-execution.js +19 -42
  249. package/dist/modules/agents/integrations/integration-tool-execution.js.map +1 -1
  250. package/dist/modules/agents/integrations/integration-tool-factory.d.ts +0 -1
  251. package/dist/modules/agents/integrations/integration-tool-factory.js +1 -3
  252. package/dist/modules/agents/integrations/integration-tool-factory.js.map +1 -1
  253. package/dist/modules/agents/integrations/integration-tool-types.d.ts +13 -0
  254. package/dist/modules/agents/integrations/n8n-checkpoint-storage.js +4 -2
  255. package/dist/modules/agents/integrations/n8n-checkpoint-storage.js.map +1 -1
  256. package/dist/modules/agents/integrations/platforms/telegram-bridge-behavior.d.ts +2 -0
  257. package/dist/modules/agents/integrations/platforms/telegram-bridge-behavior.js +40 -0
  258. package/dist/modules/agents/integrations/platforms/telegram-bridge-behavior.js.map +1 -1
  259. package/dist/modules/agents/integrations/platforms/telegram-integration.d.ts +1 -0
  260. package/dist/modules/agents/integrations/platforms/telegram-integration.js +4 -0
  261. package/dist/modules/agents/integrations/platforms/telegram-integration.js.map +1 -1
  262. package/dist/modules/agents/repositories/agent-checkpoint.repository.d.ts +1 -1
  263. package/dist/modules/agents/repositories/agent-checkpoint.repository.js +2 -2
  264. package/dist/modules/agents/repositories/agent-checkpoint.repository.js.map +1 -1
  265. package/dist/modules/agents/repositories/agent-execution.repository.d.ts +2 -1
  266. package/dist/modules/agents/repositories/agent-execution.repository.js +7 -4
  267. package/dist/modules/agents/repositories/agent-execution.repository.js.map +1 -1
  268. package/dist/modules/agents/sub-agents/delegate-sub-agent-tool.js +3 -0
  269. package/dist/modules/agents/sub-agents/delegate-sub-agent-tool.js.map +1 -1
  270. package/dist/modules/agents/sub-agents/sub-agent-runner.d.ts +3 -4
  271. package/dist/modules/agents/sub-agents/sub-agent-runner.js +95 -151
  272. package/dist/modules/agents/sub-agents/sub-agent-runner.js.map +1 -1
  273. package/dist/modules/agents/tools/workflow-tool-factory.js +1 -1
  274. package/dist/modules/agents/tools/workflow-tool-factory.js.map +1 -1
  275. package/dist/modules/agents/utils/agent-credential-provider.d.ts +1 -1
  276. package/dist/modules/agents/utils/agent-credential-provider.js +2 -2
  277. package/dist/modules/agents/utils/agent-credential-provider.js.map +1 -1
  278. package/dist/modules/agents/utils/execution-to-message-mapper.d.ts +1 -1
  279. package/dist/modules/agents/utils/execution-to-message-mapper.js +3 -0
  280. package/dist/modules/agents/utils/execution-to-message-mapper.js.map +1 -1
  281. package/dist/modules/agents/utils/mcp-attribution.js +3 -1
  282. package/dist/modules/agents/utils/mcp-attribution.js.map +1 -1
  283. package/dist/modules/breaking-changes/breaking-changes.migration-registry.service.d.ts +2 -2
  284. package/dist/modules/breaking-changes/breaking-changes.migration-registry.service.js.map +1 -1
  285. package/dist/modules/breaking-changes/breaking-changes.migration.service.d.ts +4 -11
  286. package/dist/modules/breaking-changes/breaking-changes.migration.service.js +52 -28
  287. package/dist/modules/breaking-changes/breaking-changes.migration.service.js.map +1 -1
  288. package/dist/modules/breaking-changes/detection-report.d.ts +5 -0
  289. package/dist/modules/breaking-changes/detection-report.js +18 -0
  290. package/dist/modules/breaking-changes/detection-report.js.map +1 -0
  291. package/dist/modules/breaking-changes/migrations/execute-workflow-each-to-loop.migration.d.ts +2 -0
  292. package/dist/modules/breaking-changes/migrations/execute-workflow-each-to-loop.migration.js +159 -0
  293. package/dist/modules/breaking-changes/migrations/execute-workflow-each-to-loop.migration.js.map +1 -0
  294. package/dist/modules/breaking-changes/migrations/index.d.ts +2 -2
  295. package/dist/modules/breaking-changes/migrations/index.js +2 -1
  296. package/dist/modules/breaking-changes/migrations/index.js.map +1 -1
  297. package/dist/modules/breaking-changes/migrations/node-migration.d.ts +30 -1
  298. package/dist/modules/breaking-changes/migrations/node-migration.js +12 -0
  299. package/dist/modules/breaking-changes/migrations/node-migration.js.map +1 -1
  300. package/dist/modules/breaking-changes/rules/v2/oauth-callback-auth.rule.js +2 -1
  301. package/dist/modules/breaking-changes/rules/v2/oauth-callback-auth.rule.js.map +1 -1
  302. package/dist/modules/breaking-changes/rules/v2/pyodide-removed.rule.js +6 -12
  303. package/dist/modules/breaking-changes/rules/v2/pyodide-removed.rule.js.map +1 -1
  304. package/dist/modules/breaking-changes/rules/v3/agent-node-version.rule.js +6 -12
  305. package/dist/modules/breaking-changes/rules/v3/agent-node-version.rule.js.map +1 -1
  306. package/dist/modules/breaking-changes/rules/v3/agent-removed-modes.rule.js +7 -13
  307. package/dist/modules/breaking-changes/rules/v3/agent-removed-modes.rule.js.map +1 -1
  308. package/dist/modules/breaking-changes/rules/v3/ai-transform-deprecated.rule.js +6 -12
  309. package/dist/modules/breaking-changes/rules/v3/ai-transform-deprecated.rule.js.map +1 -1
  310. package/dist/modules/breaking-changes/rules/v3/always-output-data-multi-output.rule.js +6 -13
  311. package/dist/modules/breaking-changes/rules/v3/always-output-data-multi-output.rule.js.map +1 -1
  312. package/dist/modules/breaking-changes/rules/v3/caller-policy-default-any.rule.js +2 -1
  313. package/dist/modules/breaking-changes/rules/v3/caller-policy-default-any.rule.js.map +1 -1
  314. package/dist/modules/breaking-changes/rules/v3/chat-hub-deprecated.rule.js +2 -1
  315. package/dist/modules/breaking-changes/rules/v3/chat-hub-deprecated.rule.js.map +1 -1
  316. package/dist/modules/breaking-changes/rules/v3/chat-trigger-embedded-json.rule.js +6 -12
  317. package/dist/modules/breaking-changes/rules/v3/chat-trigger-embedded-json.rule.js.map +1 -1
  318. package/dist/modules/breaking-changes/rules/v3/compression-node-limits.rule.js +2 -1
  319. package/dist/modules/breaking-changes/rules/v3/compression-node-limits.rule.js.map +1 -1
  320. package/dist/modules/breaking-changes/rules/v3/docker-only-deployment.rule.js +2 -1
  321. package/dist/modules/breaking-changes/rules/v3/docker-only-deployment.rule.js.map +1 -1
  322. package/dist/modules/breaking-changes/rules/v3/execute-workflow-each-mode.rule.js +6 -12
  323. package/dist/modules/breaking-changes/rules/v3/execute-workflow-each-mode.rule.js.map +1 -1
  324. package/dist/modules/breaking-changes/rules/v3/execute-workflow-source-modes.rule.js +6 -12
  325. package/dist/modules/breaking-changes/rules/v3/execute-workflow-source-modes.rule.js.map +1 -1
  326. package/dist/modules/breaking-changes/rules/v3/external-secrets-project-roles-default.rule.js +3 -2
  327. package/dist/modules/breaking-changes/rules/v3/external-secrets-project-roles-default.rule.js.map +1 -1
  328. package/dist/modules/breaking-changes/rules/v3/get-paired-item.rule.js +6 -12
  329. package/dist/modules/breaking-changes/rules/v3/get-paired-item.rule.js.map +1 -1
  330. package/dist/modules/breaking-changes/rules/v3/gmail-trigger-version.rule.js +6 -12
  331. package/dist/modules/breaking-changes/rules/v3/gmail-trigger-version.rule.js.map +1 -1
  332. package/dist/modules/breaking-changes/rules/v3/in-memory-binary-data.rule.js +2 -1
  333. package/dist/modules/breaking-changes/rules/v3/in-memory-binary-data.rule.js.map +1 -1
  334. package/dist/modules/breaking-changes/rules/v3/offload-manual-executions.rule.js +2 -1
  335. package/dist/modules/breaking-changes/rules/v3/offload-manual-executions.rule.js.map +1 -1
  336. package/dist/modules/breaking-changes/rules/v3/pre-execute-error-creates-execution.rule.js +2 -1
  337. package/dist/modules/breaking-changes/rules/v3/pre-execute-error-creates-execution.rule.js.map +1 -1
  338. package/dist/modules/breaking-changes/rules/v3/ssrf-default-blocked-ranges.rule.js +2 -1
  339. package/dist/modules/breaking-changes/rules/v3/ssrf-default-blocked-ranges.rule.js.map +1 -1
  340. package/dist/modules/breaking-changes/rules/v3/task-runner-task-timeout.rule.js +2 -1
  341. package/dist/modules/breaking-changes/rules/v3/task-runner-task-timeout.rule.js.map +1 -1
  342. package/dist/modules/breaking-changes/rules/v3/unverified-packages.rule.js +2 -1
  343. package/dist/modules/breaking-changes/rules/v3/unverified-packages.rule.js.map +1 -1
  344. package/dist/modules/chat-hub/chat-hub-workflow.service.d.ts +1 -0
  345. package/dist/modules/chat-hub/chat-hub-workflow.service.js +7 -2
  346. package/dist/modules/chat-hub/chat-hub-workflow.service.js.map +1 -1
  347. package/dist/modules/chat-hub/chat-hub.attachment.service.js +3 -1
  348. package/dist/modules/chat-hub/chat-hub.attachment.service.js.map +1 -1
  349. package/dist/modules/community-packages/community-node-types-utils.d.ts +2 -2
  350. package/dist/modules/community-packages/community-node-types-utils.js +4 -2
  351. package/dist/modules/community-packages/community-node-types-utils.js.map +1 -1
  352. package/dist/modules/community-packages/community-node-types.service.d.ts +1 -0
  353. package/dist/modules/community-packages/community-node-types.service.js +12 -6
  354. package/dist/modules/community-packages/community-node-types.service.js.map +1 -1
  355. package/dist/modules/community-packages/community-packages.config.d.ts +1 -0
  356. package/dist/modules/community-packages/community-packages.config.js +2 -0
  357. package/dist/modules/community-packages/community-packages.config.js.map +1 -1
  358. package/dist/modules/community-packages/community-packages.lifecycle.service.d.ts +2 -1
  359. package/dist/modules/community-packages/community-packages.lifecycle.service.js +23 -18
  360. package/dist/modules/community-packages/community-packages.lifecycle.service.js.map +1 -1
  361. package/dist/modules/community-packages/community-packages.service.d.ts +1 -0
  362. package/dist/modules/community-packages/community-packages.service.js +33 -2
  363. package/dist/modules/community-packages/community-packages.service.js.map +1 -1
  364. package/dist/modules/engine-v2/engine-data-plane-client.d.ts +2 -1
  365. package/dist/modules/engine-v2/engine-data-plane-client.js +14 -0
  366. package/dist/modules/engine-v2/engine-data-plane-client.js.map +1 -1
  367. package/dist/modules/engine-v2/engine-v2.module.d.ts +1 -0
  368. package/dist/modules/engine-v2/engine-v2.module.js +11 -2
  369. package/dist/modules/engine-v2/engine-v2.module.js.map +1 -1
  370. package/dist/modules/engine-v2/engine-v2.runtime.d.ts +11 -2
  371. package/dist/modules/engine-v2/engine-v2.runtime.js +29 -11
  372. package/dist/modules/engine-v2/engine-v2.runtime.js.map +1 -1
  373. package/dist/modules/external-secrets.ee/constants.d.ts +0 -1
  374. package/dist/modules/external-secrets.ee/constants.js +1 -2
  375. package/dist/modules/external-secrets.ee/constants.js.map +1 -1
  376. package/dist/modules/external-secrets.ee/external-secrets-provider-connection-manager.ee.d.ts +1 -2
  377. package/dist/modules/external-secrets.ee/external-secrets-provider-connection-manager.ee.js +28 -29
  378. package/dist/modules/external-secrets.ee/external-secrets-provider-connection-manager.ee.js.map +1 -1
  379. package/dist/modules/external-secrets.ee/external-secrets.config.d.ts +2 -0
  380. package/dist/modules/external-secrets.ee/external-secrets.config.js +12 -0
  381. package/dist/modules/external-secrets.ee/external-secrets.config.js.map +1 -1
  382. package/dist/modules/external-secrets.ee/provider-lifecycle.service.js +1 -1
  383. package/dist/modules/external-secrets.ee/provider-lifecycle.service.js.map +1 -1
  384. package/dist/modules/external-secrets.ee/providers/infisical.js +6 -2
  385. package/dist/modules/external-secrets.ee/providers/infisical.js.map +1 -1
  386. package/dist/modules/external-secrets.ee/providers/vault.d.ts +1 -0
  387. package/dist/modules/external-secrets.ee/providers/vault.js +43 -13
  388. package/dist/modules/external-secrets.ee/providers/vault.js.map +1 -1
  389. package/dist/modules/external-secrets.ee/retry-manager.service.js +9 -1
  390. package/dist/modules/external-secrets.ee/retry-manager.service.js.map +1 -1
  391. package/dist/modules/external-secrets.ee/secrets-cache.service.d.ts +5 -2
  392. package/dist/modules/external-secrets.ee/secrets-cache.service.js +23 -20
  393. package/dist/modules/external-secrets.ee/secrets-cache.service.js.map +1 -1
  394. package/dist/modules/external-secrets.ee/types.d.ts +1 -0
  395. package/dist/modules/external-secrets.ee/types.js +7 -1
  396. package/dist/modules/external-secrets.ee/types.js.map +1 -1
  397. package/dist/modules/external-secrets.ee/with-timeout.d.ts +4 -0
  398. package/dist/modules/external-secrets.ee/with-timeout.js +21 -0
  399. package/dist/modules/external-secrets.ee/with-timeout.js.map +1 -0
  400. package/dist/modules/insights/database/repositories/insights-by-period.repository.d.ts +3 -2
  401. package/dist/modules/insights/database/repositories/insights-by-period.repository.js +4 -3
  402. package/dist/modules/insights/database/repositories/insights-by-period.repository.js.map +1 -1
  403. package/dist/modules/insights/insights-collection.service.js +10 -2
  404. package/dist/modules/insights/insights-collection.service.js.map +1 -1
  405. package/dist/modules/insights/insights.module.d.ts +1 -1
  406. package/dist/modules/instance-ai/computer-use-availability.d.ts +14 -0
  407. package/dist/modules/instance-ai/computer-use-availability.js +42 -0
  408. package/dist/modules/instance-ai/computer-use-availability.js.map +1 -0
  409. package/dist/modules/instance-ai/eval/agent-execution.service.js +1 -1
  410. package/dist/modules/instance-ai/eval/agent-execution.service.js.map +1 -1
  411. package/dist/modules/instance-ai/eval/eval-mocked-credentials-helper.d.ts +4 -2
  412. package/dist/modules/instance-ai/eval/eval-mocked-credentials-helper.js +17 -3
  413. package/dist/modules/instance-ai/eval/eval-mocked-credentials-helper.js.map +1 -1
  414. package/dist/modules/instance-ai/eval/execution.service.js +14 -4
  415. package/dist/modules/instance-ai/eval/execution.service.js.map +1 -1
  416. package/dist/modules/instance-ai/eval/thread-restore.service.d.ts +9 -3
  417. package/dist/modules/instance-ai/eval/thread-restore.service.js +75 -7
  418. package/dist/modules/instance-ai/eval/thread-restore.service.js.map +1 -1
  419. package/dist/modules/instance-ai/eval/workflow-analysis.d.ts +3 -1
  420. package/dist/modules/instance-ai/eval/workflow-analysis.js +16 -2
  421. package/dist/modules/instance-ai/eval/workflow-analysis.js.map +1 -1
  422. package/dist/modules/instance-ai/instance-ai-conversation-history.service.js +1 -1
  423. package/dist/modules/instance-ai/instance-ai-conversation-history.service.js.map +1 -1
  424. package/dist/modules/instance-ai/instance-ai-execution-wait.d.ts +14 -0
  425. package/dist/modules/instance-ai/instance-ai-execution-wait.js +66 -0
  426. package/dist/modules/instance-ai/instance-ai-execution-wait.js.map +1 -0
  427. package/dist/modules/instance-ai/instance-ai-settings.service.js +1 -4
  428. package/dist/modules/instance-ai/instance-ai-settings.service.js.map +1 -1
  429. package/dist/modules/instance-ai/instance-ai-step-run.d.ts +32 -0
  430. package/dist/modules/instance-ai/instance-ai-step-run.js +135 -0
  431. package/dist/modules/instance-ai/instance-ai-step-run.js.map +1 -0
  432. package/dist/modules/instance-ai/instance-ai.adapter.service.d.ts +9 -2
  433. package/dist/modules/instance-ai/instance-ai.adapter.service.js +305 -92
  434. package/dist/modules/instance-ai/instance-ai.adapter.service.js.map +1 -1
  435. package/dist/modules/instance-ai/instance-ai.controller.d.ts +1 -0
  436. package/dist/modules/instance-ai/instance-ai.controller.js +17 -4
  437. package/dist/modules/instance-ai/instance-ai.controller.js.map +1 -1
  438. package/dist/modules/instance-ai/instance-ai.service.d.ts +4 -4
  439. package/dist/modules/instance-ai/instance-ai.service.js +85 -121
  440. package/dist/modules/instance-ai/instance-ai.service.js.map +1 -1
  441. package/dist/modules/instance-ai/instance-context.service.d.ts +39 -10
  442. package/dist/modules/instance-ai/instance-context.service.js +283 -69
  443. package/dist/modules/instance-ai/instance-context.service.js.map +1 -1
  444. package/dist/modules/instance-ai/internal-messages.d.ts +11 -2
  445. package/dist/modules/instance-ai/internal-messages.js +183 -16
  446. package/dist/modules/instance-ai/internal-messages.js.map +1 -1
  447. package/dist/modules/instance-ai/message-parser.js.map +1 -1
  448. package/dist/modules/instance-registry/instance-registry.module.d.ts +2 -2
  449. package/dist/modules/instance-registry/instance-registry.module.js +5 -1
  450. package/dist/modules/instance-registry/instance-registry.module.js.map +1 -1
  451. package/dist/modules/instance-registry/stale-member-cleanup.task.d.ts +1 -1
  452. package/dist/modules/instance-registry/stale-member-cleanup.task.js +1 -1
  453. package/dist/modules/instance-registry/stale-member-cleanup.task.js.map +1 -1
  454. package/dist/modules/instance-registry/storage/redis-instance-storage.js +2 -10
  455. package/dist/modules/instance-registry/storage/redis-instance-storage.js.map +1 -1
  456. package/dist/modules/mcp/mcp-post-save-metrics.service.d.ts +10 -0
  457. package/dist/modules/mcp/mcp-post-save-metrics.service.js +40 -0
  458. package/dist/modules/mcp/mcp-post-save-metrics.service.js.map +1 -0
  459. package/dist/modules/mcp/mcp-protected-resource.d.ts +5 -2
  460. package/dist/modules/mcp/mcp-protected-resource.js +25 -4
  461. package/dist/modules/mcp/mcp-protected-resource.js.map +1 -1
  462. package/dist/modules/mcp/mcp-scopes.d.ts +3 -0
  463. package/dist/modules/mcp/mcp-scopes.js +21 -1
  464. package/dist/modules/mcp/mcp-scopes.js.map +1 -1
  465. package/dist/modules/mcp/mcp-tool-availability.d.ts +7 -0
  466. package/dist/modules/mcp/mcp-tool-availability.js +11 -0
  467. package/dist/modules/mcp/mcp-tool-availability.js.map +1 -1
  468. package/dist/modules/mcp/mcp.config.d.ts +1 -0
  469. package/dist/modules/mcp/mcp.config.js +5 -0
  470. package/dist/modules/mcp/mcp.config.js.map +1 -1
  471. package/dist/modules/mcp/mcp.constants.d.ts +6 -0
  472. package/dist/modules/mcp/mcp.constants.js +7 -1
  473. package/dist/modules/mcp/mcp.constants.js.map +1 -1
  474. package/dist/modules/mcp/mcp.controller.js +3 -6
  475. package/dist/modules/mcp/mcp.controller.js.map +1 -1
  476. package/dist/modules/mcp/mcp.service.d.ts +11 -7
  477. package/dist/modules/mcp/mcp.service.js +116 -43
  478. package/dist/modules/mcp/mcp.service.js.map +1 -1
  479. package/dist/modules/mcp/mcp.types.d.ts +0 -1
  480. package/dist/modules/mcp/tools/get-instance-context.tool.d.ts +29 -0
  481. package/dist/modules/mcp/tools/get-instance-context.tool.js +109 -0
  482. package/dist/modules/mcp/tools/get-instance-context.tool.js.map +1 -0
  483. package/dist/modules/mcp/tools/get-node-usage.tool.d.ts +13 -0
  484. package/dist/modules/mcp/tools/get-node-usage.tool.js +117 -0
  485. package/dist/modules/mcp/tools/get-node-usage.tool.js.map +1 -0
  486. package/dist/modules/mcp/tools/get-user-preferences.tool.d.ts +10 -0
  487. package/dist/modules/mcp/tools/get-user-preferences.tool.js +108 -0
  488. package/dist/modules/mcp/tools/get-user-preferences.tool.js.map +1 -0
  489. package/dist/modules/mcp/tools/instance-activity.tool.d.ts +27 -0
  490. package/dist/modules/mcp/tools/instance-activity.tool.js +205 -0
  491. package/dist/modules/mcp/tools/instance-activity.tool.js.map +1 -0
  492. package/dist/modules/mcp/tools/list-credentials.tool.d.ts +63 -13
  493. package/dist/modules/mcp/tools/list-credentials.tool.js +8 -1
  494. package/dist/modules/mcp/tools/list-credentials.tool.js.map +1 -1
  495. package/dist/modules/mcp/tools/search-executions.tool.d.ts +3 -3
  496. package/dist/modules/mcp/tools/search-executions.tool.js +22 -14
  497. package/dist/modules/mcp/tools/search-executions.tool.js.map +1 -1
  498. package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.d.ts +8 -4
  499. package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.js +128 -70
  500. package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.js.map +1 -1
  501. package/dist/modules/mcp/tools/workflow-builder/error-code.utils.d.ts +1 -0
  502. package/dist/modules/mcp/tools/workflow-builder/error-code.utils.js +22 -0
  503. package/dist/modules/mcp/tools/workflow-builder/error-code.utils.js.map +1 -0
  504. package/dist/modules/mcp/tools/workflow-builder/get-workflow-best-practices.tool.d.ts +1 -3
  505. package/dist/modules/mcp/tools/workflow-builder/get-workflow-best-practices.tool.js +5 -6
  506. package/dist/modules/mcp/tools/workflow-builder/get-workflow-best-practices.tool.js.map +1 -1
  507. package/dist/modules/mcp/tools/workflow-builder/get-workflow-node-types.tool.d.ts +1 -1
  508. package/dist/modules/mcp/tools/workflow-builder/get-workflow-node-types.tool.js +2 -2
  509. package/dist/modules/mcp/tools/workflow-builder/get-workflow-node-types.tool.js.map +1 -1
  510. package/dist/modules/mcp/tools/workflow-builder/get-workflow-sdk-reference.tool.d.ts +2 -5
  511. package/dist/modules/mcp/tools/workflow-builder/get-workflow-sdk-reference.tool.js +10 -16
  512. package/dist/modules/mcp/tools/workflow-builder/get-workflow-sdk-reference.tool.js.map +1 -1
  513. package/dist/modules/mcp/tools/workflow-builder/install-community-node.tool.d.ts +12 -0
  514. package/dist/modules/mcp/tools/workflow-builder/install-community-node.tool.js +140 -0
  515. package/dist/modules/mcp/tools/workflow-builder/install-community-node.tool.js.map +1 -0
  516. package/dist/modules/mcp/tools/workflow-builder/mcp-instructions.d.ts +2 -2
  517. package/dist/modules/mcp/tools/workflow-builder/mcp-instructions.js +17 -9
  518. package/dist/modules/mcp/tools/workflow-builder/mcp-instructions.js.map +1 -1
  519. package/dist/modules/mcp/tools/workflow-builder/sdk-reference-content.d.ts +1 -3
  520. package/dist/modules/mcp/tools/workflow-builder/sdk-reference-content.js +2 -6
  521. package/dist/modules/mcp/tools/workflow-builder/sdk-reference-content.js.map +1 -1
  522. package/dist/modules/mcp/tools/workflow-builder/search-workflow-nodes.tool.d.ts +1 -1
  523. package/dist/modules/mcp/tools/workflow-builder/search-workflow-nodes.tool.js +9 -8
  524. package/dist/modules/mcp/tools/workflow-builder/search-workflow-nodes.tool.js.map +1 -1
  525. package/dist/modules/mcp/tools/workflow-builder/uninstalled-node-warnings.d.ts +13 -0
  526. package/dist/modules/mcp/tools/workflow-builder/uninstalled-node-warnings.js +23 -0
  527. package/dist/modules/mcp/tools/workflow-builder/uninstalled-node-warnings.js.map +1 -0
  528. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.d.ts +18 -14
  529. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.js +200 -87
  530. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.js.map +1 -1
  531. package/dist/modules/mcp/tools/workflow-builder/validate-workflow-code.tool.d.ts +1 -4
  532. package/dist/modules/mcp/tools/workflow-builder/validate-workflow-code.tool.js +3 -5
  533. package/dist/modules/mcp/tools/workflow-builder/validate-workflow-code.tool.js.map +1 -1
  534. package/dist/modules/mcp/tools/workflow-builder/workflow-operations.d.ts +1 -3
  535. package/dist/modules/mcp/tools/workflow-builder/workflow-operations.js +2 -2
  536. package/dist/modules/mcp/tools/workflow-builder/workflow-operations.js.map +1 -1
  537. package/dist/modules/mcp-registry/node-description-transform.js +3 -0
  538. package/dist/modules/mcp-registry/node-description-transform.js.map +1 -1
  539. package/dist/modules/mcp-registry/registry/mcp-registry-api.client.js +1 -1
  540. package/dist/modules/mcp-registry/registry/mcp-registry-api.client.js.map +1 -1
  541. package/dist/modules/mcp-registry/registry/mcp-registry-capabilities.d.ts +6 -0
  542. package/dist/modules/mcp-registry/registry/mcp-registry-capabilities.js +34 -0
  543. package/dist/modules/mcp-registry/registry/mcp-registry-capabilities.js.map +1 -0
  544. package/dist/modules/mcp-registry/registry/mcp-registry-server.entity.d.ts +1 -0
  545. package/dist/modules/mcp-registry/registry/mcp-registry-server.entity.js.map +1 -1
  546. package/dist/modules/mcp-registry/registry/mcp-registry.service.d.ts +4 -1
  547. package/dist/modules/mcp-registry/registry/mcp-registry.service.js +20 -9
  548. package/dist/modules/mcp-registry/registry/mcp-registry.service.js.map +1 -1
  549. package/dist/modules/mcp-registry/registry/mcp-registry.types.d.ts +3 -0
  550. package/dist/modules/mcp-registry/registry/mcp-registry.types.js +1 -0
  551. package/dist/modules/mcp-registry/registry/mcp-registry.types.js.map +1 -1
  552. package/dist/modules/n8n-packages/engine/n8n-package-parser.js +1 -1
  553. package/dist/modules/n8n-packages/engine/n8n-package-parser.js.map +1 -1
  554. package/dist/modules/n8n-packages/entities/credential/credential.serializer.js.map +1 -1
  555. package/dist/modules/n8n-packages/entities/variable/variable-requirements.extractor.d.ts +8 -2
  556. package/dist/modules/n8n-packages/entities/variable/variable-requirements.extractor.js.map +1 -1
  557. package/dist/modules/n8n-packages/entities/workflow/workflow-published-state.d.ts +1 -1
  558. package/dist/modules/n8n-packages/entities/workflow/workflow-published-state.js +2 -2
  559. package/dist/modules/n8n-packages/entities/workflow/workflow-published-state.js.map +1 -1
  560. package/dist/modules/n8n-packages/entities/workflow/workflow.serializer.d.ts +1 -2
  561. package/dist/modules/n8n-packages/entities/workflow/workflow.serializer.js +4 -2
  562. package/dist/modules/n8n-packages/entities/workflow/workflow.serializer.js.map +1 -1
  563. package/dist/modules/n8n-packages/io/directory/package-directory-inventory-reader.d.ts +43 -0
  564. package/dist/modules/n8n-packages/io/directory/package-directory-inventory-reader.js +177 -0
  565. package/dist/modules/n8n-packages/io/directory/package-directory-inventory-reader.js.map +1 -0
  566. package/dist/modules/n8n-packages/spec/serialized/workflow-metadata.schema.d.ts +3 -0
  567. package/dist/modules/n8n-packages/spec/serialized/workflow-metadata.schema.js +1 -0
  568. package/dist/modules/n8n-packages/spec/serialized/workflow-metadata.schema.js.map +1 -1
  569. package/dist/modules/n8n-packages/spec/serialized/workflow.schema.d.ts +0 -3
  570. package/dist/modules/n8n-packages/spec/serialized/workflow.schema.js +0 -1
  571. package/dist/modules/n8n-packages/spec/serialized/workflow.schema.js.map +1 -1
  572. package/dist/modules/oauth-jwe/oauth-jwe-key.service.d.ts +1 -0
  573. package/dist/modules/oauth-jwe/oauth-jwe-key.service.js +10 -3
  574. package/dist/modules/oauth-jwe/oauth-jwe-key.service.js.map +1 -1
  575. package/dist/modules/oauth-server/oauth-clients.controller.js +1 -1
  576. package/dist/modules/oauth-server/oauth-clients.controller.js.map +1 -1
  577. package/dist/modules/oauth-server/oauth-consent.service.d.ts +1 -0
  578. package/dist/modules/oauth-server/oauth-consent.service.js +21 -10
  579. package/dist/modules/oauth-server/oauth-consent.service.js.map +1 -1
  580. package/dist/modules/oauth-server/oauth-server.service.d.ts +1 -1
  581. package/dist/modules/oauth-server/oauth-server.service.js +2 -2
  582. package/dist/modules/oauth-server/oauth-server.service.js.map +1 -1
  583. package/dist/modules/oauth-server/oauth-token.service.d.ts +3 -1
  584. package/dist/modules/oauth-server/oauth-token.service.js +10 -2
  585. package/dist/modules/oauth-server/oauth-token.service.js.map +1 -1
  586. package/dist/modules/policy-infrastructure/policy-decision-audit.d.ts +1 -1
  587. package/dist/modules/policy-infrastructure/policy-decision-audit.js +8 -1
  588. package/dist/modules/policy-infrastructure/policy-decision-audit.js.map +1 -1
  589. package/dist/modules/policy-infrastructure/policy-decision.service.js +1 -0
  590. package/dist/modules/policy-infrastructure/policy-decision.service.js.map +1 -1
  591. package/dist/modules/promotions.ee/base-branch-files.d.ts +2 -2
  592. package/dist/modules/promotions.ee/base-branch-files.js +2 -3
  593. package/dist/modules/promotions.ee/base-branch-files.js.map +1 -1
  594. package/dist/modules/promotions.ee/constants.d.ts +1 -0
  595. package/dist/modules/promotions.ee/constants.js +2 -1
  596. package/dist/modules/promotions.ee/constants.js.map +1 -1
  597. package/dist/modules/promotions.ee/database/repositories/promotion-provider.repository.js +1 -14
  598. package/dist/modules/promotions.ee/database/repositories/promotion-provider.repository.js.map +1 -1
  599. package/dist/modules/promotions.ee/promotion-binding-preflight.service.d.ts +22 -0
  600. package/dist/modules/promotions.ee/promotion-binding-preflight.service.js +264 -0
  601. package/dist/modules/promotions.ee/promotion-binding-preflight.service.js.map +1 -0
  602. package/dist/modules/promotions.ee/promotion-change.service.d.ts +8 -3
  603. package/dist/modules/promotions.ee/promotion-change.service.js +133 -24
  604. package/dist/modules/promotions.ee/promotion-change.service.js.map +1 -1
  605. package/dist/modules/promotions.ee/promotion-changes.controller.d.ts +2 -2
  606. package/dist/modules/promotions.ee/promotion-changes.controller.js +10 -12
  607. package/dist/modules/promotions.ee/promotion-changes.controller.js.map +1 -1
  608. package/dist/modules/promotions.ee/promotion-connections.service.d.ts +48 -2
  609. package/dist/modules/promotions.ee/promotion-connections.service.js +66 -14
  610. package/dist/modules/promotions.ee/promotion-connections.service.js.map +1 -1
  611. package/dist/modules/promotions.ee/promotions-git.service.d.ts +8 -1
  612. package/dist/modules/promotions.ee/promotions-git.service.js +27 -9
  613. package/dist/modules/promotions.ee/promotions-git.service.js.map +1 -1
  614. package/dist/modules/promotions.ee/promotions-git.utils.d.ts +8 -2
  615. package/dist/modules/promotions.ee/promotions-git.utils.js +10 -0
  616. package/dist/modules/promotions.ee/promotions-git.utils.js.map +1 -1
  617. package/dist/modules/promotions.ee/promotions.service.d.ts +9 -5
  618. package/dist/modules/promotions.ee/promotions.service.js +78 -21
  619. package/dist/modules/promotions.ee/promotions.service.js.map +1 -1
  620. package/dist/modules/promotions.ee/promotions.types.d.ts +6 -0
  621. package/dist/modules/promotions.ee/promotions.types.js.map +1 -1
  622. package/dist/modules/token-exchange/database/repositories/token-exchange-jti.repository.js +1 -0
  623. package/dist/modules/token-exchange/database/repositories/token-exchange-jti.repository.js.map +1 -1
  624. package/dist/modules/token-exchange/services/jti-cleanup.task.d.ts +1 -1
  625. package/dist/modules/token-exchange/services/jti-cleanup.task.js +1 -1
  626. package/dist/modules/token-exchange/services/jti-cleanup.task.js.map +1 -1
  627. package/dist/modules/type-availability-policies/constants.d.ts +1 -0
  628. package/dist/modules/type-availability-policies/constants.js +2 -1
  629. package/dist/modules/type-availability-policies/constants.js.map +1 -1
  630. package/dist/modules/type-availability-policies/database/entities/type-availability-policy.entity.js +2 -1
  631. package/dist/modules/type-availability-policies/database/entities/type-availability-policy.entity.js.map +1 -1
  632. package/dist/modules/type-availability-policies/database/repositories/type-availability-policy-scope.repository.d.ts +2 -1
  633. package/dist/modules/type-availability-policies/database/repositories/type-availability-policy-scope.repository.js +12 -0
  634. package/dist/modules/type-availability-policies/database/repositories/type-availability-policy-scope.repository.js.map +1 -1
  635. package/dist/modules/type-availability-policies/database/repositories/type-availability-policy.repository.d.ts +5 -1
  636. package/dist/modules/type-availability-policies/database/repositories/type-availability-policy.repository.js +11 -2
  637. package/dist/modules/type-availability-policies/database/repositories/type-availability-policy.repository.js.map +1 -1
  638. package/dist/modules/type-availability-policies/node-type-policy.check.d.ts +17 -0
  639. package/dist/modules/type-availability-policies/node-type-policy.check.js +87 -0
  640. package/dist/modules/type-availability-policies/node-type-policy.check.js.map +1 -0
  641. package/dist/modules/type-availability-policies/package-resolver.d.ts +4 -0
  642. package/dist/modules/type-availability-policies/package-resolver.js +26 -0
  643. package/dist/modules/type-availability-policies/package-resolver.js.map +1 -0
  644. package/dist/modules/type-availability-policies/policy-evaluator.d.ts +6 -4
  645. package/dist/modules/type-availability-policies/policy-evaluator.js +16 -13
  646. package/dist/modules/type-availability-policies/policy-evaluator.js.map +1 -1
  647. package/dist/modules/type-availability-policies/policy-rule.types.d.ts +4 -0
  648. package/dist/modules/type-availability-policies/policy-shadow-lint.d.ts +2 -1
  649. package/dist/modules/type-availability-policies/policy-shadow-lint.js +7 -5
  650. package/dist/modules/type-availability-policies/policy-shadow-lint.js.map +1 -1
  651. package/dist/modules/type-availability-policies/type-availability-policies.module.d.ts +1 -1
  652. package/dist/modules/type-availability-policies/type-availability-policies.module.js +1 -0
  653. package/dist/modules/type-availability-policies/type-availability-policies.module.js.map +1 -1
  654. package/dist/modules/type-availability-policies/type-availability-policy-instance.controller.js +3 -3
  655. package/dist/modules/type-availability-policies/type-availability-policy-instance.controller.js.map +1 -1
  656. package/dist/modules/type-availability-policies/type-availability-policy.service.d.ts +33 -4
  657. package/dist/modules/type-availability-policies/type-availability-policy.service.js +189 -28
  658. package/dist/modules/type-availability-policies/type-availability-policy.service.js.map +1 -1
  659. package/dist/modules/workflow-index/workflow-index.service.js +5 -2
  660. package/dist/modules/workflow-index/workflow-index.service.js.map +1 -1
  661. package/dist/node-catalog/index.d.ts +1 -1
  662. package/dist/node-catalog/index.js.map +1 -1
  663. package/dist/node-catalog/node-catalog.service.d.ts +28 -4
  664. package/dist/node-catalog/node-catalog.service.js +202 -7
  665. package/dist/node-catalog/node-catalog.service.js.map +1 -1
  666. package/dist/node-catalog/registry-lookup.d.ts +12 -0
  667. package/dist/node-catalog/registry-lookup.js +68 -0
  668. package/dist/node-catalog/registry-lookup.js.map +1 -0
  669. package/dist/node-execution/execute-node.service.d.ts +72 -0
  670. package/dist/node-execution/execute-node.service.js +297 -0
  671. package/dist/node-execution/execute-node.service.js.map +1 -0
  672. package/dist/node-execution/index.d.ts +2 -0
  673. package/dist/node-execution/index.js +5 -1
  674. package/dist/node-execution/index.js.map +1 -1
  675. package/dist/oauth/dcr-managed-fields.d.ts +1 -1
  676. package/dist/oauth/dcr-managed-fields.js +4 -2
  677. package/dist/oauth/dcr-managed-fields.js.map +1 -1
  678. package/dist/policy/policy-enforcement-backend.d.ts +2 -1
  679. package/dist/policy/policy-enforcement.service.d.ts +3 -1
  680. package/dist/policy/policy-enforcement.service.js +9 -0
  681. package/dist/policy/policy-enforcement.service.js.map +1 -1
  682. package/dist/posthog/index.d.ts +1 -0
  683. package/dist/posthog/index.js +35 -14
  684. package/dist/posthog/index.js.map +1 -1
  685. package/dist/public-api/constants.d.ts +1 -0
  686. package/dist/public-api/constants.js +5 -0
  687. package/dist/public-api/constants.js.map +1 -0
  688. package/dist/public-api/public-api-controller.registry.d.ts +1 -0
  689. package/dist/public-api/public-api-controller.registry.js +15 -0
  690. package/dist/public-api/public-api-controller.registry.js.map +1 -1
  691. package/dist/public-api/types.d.ts +2 -27
  692. package/dist/public-api/v1/controllers/credentials.public.controller.d.ts +3 -1
  693. package/dist/public-api/v1/controllers/credentials.public.controller.js +52 -1
  694. package/dist/public-api/v1/controllers/credentials.public.controller.js.map +1 -1
  695. package/dist/public-api/v1/controllers/executions.public.controller.js +3 -3
  696. package/dist/public-api/v1/controllers/executions.public.controller.js.map +1 -1
  697. package/dist/public-api/v1/controllers/folders.public.controller.d.ts +10 -0
  698. package/dist/public-api/v1/controllers/folders.public.controller.js +121 -0
  699. package/dist/public-api/v1/controllers/folders.public.controller.js.map +1 -0
  700. package/dist/public-api/v1/controllers/index.d.ts +2 -0
  701. package/dist/public-api/v1/controllers/index.js +2 -0
  702. package/dist/public-api/v1/controllers/index.js.map +1 -1
  703. package/dist/public-api/v1/controllers/insights.public.controller.d.ts +9 -0
  704. package/dist/public-api/v1/controllers/insights.public.controller.js +69 -0
  705. package/dist/public-api/v1/controllers/insights.public.controller.js.map +1 -0
  706. package/dist/public-api/v1/controllers/node-type-policies.public.controller.d.ts +11 -5
  707. package/dist/public-api/v1/controllers/node-type-policies.public.controller.js +152 -4
  708. package/dist/public-api/v1/controllers/node-type-policies.public.controller.js.map +1 -1
  709. package/dist/public-api/v1/controllers/promotions.public.controller.d.ts +5 -2
  710. package/dist/public-api/v1/controllers/promotions.public.controller.js +60 -4
  711. package/dist/public-api/v1/controllers/promotions.public.controller.js.map +1 -1
  712. package/dist/public-api/v1/controllers/roles.public.controller.js +1 -0
  713. package/dist/public-api/v1/controllers/roles.public.controller.js.map +1 -1
  714. package/dist/public-api/v1/controllers/tags.public.controller.d.ts +3 -1
  715. package/dist/public-api/v1/controllers/tags.public.controller.js +61 -0
  716. package/dist/public-api/v1/controllers/tags.public.controller.js.map +1 -1
  717. package/dist/public-api/v1/handlers/credentials/credentials.utils.d.ts +3 -3
  718. package/dist/public-api/v1/handlers/credentials/credentials.utils.js +1 -6
  719. package/dist/public-api/v1/handlers/credentials/credentials.utils.js.map +1 -1
  720. package/dist/public-api/v1/handlers/folders/folders.handler.d.ts +0 -7
  721. package/dist/public-api/v1/handlers/folders/folders.handler.js +0 -29
  722. package/dist/public-api/v1/handlers/folders/folders.handler.js.map +1 -1
  723. package/dist/public-api/v1/openapi.yml +4051 -2008
  724. package/dist/public-api/v1/shared/middlewares/global.middleware.d.ts +1 -1
  725. package/dist/public-api/v1/shared/middlewares/global.middleware.js +4 -3
  726. package/dist/public-api/v1/shared/middlewares/global.middleware.js.map +1 -1
  727. package/dist/requests.d.ts +1 -0
  728. package/dist/scheduling/durable-job-provisioner.d.ts +10 -1
  729. package/dist/scheduling/durable-job-provisioner.js +26 -9
  730. package/dist/scheduling/durable-job-provisioner.js.map +1 -1
  731. package/dist/scheduling/durable-scheduler.d.ts +2 -1
  732. package/dist/scheduling/durable-scheduler.js +4 -3
  733. package/dist/scheduling/durable-scheduler.js.map +1 -1
  734. package/dist/scheduling/scheduled-job-owner-registry.d.ts +2 -1
  735. package/dist/scheduling/scheduled-job-owner-registry.js +2 -1
  736. package/dist/scheduling/scheduled-job-owner-registry.js.map +1 -1
  737. package/dist/scheduling/system-tasks/emit-system-task-metric.d.ts +3 -0
  738. package/dist/scheduling/system-tasks/emit-system-task-metric.js +11 -0
  739. package/dist/scheduling/system-tasks/emit-system-task-metric.js.map +1 -0
  740. package/dist/scheduling/system-tasks/system-task-handler.d.ts +5 -1
  741. package/dist/scheduling/system-tasks/system-task-handler.js +9 -8
  742. package/dist/scheduling/system-tasks/system-task-handler.js.map +1 -1
  743. package/dist/scheduling/system-tasks/system-task-job-registrar.d.ts +28 -0
  744. package/dist/scheduling/system-tasks/system-task-job-registrar.js +130 -0
  745. package/dist/scheduling/system-tasks/system-task-job-registrar.js.map +1 -0
  746. package/dist/scheduling/system-tasks/system-task-run-observer.d.ts +13 -0
  747. package/dist/scheduling/system-tasks/system-task-run-observer.js +54 -0
  748. package/dist/scheduling/system-tasks/system-task-run-observer.js.map +1 -0
  749. package/dist/scheduling/system-tasks/system-task-runner.d.ts +13 -3
  750. package/dist/scheduling/system-tasks/system-task-runner.js +85 -15
  751. package/dist/scheduling/system-tasks/system-task-runner.js.map +1 -1
  752. package/dist/scheduling/system-tasks/system-task-scheduled-job-owner.d.ts +13 -0
  753. package/dist/scheduling/system-tasks/system-task-scheduled-job-owner.js +51 -0
  754. package/dist/scheduling/system-tasks/system-task-scheduled-job-owner.js.map +1 -0
  755. package/dist/scheduling/system-tasks/system-task-timer.d.ts +3 -1
  756. package/dist/scheduling/system-tasks/system-task-timer.js +33 -9
  757. package/dist/scheduling/system-tasks/system-task-timer.js.map +1 -1
  758. package/dist/scheduling/system-tasks/system-task-version-stamp.d.ts +5 -0
  759. package/dist/scheduling/system-tasks/system-task-version-stamp.js +14 -0
  760. package/dist/scheduling/system-tasks/system-task-version-stamp.js.map +1 -0
  761. package/dist/server.d.ts +0 -1
  762. package/dist/server.js +4 -2
  763. package/dist/server.js.map +1 -1
  764. package/dist/services/ai-gateway.service.d.ts +2 -1
  765. package/dist/services/ai-gateway.service.js +7 -4
  766. package/dist/services/ai-gateway.service.js.map +1 -1
  767. package/dist/services/ai-preference.service.d.ts +29 -5
  768. package/dist/services/ai-preference.service.js +119 -20
  769. package/dist/services/ai-preference.service.js.map +1 -1
  770. package/dist/services/credentials-tester.service.js +12 -0
  771. package/dist/services/credentials-tester.service.js.map +1 -1
  772. package/dist/services/engine-data-plane-proxy.service.d.ts +3 -1
  773. package/dist/services/engine-data-plane-proxy.service.js +5 -0
  774. package/dist/services/engine-data-plane-proxy.service.js.map +1 -1
  775. package/dist/services/free-ai-credits.service.d.ts +1 -0
  776. package/dist/services/frontend.service.js +2 -1
  777. package/dist/services/frontend.service.js.map +1 -1
  778. package/dist/services/protected-resource.registry.d.ts +2 -1
  779. package/dist/services/protected-resource.registry.js.map +1 -1
  780. package/dist/services/role.service.js +5 -4
  781. package/dist/services/role.service.js.map +1 -1
  782. package/dist/utils/strapi-utils.d.ts +1 -0
  783. package/dist/utils/strapi-utils.js.map +1 -1
  784. package/dist/wait-tracker.d.ts +5 -0
  785. package/dist/wait-tracker.js +130 -20
  786. package/dist/wait-tracker.js.map +1 -1
  787. package/dist/webhooks/live-webhooks.js +2 -2
  788. package/dist/webhooks/live-webhooks.js.map +1 -1
  789. package/dist/webhooks/test-webhook-registrations.service.d.ts +3 -1
  790. package/dist/webhooks/test-webhook-registrations.service.js +24 -11
  791. package/dist/webhooks/test-webhook-registrations.service.js.map +1 -1
  792. package/dist/webhooks/test-webhooks.d.ts +1 -0
  793. package/dist/webhooks/test-webhooks.js +9 -4
  794. package/dist/webhooks/test-webhooks.js.map +1 -1
  795. package/dist/webhooks/webhook-helpers.d.ts +1 -1
  796. package/dist/webhooks/webhook-helpers.js +113 -92
  797. package/dist/webhooks/webhook-helpers.js.map +1 -1
  798. package/dist/workflow-helpers.d.ts +1 -1
  799. package/dist/workflow-helpers.js +10 -3
  800. package/dist/workflow-helpers.js.map +1 -1
  801. package/dist/workflow-runner.js +104 -7
  802. package/dist/workflow-runner.js.map +1 -1
  803. package/dist/workflows/workflow.service.d.ts +1 -1
  804. package/package.json +42 -36
  805. package/dist/controllers/instance-ai-examples.controller.d.ts +0 -31
  806. package/dist/controllers/instance-ai-examples.controller.js +0 -104
  807. package/dist/controllers/instance-ai-examples.controller.js.map +0 -1
  808. package/dist/instance-ai-examples.data.json +0 -277957
  809. package/dist/public-api/v1/handlers/credentials/credentials.handler.d.ts +0 -8
  810. package/dist/public-api/v1/handlers/credentials/credentials.handler.js +0 -45
  811. package/dist/public-api/v1/handlers/credentials/credentials.handler.js.map +0 -1
  812. package/dist/public-api/v1/handlers/insights/insights.handler.d.ts +0 -7
  813. package/dist/public-api/v1/handlers/insights/insights.handler.js +0 -62
  814. package/dist/public-api/v1/handlers/insights/insights.handler.js.map +0 -1
  815. package/dist/public-api/v1/handlers/tags/tags.handler.d.ts +0 -8
  816. package/dist/public-api/v1/handlers/tags/tags.handler.js +0 -46
  817. package/dist/public-api/v1/handlers/tags/tags.handler.js.map +0 -1
@@ -23,6 +23,7 @@ exports.extractExecutionResult = extractExecutionResult;
23
23
  exports.extractExecutionOutcome = extractExecutionOutcome;
24
24
  exports.formatExecutionError = formatExecutionError;
25
25
  exports.truncateNodeOutput = truncateNodeOutput;
26
+ exports.redactExecuteNodeResult = redactExecuteNodeResult;
26
27
  exports.extractNodeOutput = extractNodeOutput;
27
28
  exports.extractExecutionDebugInfo = extractExecutionDebugInfo;
28
29
  const ai_utilities_1 = require("@n8n/ai-utilities");
@@ -66,6 +67,7 @@ const mcp_registry_connection_1 = require("../../modules/mcp-registry/mcp-regist
66
67
  const mcp_registry_service_1 = require("../../modules/mcp-registry/registry/mcp-registry.service");
67
68
  const workflow_dependency_query_service_1 = require("../../modules/workflow-index/workflow-dependency-query.service");
68
69
  const node_catalog_1 = require("../../node-catalog");
70
+ const node_execution_1 = require("../../node-execution");
69
71
  const node_types_1 = require("../../node-types");
70
72
  const check_access_1 = require("../../permissions.ee/check-access");
71
73
  const policy_enforcement_service_1 = require("../../policy/policy-enforcement.service");
@@ -87,9 +89,11 @@ const workflow_history_service_1 = require("../../workflows/workflow-history/wor
87
89
  const workflow_service_1 = require("../../workflows/workflow.service");
88
90
  const workflow_service_ee_1 = require("../../workflows/workflow.service.ee");
89
91
  const extract_resolved_node_parameters_1 = require("./extract-resolved-node-parameters");
92
+ const instance_ai_execution_wait_1 = require("./instance-ai-execution-wait");
90
93
  const instance_ai_folder_scope_1 = require("./instance-ai-folder-scope");
91
94
  const instance_ai_run_pin_data_1 = require("./instance-ai-run-pin-data");
92
95
  const instance_ai_settings_service_1 = require("./instance-ai-settings.service");
96
+ const instance_ai_step_run_1 = require("./instance-ai-step-run");
93
97
  const instance_context_service_1 = require("./instance-context.service");
94
98
  const mcp_1 = require("./mcp");
95
99
  const node_definition_resolver_1 = require("./node-definition-resolver");
@@ -173,7 +177,7 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
173
177
  });
174
178
  return await promise;
175
179
  }
176
- constructor(logger, globalConfig, workflowService, workflowFinderService, workflowRepository, sharedWorkflowRepository, projectRepository, executionRepository, credentialsService, credentialsFinderService, activeExecutions, workflowRunner, loadNodesAndCredentials, nodeTypes, instanceSettings, dataTableService, dataTableRepository, nodeResourceExplorerService, folderService, projectService, tagService, instanceWriteAccess, settingsService, workflowHistoryService, enterpriseWorkflowService, license, executionPersistence, eventService, roleService, telemetry, aiBuilderTemporaryWorkflowRepository, outboundHttp, aiGatewayService, workflowTemplatesService, collaborationService, policyEnforcementService, nodeCatalogService, evaluationConfigService, llmJudgeProviderRegistry, workflowDependencyQueryService, folderRepository, folderFinderService, instanceContext) {
180
+ constructor(logger, globalConfig, workflowService, workflowFinderService, workflowRepository, sharedWorkflowRepository, projectRepository, executionRepository, credentialsService, credentialsFinderService, activeExecutions, workflowRunner, loadNodesAndCredentials, nodeTypes, instanceSettings, dataTableService, dataTableRepository, nodeResourceExplorerService, folderService, projectService, tagService, instanceWriteAccess, settingsService, workflowHistoryService, enterpriseWorkflowService, license, executionPersistence, eventService, roleService, telemetry, aiBuilderTemporaryWorkflowRepository, outboundHttp, aiGatewayService, workflowTemplatesService, collaborationService, policyEnforcementService, nodeCatalogService, evaluationConfigService, llmJudgeProviderRegistry, workflowDependencyQueryService, folderRepository, folderFinderService, instanceContext, executeNodeService) {
177
181
  this.globalConfig = globalConfig;
178
182
  this.workflowService = workflowService;
179
183
  this.workflowFinderService = workflowFinderService;
@@ -216,6 +220,7 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
216
220
  this.folderRepository = folderRepository;
217
221
  this.folderFinderService = folderFinderService;
218
222
  this.instanceContext = instanceContext;
223
+ this.executeNodeService = executeNodeService;
219
224
  this.nodesCache = null;
220
225
  this.NODES_CACHE_TTL_MS = 5 * 60 * 1000;
221
226
  this.webResearchCache = new web_research_1.LRUCache({
@@ -233,7 +238,7 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
233
238
  });
234
239
  }
235
240
  createContext(user, options) {
236
- const { searchProxyConfig, pushRef, threadId, projectId, credentialIdAllowlist, shouldBypassCredentialTest, agentId, configEvalsEnabled, mcpConnectionsEnabled, nodeUsageEnabled, conversationHistory, folderExplorationEnabled, modelId, } = options ?? {};
241
+ const { searchProxyConfig, pushRef, threadId, projectId, credentialIdAllowlist, shouldBypassCredentialTest, agentId, configEvalsEnabled, mcpConnectionsEnabled, nodeUsageEnabled, instanceContextEnabled, conversationHistory, folderExplorationEnabled, modelId, } = options ?? {};
237
242
  void this.trackGatewayAvailability();
238
243
  const builderDelegateAdapter = this.getBuilderDelegateAdapter();
239
244
  const credentialService = this.createCredentialAdapter(user, projectId, credentialIdAllowlist, shouldBypassCredentialTest);
@@ -256,8 +261,11 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
256
261
  }
257
262
  : {}),
258
263
  mcpService: mcpConnectionsEnabled ? this.createMcpAdapter(user) : undefined,
264
+ executeNodeService: this.executeNodeService
265
+ ? this.createExecuteNodeAdapter(this.executeNodeService, user, projectId)
266
+ : undefined,
259
267
  conversationHistoryService: conversationHistory,
260
- ...(this.instanceContext?.enabled
268
+ ...(instanceContextEnabled === true && this.instanceContext
261
269
  ? { activityService: this.createActivityAdapter(user, projectId) }
262
270
  : {}),
263
271
  webResearchService: this.createWebResearchAdapter(user, searchProxyConfig),
@@ -274,7 +282,7 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
274
282
  : {}),
275
283
  ...(builderDelegateAdapter && projectId
276
284
  ? {
277
- builderDelegate: builderDelegateAdapter.createDelegate(user, projectId, new agents_credential_provider_1.AgentsCredentialProvider(this.credentialsService, projectId, user), credentialService, { useEvalModelCatalog: credentialIdAllowlist !== undefined }),
285
+ builderDelegate: builderDelegateAdapter.createDelegate(user, projectId, (targetAgentId) => new agents_credential_provider_1.AgentsCredentialProvider(this.credentialsService, projectId, user, targetAgentId), credentialService, { useEvalModelCatalog: credentialIdAllowlist !== undefined }),
278
286
  }
279
287
  : {}),
280
288
  };
@@ -303,8 +311,16 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
303
311
  }
304
312
  async resolveExperimentGates(user) {
305
313
  let flags = {};
314
+ let instanceContextEnabled = false;
306
315
  try {
307
- flags = await di_1.Container.get(posthog_1.PostHogClient).getFeatureFlags(user);
316
+ const postHog = di_1.Container.get(posthog_1.PostHogClient);
317
+ const [userFlags, instanceFlag] = await Promise.allSettled([
318
+ postHog.getFeatureFlags(user),
319
+ postHog.getFeatureFlagForInstance(api_types_1.INSTANCE_ACTIVITY_CONTEXT_FLAG),
320
+ ]);
321
+ if (userFlags.status === 'fulfilled')
322
+ flags = userFlags.value;
323
+ instanceContextEnabled = instanceFlag.status === 'fulfilled' && instanceFlag.value === true;
308
324
  }
309
325
  catch {
310
326
  }
@@ -320,6 +336,7 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
320
336
  folderExplorationEnabled: flags[api_types_1.INSTANCE_AI_FOLDER_EXPLORATION_FLAG] ===
321
337
  api_types_1.INSTANCE_AI_FOLDER_EXPLORATION_ENABLED_VARIANT,
322
338
  aiPreferencesEnabled: flags[api_types_1.CONTEXT_PREFERENCES_FLAG] === api_types_1.CONTEXT_PREFERENCES_ENABLED_VARIANT,
339
+ instanceContextEnabled,
323
340
  };
324
341
  }
325
342
  mcpPreconditionsHold() {
@@ -330,20 +347,20 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
330
347
  const instanceContext = this.instanceContext;
331
348
  if (!instanceContext)
332
349
  throw new n8n_workflow_1.UnexpectedError('Instance context service is not available');
350
+ const scope = {
351
+ surface: 'conversation',
352
+ ...(projectId !== undefined ? { projectId } : {}),
353
+ };
333
354
  return {
334
355
  list: async (input) => await instanceContext.list({
335
356
  user,
336
- ...(projectId !== undefined ? { projectId } : {}),
357
+ scope,
337
358
  limit: input.limit,
338
359
  ...(input.category !== undefined ? { category: input.category } : {}),
339
360
  ...(input.resourceId !== undefined ? { resourceId: input.resourceId } : {}),
340
361
  ...(input.beforeId !== undefined ? { beforeId: input.beforeId } : {}),
341
362
  }),
342
- expand: async (id) => await instanceContext.expand({
343
- id,
344
- user,
345
- ...(projectId !== undefined ? { projectId } : {}),
346
- }),
363
+ expand: async (id) => await instanceContext.expand({ id, user, scope }),
347
364
  };
348
365
  }
349
366
  createMcpAdapter(user) {
@@ -384,6 +401,27 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
384
401
  listConnections: async () => await this.listMcpRegistryConnections(user),
385
402
  };
386
403
  }
404
+ createExecuteNodeAdapter(executeNodeService, user, boundProjectId) {
405
+ const { resolveProjectId } = this.createProjectScopeHelpers(user, boundProjectId);
406
+ return {
407
+ execute: async (request) => {
408
+ this.assertInstanceNotReadOnly('executions');
409
+ const projectId = await resolveProjectId(['workflow:execute']);
410
+ const result = await executeNodeService.run(user, {
411
+ type: request.type,
412
+ version: request.version,
413
+ config: {
414
+ parameters: request.config.parameters,
415
+ credentials: request.config.credentials,
416
+ },
417
+ input: request.input,
418
+ timeoutMs: request.timeoutMs,
419
+ projectId,
420
+ });
421
+ return redactExecuteNodeResult(result, this.allowSendingParameterValues);
422
+ },
423
+ };
424
+ }
387
425
  async listMcpRegistryConnections(user) {
388
426
  const connections = await di_1.Container.get(mcp_1.InstanceAiMcpRegistryService).listConnectionsForUser(user);
389
427
  return [...new Set(connections.map((connection) => connection.serverSlug))].map((slug) => ({
@@ -1103,10 +1141,11 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
1103
1141
  connections: version.connections,
1104
1142
  nodeGroups: version.nodeGroups,
1105
1143
  });
1106
- await workflowService.update(user, updateData, workflowId, {
1144
+ const updated = await workflowService.update(user, updateData, workflowId, {
1107
1145
  source: 'n8n-ai',
1108
1146
  });
1109
1147
  await notifyWorkflowUpdated(workflowId);
1148
+ return await toWorkflowDetailWithChecksum(updated, { redactParameters });
1110
1149
  },
1111
1150
  ...(this.license.isLicensed('feat:namedVersions')
1112
1151
  ? {
@@ -1118,7 +1157,7 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
1118
1157
  };
1119
1158
  }
1120
1159
  createExecutionAdapter(user, pushRef, threadId) {
1121
- const { workflowFinderService, workflowRunner, activeExecutions, executionRepository, nodeTypes, allowSendingParameterValues, roleService, telemetry, logger, globalConfig, } = this;
1160
+ const { workflowFinderService, workflowRunner, activeExecutions, executionRepository, executionPersistence, workflowHistoryService, nodeTypes, allowSendingParameterValues, roleService, telemetry, logger, globalConfig, } = this;
1122
1161
  const assertNotReadOnly = () => this.assertInstanceNotReadOnly('executions');
1123
1162
  const DEFAULT_TIMEOUT_MS = 5 * constants_1.Time.minutes.toMilliseconds;
1124
1163
  const MAX_TIMEOUT_MS = 10 * constants_1.Time.minutes.toMilliseconds;
@@ -1147,7 +1186,7 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
1147
1186
  };
1148
1187
  const query = {
1149
1188
  kind: 'range',
1150
- range: { limit: options?.limit ?? 20, lastId: undefined, firstId: undefined },
1189
+ range: { limit: options?.limit ?? 20 },
1151
1190
  order: { startedAt: 'DESC' },
1152
1191
  user,
1153
1192
  sharingOptions,
@@ -1281,83 +1320,195 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
1281
1320
  });
1282
1321
  }
1283
1322
  };
1284
- const abortSignal = options?.abortSignal;
1285
- if (activeExecutions.has(executionId)) {
1286
- let timeoutId;
1287
- const timeoutPromise = new Promise((_, reject) => {
1288
- timeoutId = setTimeout(() => {
1289
- reject(new Error(`Execution timed out after ${timeoutMs}ms`));
1290
- }, timeoutMs);
1291
- });
1292
- let onAbort;
1293
- const abortPromise = abortSignal === undefined
1294
- ? undefined
1295
- : new Promise((_, reject) => {
1296
- onAbort = () => {
1297
- const error = new Error(typeof abortSignal.reason === 'string'
1298
- ? abortSignal.reason
1299
- : 'This operation was aborted');
1300
- error.name = 'AbortError';
1301
- reject(error);
1302
- };
1303
- if (abortSignal.aborted) {
1304
- onAbort();
1305
- return;
1306
- }
1307
- abortSignal.addEventListener('abort', onAbort, { once: true });
1308
- });
1309
- try {
1310
- await Promise.race([
1311
- activeExecutions.getPostExecutePromise(executionId),
1312
- timeoutPromise,
1313
- ...(abortPromise ? [abortPromise] : []),
1314
- ]);
1315
- clearTimeout(timeoutId);
1316
- if (onAbort)
1317
- abortSignal?.removeEventListener('abort', onAbort);
1318
- }
1319
- catch (error) {
1320
- clearTimeout(timeoutId);
1321
- if (onAbort)
1322
- abortSignal?.removeEventListener('abort', onAbort);
1323
- const isTimeout = error instanceof Error && error.message.includes('timed out');
1324
- const isAbort = error instanceof Error &&
1325
- (error.name === 'AbortError' || abortSignal?.aborted === true);
1326
- if (isTimeout || isAbort) {
1327
- try {
1328
- activeExecutions.stopExecution(executionId, isAbort
1329
- ? new n8n_workflow_1.ManualExecutionCancelledError(executionId)
1330
- : new n8n_workflow_1.TimeoutExecutionCancelledError(executionId));
1331
- }
1332
- catch {
1333
- }
1334
- const result = {
1335
- executionId,
1336
- status: 'error',
1337
- error: isAbort
1338
- ? 'Execution was cancelled'
1339
- : `Execution timed out after ${timeoutMs}ms and was cancelled`,
1340
- };
1341
- await pruneVerificationPins();
1342
- trackBuilderExecutedWorkflow(result.status, result.error);
1343
- return result;
1344
- }
1345
- throw error;
1346
- }
1323
+ const waitOutcome = await (0, instance_ai_execution_wait_1.waitForInstanceAiExecution)({
1324
+ activeExecutions,
1325
+ executionId,
1326
+ timeoutMs,
1327
+ abortSignal: options?.abortSignal,
1328
+ });
1329
+ if (waitOutcome.kind === 'cancelled') {
1330
+ const result = {
1331
+ executionId,
1332
+ status: 'error',
1333
+ error: waitOutcome.message,
1334
+ };
1335
+ await pruneVerificationPins();
1336
+ trackBuilderExecutedWorkflow(result.status, result.error);
1337
+ return result;
1347
1338
  }
1348
1339
  const { result, telemetryError } = await extractExecutionOutcome(executionId, allowSendingParameterValues, nodeTypes);
1349
1340
  await pruneVerificationPins(result.executedNodeNames);
1350
1341
  trackBuilderExecutedWorkflow(result.status, telemetryError);
1351
1342
  const workflowPinnedNodeNames = Object.keys(workflow.pinData ?? {});
1352
- return workflowPinnedNodeNames.length > 0
1353
- ? { ...result, workflowPinnedNodeNames }
1354
- : result;
1343
+ const injectedTriggerNodeName = triggerNode &&
1344
+ (pinDataPlan.mockDataSources.includes('trigger_input') ||
1345
+ Object.hasOwn(pinDataPlan.verificationPinData, triggerNode.name))
1346
+ ? triggerNode.name
1347
+ : undefined;
1348
+ return {
1349
+ ...result,
1350
+ ...(workflowPinnedNodeNames.length > 0 ? { workflowPinnedNodeNames } : {}),
1351
+ ...(injectedTriggerNodeName ? { injectedTriggerNodeName } : {}),
1352
+ };
1355
1353
  }
1356
1354
  catch (error) {
1357
1355
  trackBuilderExecutedWorkflow('error', error instanceof Error ? error.message : String(error));
1358
1356
  throw error;
1359
1357
  }
1360
1358
  },
1359
+ async runStep(workflowId, nodeName, options) {
1360
+ assertNotReadOnly();
1361
+ const workflow = await workflowFinderService.findWorkflowForUser(workflowId, user, [
1362
+ 'workflow:execute',
1363
+ ]);
1364
+ if (!workflow) {
1365
+ throw new instance_ai_1.WorkflowNotFoundError(workflowId);
1366
+ }
1367
+ let nodes = workflow.nodes ?? [];
1368
+ let connections = workflow.connections ?? {};
1369
+ const versionId = options?.versionId;
1370
+ if (versionId !== undefined && versionId !== workflow.versionId) {
1371
+ const version = await workflowHistoryService.getVersion(user, workflowId, versionId);
1372
+ nodes = version.nodes ?? [];
1373
+ connections = version.connections ?? {};
1374
+ }
1375
+ const target = nodes.find((node) => node.name === nodeName);
1376
+ if (!target) {
1377
+ throw new n8n_workflow_1.UserError(`The workflow has no node named "${nodeName}". Use workflows(action="get-as-code") to see the node names.`);
1378
+ }
1379
+ if (target.disabled) {
1380
+ throw new n8n_workflow_1.UserError(`Node "${nodeName}" is disabled. Enable it before you run it.`);
1381
+ }
1382
+ let priorRunData;
1383
+ let reusedFromExecutionId;
1384
+ if (options?.reuseExecutionId !== undefined) {
1385
+ const execution = await assertExecutionAccess(options.reuseExecutionId);
1386
+ if (execution.workflowId !== workflowId) {
1387
+ throw new n8n_workflow_1.UserError(`Execution ${options.reuseExecutionId} belongs to a different workflow.`);
1388
+ }
1389
+ const stored = await executionPersistence.findSingleExecution(options.reuseExecutionId, {
1390
+ includeData: true,
1391
+ unflattenData: true,
1392
+ });
1393
+ priorRunData = stored?.data?.resultData?.runData;
1394
+ reusedFromExecutionId = options.reuseExecutionId;
1395
+ }
1396
+ const plan = (0, instance_ai_step_run_1.planStepRun)({
1397
+ nodes,
1398
+ connections,
1399
+ targetName: nodeName,
1400
+ mockItems: options?.mockInput ? (0, instance_ai_step_run_1.toExecutionItems)(options.mockInput) : undefined,
1401
+ priorRunData,
1402
+ });
1403
+ const stepPinData = (0, instance_ai_step_run_1.pinDataForStepRun)(workflow.pinData, {
1404
+ targetName: nodeName,
1405
+ mockedNodeNames: plan.mockedNodeNames,
1406
+ });
1407
+ const timeoutMs = Math.min(options?.timeout ?? DEFAULT_TIMEOUT_MS, MAX_TIMEOUT_MS);
1408
+ const runData = {
1409
+ executionMode: 'manual',
1410
+ workflowData: {
1411
+ ...workflow,
1412
+ nodes,
1413
+ connections,
1414
+ settings: {
1415
+ ...workflow.settings,
1416
+ saveManualExecutions: true,
1417
+ saveDataSuccessExecution: 'all',
1418
+ saveDataErrorExecution: 'all',
1419
+ executionTimeout: Math.ceil(timeoutMs / 1000),
1420
+ },
1421
+ },
1422
+ userId: user.id,
1423
+ pushRef,
1424
+ destinationNode: { nodeName, mode: 'inclusive' },
1425
+ pinData: stepPinData,
1426
+ runData: plan.runData,
1427
+ dirtyNodeNames: plan.dirtyNodeNames,
1428
+ source: 'instance_ai',
1429
+ };
1430
+ if ((0, n8n_workflow_1.isTriggerNodeType)(target.type)) {
1431
+ runData.triggerToStartFrom = { name: nodeName };
1432
+ }
1433
+ const offloadingManualExecutionsInQueueMode = globalConfig.executions?.mode === 'queue' &&
1434
+ process.env.OFFLOAD_MANUAL_EXECUTIONS_TO_WORKERS === 'true';
1435
+ if (offloadingManualExecutionsInQueueMode) {
1436
+ runData.executionData = (0, n8n_workflow_1.createRunExecutionData)({
1437
+ startData: { destinationNode: runData.destinationNode },
1438
+ resultData: { pinData: stepPinData, runData: plan.runData ?? null },
1439
+ manualData: {
1440
+ userId: user.id,
1441
+ dirtyNodeNames: plan.dirtyNodeNames,
1442
+ triggerToStartFrom: runData.triggerToStartFrom,
1443
+ source: 'instance_ai',
1444
+ },
1445
+ executionData: null,
1446
+ });
1447
+ }
1448
+ const trackStepRun = (status, error) => {
1449
+ if (!threadId)
1450
+ return;
1451
+ telemetry.track('Builder executed workflow', {
1452
+ user_id: user.id,
1453
+ thread_id: threadId,
1454
+ workflow_id: workflowId,
1455
+ executed_by: 'ai',
1456
+ pinned_node_count: Object.keys(stepPinData ?? {}).length,
1457
+ exec_type: 'step',
1458
+ input_mode: plan.inputMode,
1459
+ status,
1460
+ ...(error ? { error: (0, telemetry_1.redactTelemetryText)(error) } : {}),
1461
+ });
1462
+ };
1463
+ const offeredForReplay = priorRunData
1464
+ ? Object.keys(priorRunData).filter((name) => name !== nodeName)
1465
+ : [];
1466
+ const describe = (result) => {
1467
+ const inRunData = new Set(result.executedNodeNames ?? []);
1468
+ const replayedNodeNames = offeredForReplay.filter((name) => inRunData.has(name));
1469
+ const notExecutedHere = new Set([...plan.mockedNodeNames, ...replayedNodeNames]);
1470
+ return {
1471
+ ...result,
1472
+ ...(result.executedNodeNames
1473
+ ? {
1474
+ executedNodeNames: result.executedNodeNames.filter((name) => !notExecutedHere.has(name)),
1475
+ }
1476
+ : {}),
1477
+ nodeName,
1478
+ inputMode: plan.inputMode,
1479
+ mockedNodeNames: plan.mockedNodeNames,
1480
+ ...(replayedNodeNames.length > 0 ? { replayedNodeNames } : {}),
1481
+ ...(reusedFromExecutionId ? { reusedFromExecutionId } : {}),
1482
+ ...(Object.keys(stepPinData ?? {}).length > 0
1483
+ ? { workflowPinnedNodeNames: Object.keys(stepPinData ?? {}) }
1484
+ : {}),
1485
+ };
1486
+ };
1487
+ try {
1488
+ const executionId = await workflowRunner.run(runData);
1489
+ const waitOutcome = await (0, instance_ai_execution_wait_1.waitForInstanceAiExecution)({
1490
+ activeExecutions,
1491
+ executionId,
1492
+ timeoutMs,
1493
+ abortSignal: options?.abortSignal,
1494
+ });
1495
+ if (waitOutcome.kind === 'cancelled') {
1496
+ trackStepRun('error', waitOutcome.message);
1497
+ return describe({
1498
+ executionId,
1499
+ status: 'error',
1500
+ error: waitOutcome.message,
1501
+ });
1502
+ }
1503
+ const { result, telemetryError } = await extractExecutionOutcome(executionId, allowSendingParameterValues, nodeTypes);
1504
+ trackStepRun(result.status, telemetryError);
1505
+ return describe(result);
1506
+ }
1507
+ catch (error) {
1508
+ trackStepRun('error', error instanceof Error ? error.message : String(error));
1509
+ throw error;
1510
+ }
1511
+ },
1361
1512
  async getStatus(executionId) {
1362
1513
  await assertExecutionAccess(executionId);
1363
1514
  const isRunning = activeExecutions.has(executionId);
@@ -1437,7 +1588,12 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
1437
1588
  projectId: boundProjectId,
1438
1589
  });
1439
1590
  const filtered = options?.type ? scoped.filter((c) => c.type === options.type) : scoped;
1440
- return filtered.map((c) => ({ id: c.id, name: c.name, type: c.type }));
1591
+ return filtered.map((c) => ({
1592
+ id: c.id,
1593
+ name: c.name,
1594
+ type: c.type,
1595
+ description: c.description,
1596
+ }));
1441
1597
  }
1442
1598
  if (options?.workflowId || options?.projectId) {
1443
1599
  const scoped = options.workflowId
@@ -1452,6 +1608,7 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
1452
1608
  id: c.id,
1453
1609
  name: c.name,
1454
1610
  type: c.type,
1611
+ description: c.description,
1455
1612
  }));
1456
1613
  }
1457
1614
  const credentials = await credentialsService.getMany(user, {
@@ -1464,6 +1621,7 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
1464
1621
  id: c.id,
1465
1622
  name: c.name,
1466
1623
  type: c.type,
1624
+ description: c.description,
1467
1625
  }));
1468
1626
  },
1469
1627
  async get(credentialId) {
@@ -1472,6 +1630,7 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
1472
1630
  id: credential.id,
1473
1631
  name: credential.name,
1474
1632
  type: credential.type,
1633
+ description: credential.description,
1475
1634
  };
1476
1635
  },
1477
1636
  async delete(credentialId) {
@@ -2201,6 +2360,7 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
2201
2360
  name: String(o.name),
2202
2361
  value: o.value,
2203
2362
  })),
2363
+ ...(p.displayOptions ? { displayOptions: p.displayOptions } : {}),
2204
2364
  })),
2205
2365
  credentials: desc.credentials?.map((c) => ({
2206
2366
  name: c.name,
@@ -2506,7 +2666,7 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
2506
2666
  exports.InstanceAiAdapterService = InstanceAiAdapterService;
2507
2667
  exports.InstanceAiAdapterService = InstanceAiAdapterService = __decorate([
2508
2668
  (0, di_1.Service)(),
2509
- __metadata("design:paramtypes", [backend_common_1.Logger, config_1.GlobalConfig, workflow_service_1.WorkflowService, workflow_finder_service_1.WorkflowFinderService, db_1.WorkflowRepository, db_1.SharedWorkflowRepository, db_1.ProjectRepository, db_1.ExecutionRepository, credentials_service_1.CredentialsService, credentials_finder_service_1.CredentialsFinderService, active_executions_1.ActiveExecutions, workflow_runner_1.WorkflowRunner, load_nodes_and_credentials_1.LoadNodesAndCredentials, node_types_1.NodeTypes, n8n_core_1.InstanceSettings, data_table_service_1.DataTableService, data_table_repository_1.DataTableRepository, node_resource_explorer_service_1.NodeResourceExplorerService, folder_service_1.FolderService, project_service_ee_1.ProjectService, tag_service_1.TagService, instance_write_access_service_1.InstanceWriteAccessService, instance_ai_settings_service_1.InstanceAiSettingsService, workflow_history_service_1.WorkflowHistoryService, workflow_service_ee_1.EnterpriseWorkflowService, license_1.License, execution_persistence_1.ExecutionPersistence, event_service_1.EventService, role_service_1.RoleService, telemetry_2.Telemetry, db_1.AiBuilderTemporaryWorkflowRepository, backend_network_1.OutboundHttp, ai_gateway_service_1.AiGatewayService, workflow_templates_service_1.WorkflowTemplatesService, collaboration_service_1.CollaborationService, policy_enforcement_service_1.PolicyEnforcementService, node_catalog_1.NodeCatalogService, evaluation_config_service_1.EvaluationConfigService, llm_judge_provider_registry_1.LlmJudgeProviderRegistry, workflow_dependency_query_service_1.WorkflowDependencyQueryService, db_1.FolderRepository, folder_finder_service_1.FolderFinderService, instance_context_service_1.InstanceContextService])
2669
+ __metadata("design:paramtypes", [backend_common_1.Logger, config_1.GlobalConfig, workflow_service_1.WorkflowService, workflow_finder_service_1.WorkflowFinderService, db_1.WorkflowRepository, db_1.SharedWorkflowRepository, db_1.ProjectRepository, db_1.ExecutionRepository, credentials_service_1.CredentialsService, credentials_finder_service_1.CredentialsFinderService, active_executions_1.ActiveExecutions, workflow_runner_1.WorkflowRunner, load_nodes_and_credentials_1.LoadNodesAndCredentials, node_types_1.NodeTypes, n8n_core_1.InstanceSettings, data_table_service_1.DataTableService, data_table_repository_1.DataTableRepository, node_resource_explorer_service_1.NodeResourceExplorerService, folder_service_1.FolderService, project_service_ee_1.ProjectService, tag_service_1.TagService, instance_write_access_service_1.InstanceWriteAccessService, instance_ai_settings_service_1.InstanceAiSettingsService, workflow_history_service_1.WorkflowHistoryService, workflow_service_ee_1.EnterpriseWorkflowService, license_1.License, execution_persistence_1.ExecutionPersistence, event_service_1.EventService, role_service_1.RoleService, telemetry_2.Telemetry, db_1.AiBuilderTemporaryWorkflowRepository, backend_network_1.OutboundHttp, ai_gateway_service_1.AiGatewayService, workflow_templates_service_1.WorkflowTemplatesService, collaboration_service_1.CollaborationService, policy_enforcement_service_1.PolicyEnforcementService, node_catalog_1.NodeCatalogService, evaluation_config_service_1.EvaluationConfigService, llm_judge_provider_registry_1.LlmJudgeProviderRegistry, workflow_dependency_query_service_1.WorkflowDependencyQueryService, db_1.FolderRepository, folder_finder_service_1.FolderFinderService, instance_context_service_1.InstanceContextService, node_execution_1.ExecuteNodeService])
2510
2670
  ], InstanceAiAdapterService);
2511
2671
  const MAX_RESULT_CHARS = 20_000;
2512
2672
  const MAX_NODE_OUTPUT_CHARS = 1_000;
@@ -2805,24 +2965,77 @@ function formatExecutionError(error, includeUpstreamDetails) {
2805
2965
  }
2806
2966
  const MAX_NODE_OUTPUT_BYTES = 5_000;
2807
2967
  function truncateNodeOutput(items) {
2808
- const serialized = JSON.stringify(items);
2809
- if (serialized.length <= MAX_NODE_OUTPUT_BYTES)
2968
+ const truncated = capItemsBySerializedSize(items, MAX_NODE_OUTPUT_BYTES);
2969
+ if (truncated === items)
2970
+ return items;
2971
+ return {
2972
+ items: truncated,
2973
+ truncated: true,
2974
+ totalItems: items.length,
2975
+ shownItems: truncated.length,
2976
+ message: `Output truncated: showing ${truncated.length} of ${items.length} items. Use get-node-output to retrieve full data for this node.`,
2977
+ };
2978
+ }
2979
+ function capItemsBySerializedSize(items, maxBytes) {
2980
+ if (JSON.stringify(items).length <= maxBytes)
2810
2981
  return items;
2811
- const truncated = [];
2982
+ const kept = [];
2812
2983
  let size = 2;
2813
2984
  for (const item of items) {
2814
2985
  const itemStr = JSON.stringify(item);
2815
- if (size + itemStr.length + 2 > MAX_NODE_OUTPUT_BYTES)
2986
+ if (size + itemStr.length + 2 > maxBytes)
2816
2987
  break;
2817
- truncated.push(item);
2988
+ kept.push(item);
2818
2989
  size += itemStr.length + 1;
2819
2990
  }
2991
+ return kept;
2992
+ }
2993
+ const EXECUTE_NODE_DETAILS_SUPPRESSED = '(upstream error details suppressed by the instance AI privacy setting; ask the user to share the node error from the UI)';
2994
+ function redactExecuteNodeResult(result, allowSendingParameterValues) {
2995
+ if (result.status === 'error') {
2996
+ const { message, description, nodeErrorType } = result.error;
2997
+ const cappedDescription = description && description.length > MAX_ERROR_CHARS
2998
+ ? `${description.slice(0, MAX_ERROR_CHARS)}…`
2999
+ : description;
3000
+ return {
3001
+ status: 'error',
3002
+ error: {
3003
+ message,
3004
+ description: allowSendingParameterValues
3005
+ ? cappedDescription
3006
+ : description
3007
+ ? EXECUTE_NODE_DETAILS_SUPPRESSED
3008
+ : undefined,
3009
+ nodeErrorType,
3010
+ },
3011
+ };
3012
+ }
3013
+ if (!allowSendingParameterValues) {
3014
+ return {
3015
+ status: 'success',
3016
+ output: '',
3017
+ outputSuppressed: 'The node executed successfully, but its output items are suppressed by the instance AI privacy setting.',
3018
+ };
3019
+ }
3020
+ let totalItems = 0;
3021
+ let shownItems = 0;
3022
+ const kept = result.output.map((branch) => {
3023
+ totalItems += branch.length;
3024
+ const keptBranch = capItemsBySerializedSize(branch, MAX_NODE_OUTPUT_BYTES);
3025
+ shownItems += keptBranch.length;
3026
+ return keptBranch;
3027
+ });
3028
+ const output = (0, instance_ai_1.wrapUntrustedData)(JSON.stringify(kept, null, 2), 'execution-output');
3029
+ if (shownItems === totalItems)
3030
+ return { status: 'success', output };
2820
3031
  return {
2821
- items: truncated,
2822
- truncated: true,
2823
- totalItems: items.length,
2824
- shownItems: truncated.length,
2825
- message: `Output truncated: showing ${truncated.length} of ${items.length} items. Use get-node-output to retrieve full data for this node.`,
3032
+ status: 'success',
3033
+ output,
3034
+ truncated: {
3035
+ totalItems,
3036
+ shownItems,
3037
+ message: `Output truncated: showing ${shownItems} of ${totalItems} items. Re-run with fewer input items or a narrower operation to see more.`,
3038
+ },
2826
3039
  };
2827
3040
  }
2828
3041
  const MAX_ITEM_CHARS = 50_000;