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
@@ -0,0 +1,159 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.executeWorkflowEachToLoop = void 0;
4
+ const n8n_workflow_1 = require("n8n-workflow");
5
+ const node_crypto_1 = require("node:crypto");
6
+ const LOOP_NODE_TYPE = 'n8n-nodes-base.splitInBatches';
7
+ const LOOP_NODE_VERSION = 3;
8
+ const LOOP_NODE_DEFAULT_NAME = 'Loop Over Items';
9
+ const LOOP_DONE_OUTPUT = 0;
10
+ const LOOP_BATCH_OUTPUT = 1;
11
+ const COLUMN_OFFSET = 240;
12
+ const ROW_OFFSET = 180;
13
+ const uniqueNodeName = (base, taken) => {
14
+ if (!taken.has(base))
15
+ return base;
16
+ for (let i = 1;; i++) {
17
+ const candidate = `${base}${i}`;
18
+ if (!taken.has(candidate))
19
+ return candidate;
20
+ }
21
+ };
22
+ const JS_IDENTIFIER = /^[A-Za-z_$][\w$]*$/;
23
+ const JS_IDENTIFIER_CHAR = /[\w$]/;
24
+ const referencesNodeByName = (value, nodeName) => {
25
+ const quoted = ['$(', '$node[', '$items('].flatMap((prefix) => [
26
+ `${prefix}'${nodeName}'`,
27
+ `${prefix}"${nodeName}"`,
28
+ ]);
29
+ const dotted = JS_IDENTIFIER.test(nodeName) ? `$node.${nodeName}` : undefined;
30
+ const matches = (text) => {
31
+ if (quoted.some((needle) => text.includes(needle)))
32
+ return true;
33
+ if (!dotted)
34
+ return false;
35
+ for (let from = 0;;) {
36
+ const at = text.indexOf(dotted, from);
37
+ if (at === -1)
38
+ return false;
39
+ const next = text[at + dotted.length];
40
+ if (next === undefined || !JS_IDENTIFIER_CHAR.test(next))
41
+ return true;
42
+ from = at + dotted.length;
43
+ }
44
+ };
45
+ const visit = (candidate) => {
46
+ if (typeof candidate === 'string')
47
+ return matches(candidate);
48
+ if (Array.isArray(candidate))
49
+ return candidate.some(visit);
50
+ if (candidate && typeof candidate === 'object')
51
+ return Object.values(candidate).some(visit);
52
+ return false;
53
+ };
54
+ return visit(value);
55
+ };
56
+ const mainConnection = (node) => ({
57
+ node,
58
+ type: n8n_workflow_1.NodeConnectionTypes.Main,
59
+ index: 0,
60
+ });
61
+ const waitsForSubWorkflow = (node) => {
62
+ const options = node.parameters.options;
63
+ if (!options || typeof options !== 'object')
64
+ return true;
65
+ return options.waitForSubWorkflow !== false;
66
+ };
67
+ const makeLoopNode = (name, position) => ({
68
+ id: (0, node_crypto_1.randomUUID)(),
69
+ name,
70
+ type: LOOP_NODE_TYPE,
71
+ typeVersion: LOOP_NODE_VERSION,
72
+ position,
73
+ parameters: {
74
+ batchSize: 1,
75
+ options: { reset: `={{ $node[${JSON.stringify(name)}].context["done"] ?? false }}` },
76
+ },
77
+ });
78
+ const driftNotes = (node, allNodes, tailName) => {
79
+ const notes = [
80
+ `Review and test the migrated workflow before publishing. The loop around "${node.name}" preserves the common execution pattern, but it can change behavior. Check expressions, item and run indexes, error handling, retry settings, and pinned data.`,
81
+ ];
82
+ if (waitsForSubWorkflow(node)) {
83
+ notes.push(`"${node.name}" now uses "Always Output Data" to keep the loop running. Each sub-workflow call that returns no items produces an empty item instead. These extra items can trigger downstream actions. Review how the workflow handles empty items.`);
84
+ }
85
+ if (node.onError === 'continueErrorOutput') {
86
+ notes.push(`"${node.name}" routes failed items to its error output. These items do not return to the loop. An error can stop the loop before it processes all inputs. Review the error path.`);
87
+ }
88
+ if (node.executeOnce) {
89
+ notes.push(`"${node.name}" has "Execute Once" enabled, which used to limit it to the first item. Inside the loop it now runs for every item; disable the loop or the setting if that is not intended.`);
90
+ }
91
+ if (node.retryOnFail) {
92
+ notes.push(`"${node.name}" has "Retry On Fail" enabled. A failure used to retry the sub-workflow for every item; inside the loop only the failing item is retried.`);
93
+ }
94
+ const referencing = allNodes
95
+ .filter((other) => other.id !== node.id && referencesNodeByName(other.parameters, node.name))
96
+ .map((other) => other.name);
97
+ if (referencing.length > 0) {
98
+ notes.push(`${referencing.map((name) => `"${name}"`).join(', ')} reference "${node.name}" in expressions. It now runs once per loop iteration, so \`$('${node.name}').all()\` returns only the last iteration's output; read from "${tailName}" instead.`);
99
+ }
100
+ return notes;
101
+ };
102
+ exports.executeWorkflowEachToLoop = {
103
+ ruleId: 'execute-workflow-each-mode-v3',
104
+ migrateWorkflow: ({ nodes, connections, affectedNodeIds }) => {
105
+ const nextConnections = (0, n8n_workflow_1.deepCopy)(connections);
106
+ const takenNames = new Set(nodes.map((node) => node.name));
107
+ const claimName = (base) => {
108
+ const name = uniqueNodeName(base, takenNames);
109
+ takenNames.add(name);
110
+ return name;
111
+ };
112
+ const nextNodes = [];
113
+ const migratedNodeIds = [];
114
+ const notes = [];
115
+ for (const original of nodes) {
116
+ if (!affectedNodeIds.has(original.id)) {
117
+ nextNodes.push(original);
118
+ continue;
119
+ }
120
+ const [x, y] = original.position;
121
+ const waits = waitsForSubWorkflow(original);
122
+ const loopNode = makeLoopNode(claimName(LOOP_NODE_DEFAULT_NAME), [x, y]);
123
+ const node = {
124
+ ...original,
125
+ position: [x + COLUMN_OFFSET, y + ROW_OFFSET],
126
+ parameters: { ...original.parameters, mode: 'once' },
127
+ ...(waits ? { alwaysOutputData: true } : {}),
128
+ };
129
+ for (const outputs of Object.values(nextConnections)) {
130
+ for (const targets of outputs[n8n_workflow_1.NodeConnectionTypes.Main] ?? []) {
131
+ for (const target of targets ?? []) {
132
+ if (target.node === node.name)
133
+ target.node = loopNode.name;
134
+ }
135
+ }
136
+ }
137
+ const nodeOutputs = nextConnections[node.name] ?? {};
138
+ const mainOutputs = [...(nodeOutputs[n8n_workflow_1.NodeConnectionTypes.Main] ?? [])];
139
+ const successors = mainOutputs[0] ?? [];
140
+ mainOutputs[0] = [mainConnection(loopNode.name)];
141
+ nextConnections[node.name] = { ...nodeOutputs, [n8n_workflow_1.NodeConnectionTypes.Main]: mainOutputs };
142
+ const loopOutputs = [];
143
+ loopOutputs[LOOP_DONE_OUTPUT] = successors;
144
+ loopOutputs[LOOP_BATCH_OUTPUT] = [mainConnection(node.name)];
145
+ nextConnections[loopNode.name] = { [n8n_workflow_1.NodeConnectionTypes.Main]: loopOutputs };
146
+ notes.push(...driftNotes(node, nodes, loopNode.name));
147
+ nextNodes.push(loopNode);
148
+ nextNodes.push(node);
149
+ migratedNodeIds.push(node.id);
150
+ }
151
+ return {
152
+ nodes: nextNodes,
153
+ connections: nextConnections,
154
+ migratedNodeIds,
155
+ notes: notes.length > 0 ? notes : undefined,
156
+ };
157
+ },
158
+ };
159
+ //# sourceMappingURL=execute-workflow-each-to-loop.migration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute-workflow-each-to-loop.migration.js","sourceRoot":"","sources":["../../../../src/modules/breaking-changes/migrations/execute-workflow-each-to-loop.migration.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import type { NodeMigration } from './node-migration';
2
- export declare const nodeMigrations: NodeMigration[];
1
+ import type { Migration } from './node-migration';
2
+ export declare const nodeMigrations: Migration[];
@@ -2,5 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.nodeMigrations = void 0;
4
4
  const ai_transform_to_code_migration_1 = require("./ai-transform-to-code.migration");
5
- exports.nodeMigrations = [ai_transform_to_code_migration_1.aiTransformToCode];
5
+ const execute_workflow_each_to_loop_migration_1 = require("./execute-workflow-each-to-loop.migration");
6
+ exports.nodeMigrations = [ai_transform_to_code_migration_1.aiTransformToCode, execute_workflow_each_to_loop_migration_1.executeWorkflowEachToLoop];
6
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/breaking-changes/migrations/index.ts"],"names":[],"mappings":";;;AAAA,qFAAqE;AAIxD,QAAA,cAAc,GAAoB,CAAC,kDAAiB,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/breaking-changes/migrations/index.ts"],"names":[],"mappings":";;;AAAA,qFAAqE;AACrE,uGAAsF;AAIzE,QAAA,cAAc,GAAgB,CAAC,kDAAiB,EAAE,mEAAyB,CAAC,CAAC"}
@@ -1,4 +1,15 @@
1
- import type { INode } from 'n8n-workflow';
1
+ import type { IConnections, INode } from 'n8n-workflow';
2
+ import { BadRequestError } from '../../../errors/response-errors/bad-request.error';
3
+ export declare class WorkflowMigrationNodeError extends BadRequestError {
4
+ readonly meta: {
5
+ nodeId: string;
6
+ nodeName: string;
7
+ };
8
+ constructor(message: string, meta: {
9
+ nodeId: string;
10
+ nodeName: string;
11
+ });
12
+ }
2
13
  export interface NodeMigrationResult {
3
14
  node: Pick<INode, 'type' | 'typeVersion' | 'parameters'>;
4
15
  unmapped?: string[];
@@ -8,3 +19,21 @@ export interface NodeMigration {
8
19
  ruleId: string;
9
20
  migrate(node: INode): NodeMigrationResult;
10
21
  }
22
+ export interface WorkflowMigrationInput {
23
+ nodes: INode[];
24
+ connections: IConnections;
25
+ affectedNodeIds: Set<string>;
26
+ }
27
+ export interface WorkflowMigrationOutput {
28
+ nodes: INode[];
29
+ connections: IConnections;
30
+ migratedNodeIds: string[];
31
+ unmapped?: string[];
32
+ notes?: string[];
33
+ }
34
+ export interface WorkflowMigration {
35
+ ruleId: string;
36
+ migrateWorkflow(input: WorkflowMigrationInput): WorkflowMigrationOutput;
37
+ }
38
+ export type Migration = NodeMigration | WorkflowMigration;
39
+ export declare const isWorkflowMigration: (migration: Migration) => migration is WorkflowMigration;
@@ -1,3 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isWorkflowMigration = exports.WorkflowMigrationNodeError = void 0;
4
+ const bad_request_error_1 = require("../../../errors/response-errors/bad-request.error");
5
+ class WorkflowMigrationNodeError extends bad_request_error_1.BadRequestError {
6
+ constructor(message, meta) {
7
+ super(message);
8
+ this.meta = meta;
9
+ this.name = 'WorkflowMigrationNodeError';
10
+ }
11
+ }
12
+ exports.WorkflowMigrationNodeError = WorkflowMigrationNodeError;
13
+ const isWorkflowMigration = (migration) => 'migrateWorkflow' in migration;
14
+ exports.isWorkflowMigration = isWorkflowMigration;
3
15
  //# sourceMappingURL=node-migration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"node-migration.js","sourceRoot":"","sources":["../../../../src/modules/breaking-changes/migrations/node-migration.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"node-migration.js","sourceRoot":"","sources":["../../../../src/modules/breaking-changes/migrations/node-migration.ts"],"names":[],"mappings":";;;AAEA,kFAA6E;AAM7E,gCAAwC,SAAQ,mCAAe;IAC9D,YACC,OAAe,EACN,IAA0C;QAEnD,KAAK,CAAC,OAAO,CAAC,CAAC;oBAFN,IAAI;QAGb,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;IAC1C,CAAC;CACD;;AAmDM,MAAM,mBAAmB,GAAG,CAAC,SAAoB,EAAkC,EAAE,CAC3F,iBAAiB,IAAI,SAAS,CAAC;AADnB,QAAA,mBAAmB,GAAnB,mBAAmB,CACA"}
@@ -8,6 +8,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.OAuthCallbackAuthRule = void 0;
10
10
  const decorators_1 = require("@n8n/decorators");
11
+ const detection_report_1 = require("../../detection-report");
11
12
  let OAuthCallbackAuthRule = class OAuthCallbackAuthRule {
12
13
  constructor() {
13
14
  this.id = 'oauth-callback-auth-v2';
@@ -24,7 +25,7 @@ let OAuthCallbackAuthRule = class OAuthCallbackAuthRule {
24
25
  }
25
26
  async detect() {
26
27
  if (process.env.N8N_SKIP_AUTH_ON_OAUTH_CALLBACK) {
27
- return { isAffected: false, instanceIssues: [], recommendations: [] };
28
+ return detection_report_1.NOT_AFFECTED_INSTANCE;
28
29
  }
29
30
  return {
30
31
  isAffected: true,
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-callback-auth.rule.js","sourceRoot":"","sources":["../../../../../src/modules/breaking-changes/rules/v2/oauth-callback-auth.rule.ts"],"names":[],"mappings":";;;;;;;;;AAAA,gDAAqD;AAU9C,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAA3B;QACN,OAAE,GAAW,wBAAwB,CAAC;IAyCvC,CAAC;IAvCA,WAAW;QACV,OAAO;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,gDAAgD;YACvD,WAAW,EACV,sFAAsF;YACvF,QAAQ,YAAiC;YACzC,QAAQ,EAAE,QAAQ;YAClB,gBAAgB,EACf,oGAAoG;SACrG,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM;QAGX,IAAI,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE,CAAC;YACjD,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC;QACvE,CAAC;QAED,OAAO;YACN,UAAU,EAAE,IAAI;YAChB,cAAc,EAAE;gBACf;oBACC,KAAK,EAAE,4CAA4C;oBACnD,WAAW,EACV,uIAAuI;oBACxI,KAAK,EAAE,SAAS;iBAChB;aACD;YACD,eAAe,EAAE;gBAChB;oBACC,MAAM,EAAE,wBAAwB;oBAChC,WAAW,EACV,wHAAwH;iBACzH;aACD;SACD,CAAC;IACH,CAAC;CACD,CAAA;;gCA1CY,qBAAqB;IADjC,IAAA,+BAAkB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;GACzB,qBAAqB,CA0CjC"}
1
+ {"version":3,"file":"oauth-callback-auth.rule.js","sourceRoot":"","sources":["../../../../../src/modules/breaking-changes/rules/v2/oauth-callback-auth.rule.ts"],"names":[],"mappings":";;;;;;;;;AAAA,gDAAqD;AAErD,6DAA+D;AASxD,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAA3B;QACN,OAAE,GAAW,wBAAwB,CAAC;IAyCvC,CAAC;IAvCA,WAAW;QACV,OAAO;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,gDAAgD;YACvD,WAAW,EACV,sFAAsF;YACvF,QAAQ,YAAiC;YACzC,QAAQ,EAAE,QAAQ;YAClB,gBAAgB,EACf,oGAAoG;SACrG,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM;QAGX,IAAI,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE,CAAC;YACjD,OAAO,wCAAqB,CAAC;QAC9B,CAAC;QAED,OAAO;YACN,UAAU,EAAE,IAAI;YAChB,cAAc,EAAE;gBACf;oBACC,KAAK,EAAE,4CAA4C;oBACnD,WAAW,EACV,uIAAuI;oBACxI,KAAK,EAAE,SAAS;iBAChB;aACD;YACD,eAAe,EAAE;gBAChB;oBACC,MAAM,EAAE,wBAAwB;oBAChC,WAAW,EACV,wHAAwH;iBACzH;aACD;SACD,CAAC;IACH,CAAC;CACD,CAAA;;gCA1CY,qBAAqB;IADjC,IAAA,+BAAkB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;GACzB,qBAAqB,CA0CjC"}
@@ -8,6 +8,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.PyodideRemovedRule = void 0;
10
10
  const decorators_1 = require("@n8n/decorators");
11
+ const detection_report_1 = require("../../detection-report");
11
12
  let PyodideRemovedRule = class PyodideRemovedRule {
12
13
  constructor() {
13
14
  this.id = 'pyodide-removed-v2';
@@ -45,18 +46,11 @@ let PyodideRemovedRule = class PyodideRemovedRule {
45
46
  const language = node.parameters?.language;
46
47
  return language === 'python';
47
48
  });
48
- if (affectedNodes.length === 0)
49
- return { isAffected: false, issues: [] };
50
- return {
51
- isAffected: true,
52
- issues: affectedNodes.map((node) => ({
53
- title: `Code node '${node.name}' uses removed Pyodide Python implementation`,
54
- description: 'The Pyodide-based Python implementation (language="python") is no longer supported. This node must be migrated to use the task runner-based implementation (language="pythonNative").',
55
- level: 'error',
56
- nodeId: node.id,
57
- nodeName: node.name,
58
- })),
59
- };
49
+ return (0, detection_report_1.reportAffectedNodes)(affectedNodes, (node) => ({
50
+ title: `Code node '${node.name}' uses removed Pyodide Python implementation`,
51
+ description: 'The Pyodide-based Python implementation (language="python") is no longer supported. This node must be migrated to use the task runner-based implementation (language="pythonNative").',
52
+ level: 'error',
53
+ }));
60
54
  }
61
55
  };
62
56
  exports.PyodideRemovedRule = PyodideRemovedRule;
@@ -1 +1 @@
1
- {"version":3,"file":"pyodide-removed.rule.js","sourceRoot":"","sources":["../../../../../src/modules/breaking-changes/rules/v2/pyodide-removed.rule.ts"],"names":[],"mappings":";;;;;;;;;AAEA,gDAAqD;AAW9C,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAAxB;QACN,OAAE,GAAW,oBAAoB,CAAC;IAsEnC,CAAC;IApEA,WAAW;QACV,OAAO;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,0CAA0C;YACjD,WAAW,EACV,wIAAwI;YACzI,QAAQ,YAAiC;YACzC,QAAQ,EAAE,QAAQ;YAClB,gBAAgB,EACf,iFAAiF;SAClF,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CACvB,gBAAkD;QAElD,OAAO;YACN;gBACC,MAAM,EAAE,wCAAwC;gBAChD,WAAW,EACV,wGAAwG;aACzG;YACD;gBACC,MAAM,EAAE,kCAAkC;gBAC1C,WAAW,EACV,sLAAsL;aACvL;YACD;gBACC,MAAM,EAAE,2BAA2B;gBACnC,WAAW,EACV,kHAAkH;aACnH;SACD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CACnB,SAAyB,EACzB,kBAAwC;QAGxC,MAAM,SAAS,GAAG,kBAAkB,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC;QACtE,MAAM,aAAa,GAAG,kBAAkB,CAAC,GAAG,CAAC,mCAAmC,CAAC,IAAI,EAAE,CAAC;QAOxF,MAAM,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;YACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC;YAE3C,OAAO,QAAQ,KAAK,QAAQ,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAEzE,OAAO;YACN,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACpC,KAAK,EAAE,cAAc,IAAI,CAAC,IAAI,8CAA8C;gBAC5E,WAAW,EACV,uLAAuL;gBACxL,KAAK,EAAE,OAAO;gBACd,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,QAAQ,EAAE,IAAI,CAAC,IAAI;aACnB,CAAC,CAAC;SACH,CAAC;IACH,CAAC;CACD,CAAA;;6BAvEY,kBAAkB;IAD9B,IAAA,+BAAkB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;GACzB,kBAAkB,CAuE9B"}
1
+ {"version":3,"file":"pyodide-removed.rule.js","sourceRoot":"","sources":["../../../../../src/modules/breaking-changes/rules/v2/pyodide-removed.rule.ts"],"names":[],"mappings":";;;;;;;;;AAEA,gDAAqD;AAGrD,6DAA6D;AAStD,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAAxB;QACN,OAAE,GAAW,oBAAoB,CAAC;IA+DnC,CAAC;IA7DA,WAAW;QACV,OAAO;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,0CAA0C;YACjD,WAAW,EACV,wIAAwI;YACzI,QAAQ,YAAiC;YACzC,QAAQ,EAAE,QAAQ;YAClB,gBAAgB,EACf,iFAAiF;SAClF,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CACvB,gBAAkD;QAElD,OAAO;YACN;gBACC,MAAM,EAAE,wCAAwC;gBAChD,WAAW,EACV,wGAAwG;aACzG;YACD;gBACC,MAAM,EAAE,kCAAkC;gBAC1C,WAAW,EACV,sLAAsL;aACvL;YACD;gBACC,MAAM,EAAE,2BAA2B;gBACnC,WAAW,EACV,kHAAkH;aACnH;SACD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CACnB,SAAyB,EACzB,kBAAwC;QAGxC,MAAM,SAAS,GAAG,kBAAkB,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC;QACtE,MAAM,aAAa,GAAG,kBAAkB,CAAC,GAAG,CAAC,mCAAmC,CAAC,IAAI,EAAE,CAAC;QAOxF,MAAM,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;YACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC;YAE3C,OAAO,QAAQ,KAAK,QAAQ,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,OAAO,IAAA,sCAAmB,EAAC,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACpD,KAAK,EAAE,cAAc,IAAI,CAAC,IAAI,8CAA8C;YAC5E,WAAW,EACV,uLAAuL;YACxL,KAAK,EAAE,OAAO;SACd,CAAC,CAAC,CAAC;IACL,CAAC;CACD,CAAA;;6BAhEY,kBAAkB;IAD9B,IAAA,+BAAkB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;GACzB,kBAAkB,CAgE9B"}
@@ -9,6 +9,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.AgentNodeVersionRule = void 0;
10
10
  const decorators_1 = require("@n8n/decorators");
11
11
  const agent_node_mode_1 = require("./agent-node-mode");
12
+ const detection_report_1 = require("../../detection-report");
12
13
  let AgentNodeVersionRule = class AgentNodeVersionRule {
13
14
  constructor() {
14
15
  this.id = 'agent-node-version-v3';
@@ -32,18 +33,11 @@ let AgentNodeVersionRule = class AgentNodeVersionRule {
32
33
  }
33
34
  async detectWorkflow(_workflow, nodesGroupedByType) {
34
35
  const affectedNodes = (0, agent_node_mode_1.getAgentNodesBelowFirstSupportedVersion)(nodesGroupedByType).filter((node) => !(0, agent_node_mode_1.getRemovedAgentMode)(node));
35
- if (affectedNodes.length === 0)
36
- return { isAffected: false, issues: [] };
37
- return {
38
- isAffected: true,
39
- issues: affectedNodes.map((node) => ({
40
- title: `Node '${node.name}' uses AI Agent version ${node.typeVersion}`,
41
- description: 'After the update, this node will run with version 2 behavior.',
42
- level: 'warning',
43
- nodeId: node.id,
44
- nodeName: node.name,
45
- })),
46
- };
36
+ return (0, detection_report_1.reportAffectedNodes)(affectedNodes, (node) => ({
37
+ title: `Node '${node.name}' uses AI Agent version ${node.typeVersion}`,
38
+ description: 'After the update, this node will run with version 2 behavior.',
39
+ level: 'warning',
40
+ }));
47
41
  }
48
42
  };
49
43
  exports.AgentNodeVersionRule = AgentNodeVersionRule;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-node-version.rule.js","sourceRoot":"","sources":["../../../../../src/modules/breaking-changes/rules/v3/agent-node-version.rule.ts"],"names":[],"mappings":";;;;;;;;;AAEA,gDAAqD;AAGrD,uDAAiG;AAa1F,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAA1B;QACN,OAAE,GAAG,uBAAuB,CAAC;IAgD9B,CAAC;IA9CA,WAAW;QACV,OAAO;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,uCAAuC;YAC9C,WAAW,EACV,wLAAwL;YACzL,QAAQ,YAAiC;YACzC,QAAQ,EAAE,QAAQ;SAClB,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,kBAAkB,CACvB,gBAAkD;QAElD,OAAO;YACN;gBACC,MAAM,EAAE,+DAA+D;gBACvE,WAAW,EACV,sLAAsL;aACvL;SACD,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,cAAc,CACnB,SAAyB,EACzB,kBAAwC;QAExC,MAAM,aAAa,GAAG,IAAA,yDAAuC,EAAC,kBAAkB,CAAC,CAAC,MAAM,CACvF,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAA,qCAAmB,EAAC,IAAI,CAAC,CACpC,CAAC;QAEF,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAEzE,OAAO;YACN,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACpC,KAAK,EAAE,SAAS,IAAI,CAAC,IAAI,2BAA2B,IAAI,CAAC,WAAW,EAAE;gBACtE,WAAW,EAAE,+DAA+D;gBAC5E,KAAK,EAAE,SAAS;gBAChB,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,QAAQ,EAAE,IAAI,CAAC,IAAI;aACnB,CAAC,CAAC;SACH,CAAC;IACH,CAAC;CACD,CAAA;;+BAjDY,oBAAoB;IADhC,IAAA,+BAAkB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;GACzB,oBAAoB,CAiDhC"}
1
+ {"version":3,"file":"agent-node-version.rule.js","sourceRoot":"","sources":["../../../../../src/modules/breaking-changes/rules/v3/agent-node-version.rule.ts"],"names":[],"mappings":";;;;;;;;;AAEA,gDAAqD;AAGrD,uDAAiG;AACjG,6DAA6D;AAatD,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAA1B;QACN,OAAE,GAAG,uBAAuB,CAAC;IAyC9B,CAAC;IAvCA,WAAW;QACV,OAAO;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,uCAAuC;YAC9C,WAAW,EACV,wLAAwL;YACzL,QAAQ,YAAiC;YACzC,QAAQ,EAAE,QAAQ;SAClB,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,kBAAkB,CACvB,gBAAkD;QAElD,OAAO;YACN;gBACC,MAAM,EAAE,+DAA+D;gBACvE,WAAW,EACV,sLAAsL;aACvL;SACD,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,cAAc,CACnB,SAAyB,EACzB,kBAAwC;QAExC,MAAM,aAAa,GAAG,IAAA,yDAAuC,EAAC,kBAAkB,CAAC,CAAC,MAAM,CACvF,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAA,qCAAmB,EAAC,IAAI,CAAC,CACpC,CAAC;QAEF,OAAO,IAAA,sCAAmB,EAAC,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACpD,KAAK,EAAE,SAAS,IAAI,CAAC,IAAI,2BAA2B,IAAI,CAAC,WAAW,EAAE;YACtE,WAAW,EAAE,+DAA+D;YAC5E,KAAK,EAAE,SAAS;SAChB,CAAC,CAAC,CAAC;IACL,CAAC;CACD,CAAA;;+BA1CY,oBAAoB;IADhC,IAAA,+BAAkB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;GACzB,oBAAoB,CA0ChC"}
@@ -9,6 +9,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.AgentRemovedModesRule = void 0;
10
10
  const decorators_1 = require("@n8n/decorators");
11
11
  const agent_node_mode_1 = require("./agent-node-mode");
12
+ const detection_report_1 = require("../../detection-report");
12
13
  let AgentRemovedModesRule = class AgentRemovedModesRule {
13
14
  constructor() {
14
15
  this.id = 'agent-removed-modes-v3';
@@ -33,20 +34,13 @@ let AgentRemovedModesRule = class AgentRemovedModesRule {
33
34
  async detectWorkflow(_workflow, nodesGroupedByType) {
34
35
  const affectedNodes = (0, agent_node_mode_1.getAgentNodesBelowFirstSupportedVersion)(nodesGroupedByType).flatMap((node) => {
35
36
  const removedMode = (0, agent_node_mode_1.getRemovedAgentMode)(node);
36
- return removedMode ? [{ node, removedMode }] : [];
37
+ return removedMode ? [{ ...node, removedMode }] : [];
37
38
  });
38
- if (affectedNodes.length === 0)
39
- return { isAffected: false, issues: [] };
40
- return {
41
- isAffected: true,
42
- issues: affectedNodes.map(({ node, removedMode }) => ({
43
- title: `Node '${node.name}' uses the "${removedMode}" mode of AI Agent version ${node.typeVersion}`,
44
- description: `The "${removedMode}" mode is no longer available. After the update, this node will fail when executed until it is replaced with an AI Agent on the latest version.`,
45
- level: 'error',
46
- nodeId: node.id,
47
- nodeName: node.name,
48
- })),
49
- };
39
+ return (0, detection_report_1.reportAffectedNodes)(affectedNodes, ({ name, typeVersion, removedMode }) => ({
40
+ title: `Node '${name}' uses the "${removedMode}" mode of AI Agent version ${typeVersion}`,
41
+ description: `The "${removedMode}" mode is no longer available. After the update, this node will fail when executed until it is replaced with an AI Agent on the latest version.`,
42
+ level: 'error',
43
+ }));
50
44
  }
51
45
  };
52
46
  exports.AgentRemovedModesRule = AgentRemovedModesRule;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-removed-modes.rule.js","sourceRoot":"","sources":["../../../../../src/modules/breaking-changes/rules/v3/agent-removed-modes.rule.ts"],"names":[],"mappings":";;;;;;;;;AAEA,gDAAqD;AAGrD,uDAAiG;AAa1F,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAA3B;QACN,OAAE,GAAG,wBAAwB,CAAC;IAoD/B,CAAC;IAlDA,WAAW;QACV,OAAO;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,mCAAmC;YAC1C,WAAW,EACV,oPAAoP;YACrP,QAAQ,YAAiC;YACzC,QAAQ,EAAE,UAAU;SACpB,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,kBAAkB,CACvB,gBAAkD;QAElD,OAAO;YACN;gBACC,MAAM,EAAE,gDAAgD;gBACxD,WAAW,EACV,+NAA+N;aAChO;SACD,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,cAAc,CACnB,SAAyB,EACzB,kBAAwC;QAExC,MAAM,aAAa,GAAG,IAAA,yDAAuC,EAAC,kBAAkB,CAAC,CAAC,OAAO,CACxF,CAAC,IAAI,EAAE,EAAE;YACR,MAAM,WAAW,GAAG,IAAA,qCAAmB,EAAC,IAAI,CAAC,CAAC;YAE9C,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,CAAC,CACD,CAAC;QAEF,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAEzE,OAAO;YACN,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;gBACrD,KAAK,EAAE,SAAS,IAAI,CAAC,IAAI,eAAe,WAAW,8BAA8B,IAAI,CAAC,WAAW,EAAE;gBACnG,WAAW,EAAE,QAAQ,WAAW,iJAAiJ;gBACjL,KAAK,EAAE,OAAO;gBACd,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,QAAQ,EAAE,IAAI,CAAC,IAAI;aACnB,CAAC,CAAC;SACH,CAAC;IACH,CAAC;CACD,CAAA;;gCArDY,qBAAqB;IADjC,IAAA,+BAAkB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;GACzB,qBAAqB,CAqDjC"}
1
+ {"version":3,"file":"agent-removed-modes.rule.js","sourceRoot":"","sources":["../../../../../src/modules/breaking-changes/rules/v3/agent-removed-modes.rule.ts"],"names":[],"mappings":";;;;;;;;;AAEA,gDAAqD;AAGrD,uDAAiG;AACjG,6DAA6D;AAatD,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAA3B;QACN,OAAE,GAAG,wBAAwB,CAAC;IA6C/B,CAAC;IA3CA,WAAW;QACV,OAAO;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,mCAAmC;YAC1C,WAAW,EACV,oPAAoP;YACrP,QAAQ,YAAiC;YACzC,QAAQ,EAAE,UAAU;SACpB,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,kBAAkB,CACvB,gBAAkD;QAElD,OAAO;YACN;gBACC,MAAM,EAAE,gDAAgD;gBACxD,WAAW,EACV,+NAA+N;aAChO;SACD,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,cAAc,CACnB,SAAyB,EACzB,kBAAwC;QAExC,MAAM,aAAa,GAAG,IAAA,yDAAuC,EAAC,kBAAkB,CAAC,CAAC,OAAO,CACxF,CAAC,IAAI,EAAE,EAAE;YACR,MAAM,WAAW,GAAG,IAAA,qCAAmB,EAAC,IAAI,CAAC,CAAC;YAE9C,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,CAAC,CACD,CAAC;QAEF,OAAO,IAAA,sCAAmB,EAAC,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;YAClF,KAAK,EAAE,SAAS,IAAI,eAAe,WAAW,8BAA8B,WAAW,EAAE;YACzF,WAAW,EAAE,QAAQ,WAAW,iJAAiJ;YACjL,KAAK,EAAE,OAAO;SACd,CAAC,CAAC,CAAC;IACL,CAAC;CACD,CAAA;;gCA9CY,qBAAqB;IADjC,IAAA,+BAAkB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;GACzB,qBAAqB,CA8CjC"}
@@ -8,6 +8,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.AiTransformDeprecatedRule = exports.AI_TRANSFORM_NODE_TYPE = void 0;
10
10
  const decorators_1 = require("@n8n/decorators");
11
+ const detection_report_1 = require("../../detection-report");
11
12
  exports.AI_TRANSFORM_NODE_TYPE = 'n8n-nodes-base.aiTransform';
12
13
  let AiTransformDeprecatedRule = class AiTransformDeprecatedRule {
13
14
  constructor() {
@@ -32,18 +33,11 @@ let AiTransformDeprecatedRule = class AiTransformDeprecatedRule {
32
33
  }
33
34
  async detectWorkflow(_workflow, nodesGroupedByType) {
34
35
  const affectedNodes = nodesGroupedByType.get(exports.AI_TRANSFORM_NODE_TYPE) ?? [];
35
- if (affectedNodes.length === 0)
36
- return { isAffected: false, issues: [] };
37
- return {
38
- isAffected: true,
39
- issues: affectedNodes.map((node) => ({
40
- title: `Node '${node.name}' uses the deprecated AI Transform node`,
41
- description: 'The AI Transform node is deprecated. Migrate it to a Code node to keep it working.',
42
- level: 'warning',
43
- nodeId: node.id,
44
- nodeName: node.name,
45
- })),
46
- };
36
+ return (0, detection_report_1.reportAffectedNodes)(affectedNodes, (node) => ({
37
+ title: `Node '${node.name}' uses the deprecated AI Transform node`,
38
+ description: 'The AI Transform node is deprecated. Migrate it to a Code node to keep it working.',
39
+ level: 'warning',
40
+ }));
47
41
  }
48
42
  };
49
43
  exports.AiTransformDeprecatedRule = AiTransformDeprecatedRule;
@@ -1 +1 @@
1
- {"version":3,"file":"ai-transform-deprecated.rule.js","sourceRoot":"","sources":["../../../../../src/modules/breaking-changes/rules/v3/ai-transform-deprecated.rule.ts"],"names":[],"mappings":";;;;;;;;;AAEA,gDAAqD;AAUxC,QAAA,sBAAsB,GAAG,4BAA4B,CAAC;AAG5D,IAAM,yBAAyB,GAA/B,MAAM,yBAAyB;IAA/B;QACN,OAAE,GAAW,yBAAyB,CAAC;IA8CxC,CAAC;IA5CA,WAAW;QACV,OAAO;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,iCAAiC;YACxC,WAAW,EACV,sFAAsF;YACvF,QAAQ,YAAiC;YACzC,QAAQ,EAAE,QAAQ;SAClB,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,kBAAkB,CACvB,gBAAkD;QAElD,OAAO;YACN;gBACC,MAAM,EAAE,uCAAuC;gBAC/C,WAAW,EACV,yIAAyI;aAC1I;SACD,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,cAAc,CACnB,SAAyB,EACzB,kBAAwC;QAExC,MAAM,aAAa,GAAG,kBAAkB,CAAC,GAAG,CAAC,QAAA,sBAAsB,CAAC,IAAI,EAAE,CAAC;QAC3E,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAEzE,OAAO;YACN,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACpC,KAAK,EAAE,SAAS,IAAI,CAAC,IAAI,yCAAyC;gBAClE,WAAW,EACV,oFAAoF;gBACrF,KAAK,EAAE,SAAS;gBAChB,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,QAAQ,EAAE,IAAI,CAAC,IAAI;aACnB,CAAC,CAAC;SACH,CAAC;IACH,CAAC;CACD,CAAA;;oCA/CY,yBAAyB;IADrC,IAAA,+BAAkB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;GACzB,yBAAyB,CA+CrC"}
1
+ {"version":3,"file":"ai-transform-deprecated.rule.js","sourceRoot":"","sources":["../../../../../src/modules/breaking-changes/rules/v3/ai-transform-deprecated.rule.ts"],"names":[],"mappings":";;;;;;;;;AAEA,gDAAqD;AAGrD,6DAA6D;AAQhD,QAAA,sBAAsB,GAAG,4BAA4B,CAAC;AAG5D,IAAM,yBAAyB,GAA/B,MAAM,yBAAyB;IAA/B;QACN,OAAE,GAAW,yBAAyB,CAAC;IAwCxC,CAAC;IAtCA,WAAW;QACV,OAAO;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,iCAAiC;YACxC,WAAW,EACV,sFAAsF;YACvF,QAAQ,YAAiC;YACzC,QAAQ,EAAE,QAAQ;SAClB,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,kBAAkB,CACvB,gBAAkD;QAElD,OAAO;YACN;gBACC,MAAM,EAAE,uCAAuC;gBAC/C,WAAW,EACV,yIAAyI;aAC1I;SACD,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,cAAc,CACnB,SAAyB,EACzB,kBAAwC;QAExC,MAAM,aAAa,GAAG,kBAAkB,CAAC,GAAG,CAAC,QAAA,sBAAsB,CAAC,IAAI,EAAE,CAAC;QAE3E,OAAO,IAAA,sCAAmB,EAAC,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACpD,KAAK,EAAE,SAAS,IAAI,CAAC,IAAI,yCAAyC;YAClE,WAAW,EACV,oFAAoF;YACrF,KAAK,EAAE,SAAS;SAChB,CAAC,CAAC,CAAC;IACL,CAAC;CACD,CAAA;;oCAzCY,yBAAyB;IADrC,IAAA,+BAAkB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;GACzB,yBAAyB,CAyCrC"}
@@ -13,6 +13,7 @@ exports.AlwaysOutputDataMultiOutputRule = void 0;
13
13
  const decorators_1 = require("@n8n/decorators");
14
14
  const n8n_workflow_1 = require("n8n-workflow");
15
15
  const node_types_1 = require("../../../../node-types");
16
+ const detection_report_1 = require("../../detection-report");
16
17
  let AlwaysOutputDataMultiOutputRule = class AlwaysOutputDataMultiOutputRule {
17
18
  constructor(nodeTypes) {
18
19
  this.nodeTypes = nodeTypes;
@@ -44,19 +45,11 @@ let AlwaysOutputDataMultiOutputRule = class AlwaysOutputDataMultiOutputRule {
44
45
  }
45
46
  }
46
47
  }
47
- if (affectedNodes.length === 0) {
48
- return { isAffected: false, issues: [] };
49
- }
50
- return {
51
- isAffected: true,
52
- issues: affectedNodes.map((node) => ({
53
- title: `Node '${node.name}' uses "Always Output Data" and has multiple outputs`,
54
- description: '"Always Output Data" currently adds an empty item to this node\'s first output even when another output has data. A future version fixes this to only add the empty item when every output is empty, so this node\'s output will change. Review any logic downstream of its first output.',
55
- level: 'warning',
56
- nodeId: node.id,
57
- nodeName: node.name,
58
- })),
59
- };
48
+ return (0, detection_report_1.reportAffectedNodes)(affectedNodes, (node) => ({
49
+ title: `Node '${node.name}' uses "Always Output Data" and has multiple outputs`,
50
+ description: '"Always Output Data" currently adds an empty item to this node\'s first output even when another output has data. A future version fixes this to only add the empty item when every output is empty, so this node\'s output will change. Review any logic downstream of its first output.',
51
+ level: 'warning',
52
+ }));
60
53
  }
61
54
  hasMultipleMainOutputs(node) {
62
55
  if (node.onError === 'continueErrorOutput')
@@ -1 +1 @@
1
- {"version":3,"file":"always-output-data-multi-output.rule.js","sourceRoot":"","sources":["../../../../../src/modules/breaking-changes/rules/v3/always-output-data-multi-output.rule.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,gDAAqD;AAErD,+CAAmD;AAEnD,6CAAyC;AAUlC,IAAM,+BAA+B,GAArC,MAAM,+BAA+B;IAG3C,YAA6B,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;QAFjD,OAAE,GAAG,oCAAoC,CAAC;IAEU,CAAC;IAErD,WAAW;QACV,OAAO;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,kEAAkE;YACzE,WAAW,EACV,uUAAuU;YACxU,QAAQ,YAAiC;YACzC,QAAQ,EAAE,QAAQ;SAClB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CACvB,gBAAkD;QAElD,OAAO;YACN;gBACC,MAAM,EAAE,+DAA+D;gBACvE,WAAW,EACV,gQAAgQ;aACjQ;SACD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CACnB,SAAyB,EACzB,kBAAwC;QAExC,MAAM,aAAa,GAAY,EAAE,CAAC;QAClC,KAAK,MAAM,KAAK,IAAI,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC;YACjD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBAC1B,IAAI,IAAI,CAAC,gBAAgB,KAAK,IAAI,IAAI,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC;oBACzE,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC1B,CAAC;YACF,CAAC;QACF,CAAC;QAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAC1C,CAAC;QAED,OAAO;YACN,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACpC,KAAK,EAAE,SAAS,IAAI,CAAC,IAAI,sDAAsD;gBAC/E,WAAW,EACV,2RAA2R;gBAC5R,KAAK,EAAE,SAAS;gBAChB,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,QAAQ,EAAE,IAAI,CAAC,IAAI;aACnB,CAAC,CAAC;SACH,CAAC;IACH,CAAC;IAOO,sBAAsB,CAAC,IAAW;QAEzC,IAAI,IAAI,CAAC,OAAO,KAAK,qBAAqB;YAAE,OAAO,IAAI,CAAC;QAExD,IAAI,OAAwC,CAAC;QAC7C,IAAI,CAAC;YACJ,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC;QAC/F,CAAC;QAAC,MAAM,CAAC;YAER,OAAO,KAAK,CAAC;QACd,CAAC;QAID,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAC;QAEzC,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CACrC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,kCAAmB,CAAC,IAAI,CAC5F,CAAC,MAAM,CAAC;QAET,OAAO,eAAe,GAAG,CAAC,CAAC;IAC5B,CAAC;CACD,CAAA;;0CArFY,+BAA+B;IAD3C,IAAA,+BAAkB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;qCAIG,sBAAS;GAHrC,+BAA+B,CAqF3C"}
1
+ {"version":3,"file":"always-output-data-multi-output.rule.js","sourceRoot":"","sources":["../../../../../src/modules/breaking-changes/rules/v3/always-output-data-multi-output.rule.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,gDAAqD;AAErD,+CAAmD;AAEnD,6CAAyC;AAEzC,6DAA6D;AAStD,IAAM,+BAA+B,GAArC,MAAM,+BAA+B;IAG3C,YAA6B,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;QAFjD,OAAE,GAAG,oCAAoC,CAAC;IAEU,CAAC;IAErD,WAAW;QACV,OAAO;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,kEAAkE;YACzE,WAAW,EACV,uUAAuU;YACxU,QAAQ,YAAiC;YACzC,QAAQ,EAAE,QAAQ;SAClB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CACvB,gBAAkD;QAElD,OAAO;YACN;gBACC,MAAM,EAAE,+DAA+D;gBACvE,WAAW,EACV,gQAAgQ;aACjQ;SACD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CACnB,SAAyB,EACzB,kBAAwC;QAExC,MAAM,aAAa,GAAY,EAAE,CAAC;QAClC,KAAK,MAAM,KAAK,IAAI,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC;YACjD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBAC1B,IAAI,IAAI,CAAC,gBAAgB,KAAK,IAAI,IAAI,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC;oBACzE,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC1B,CAAC;YACF,CAAC;QACF,CAAC;QAED,OAAO,IAAA,sCAAmB,EAAC,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACpD,KAAK,EAAE,SAAS,IAAI,CAAC,IAAI,sDAAsD;YAC/E,WAAW,EACV,2RAA2R;YAC5R,KAAK,EAAE,SAAS;SAChB,CAAC,CAAC,CAAC;IACL,CAAC;IAOO,sBAAsB,CAAC,IAAW;QAEzC,IAAI,IAAI,CAAC,OAAO,KAAK,qBAAqB;YAAE,OAAO,IAAI,CAAC;QAExD,IAAI,OAAwC,CAAC;QAC7C,IAAI,CAAC;YACJ,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC;QAC/F,CAAC;QAAC,MAAM,CAAC;YAER,OAAO,KAAK,CAAC;QACd,CAAC;QAID,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAC;QAEzC,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CACrC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,kCAAmB,CAAC,IAAI,CAC5F,CAAC,MAAM,CAAC;QAET,OAAO,eAAe,GAAG,CAAC,CAAC;IAC5B,CAAC;CACD,CAAA;;0CA5EY,+BAA+B;IAD3C,IAAA,+BAAkB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;qCAIG,sBAAS;GAHrC,+BAA+B,CA4E3C"}
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.CallerPolicyDefaultAnyRule = exports.REMOVED_CALLER_POLICY = void 0;
13
13
  const config_1 = require("@n8n/config");
14
14
  const decorators_1 = require("@n8n/decorators");
15
+ const detection_report_1 = require("../../detection-report");
15
16
  exports.REMOVED_CALLER_POLICY = 'any';
16
17
  let CallerPolicyDefaultAnyRule = class CallerPolicyDefaultAnyRule {
17
18
  constructor(globalConfig) {
@@ -31,7 +32,7 @@ let CallerPolicyDefaultAnyRule = class CallerPolicyDefaultAnyRule {
31
32
  async detect() {
32
33
  const defaultPolicy = this.globalConfig.workflows.callerPolicyDefaultOption;
33
34
  if (defaultPolicy !== exports.REMOVED_CALLER_POLICY) {
34
- return { isAffected: false, instanceIssues: [], recommendations: [] };
35
+ return detection_report_1.NOT_AFFECTED_INSTANCE;
35
36
  }
36
37
  return {
37
38
  isAffected: true,
@@ -1 +1 @@
1
- {"version":3,"file":"caller-policy-default-any.rule.js","sourceRoot":"","sources":["../../../../../src/modules/breaking-changes/rules/v3/caller-policy-default-any.rule.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wCAA2C;AAC3C,gDAAqD;AASxC,QAAA,qBAAqB,GAAG,KAAK,CAAC;AAQpC,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IACtC,YAA6B,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;QAEvD,OAAE,GAAG,8BAA8B,CAAC;IAFsB,CAAC;IAI3D,WAAW;QACV,OAAO;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,8DAA8D;YACrE,WAAW,EACV,uQAAuQ;YACxQ,QAAQ,YAAiC;YACzC,QAAQ,EAAE,QAAQ;YAClB,gBAAgB,EACf,2GAA2G;SAC5G,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,MAAM;QAEX,MAAM,aAAa,GAAW,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,yBAAyB,CAAC;QAEpF,IAAI,aAAa,KAAK,QAAA,qBAAqB,EAAE,CAAC;YAC7C,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC;QACvE,CAAC;QAED,OAAO;YACN,UAAU,EAAE,IAAI;YAChB,cAAc,EAAE;gBACf;oBACC,KAAK,EAAE,2DAA2D;oBAClE,WAAW,EACV,2JAA2J;oBAC5J,KAAK,EAAE,SAAS;iBAChB;aACD;YACD,eAAe,EAAE;gBAChB;oBACC,MAAM,EAAE,0CAA0C;oBAClD,WAAW,EACV,4UAA4U;iBAC7U;gBACD;oBACC,MAAM,EAAE,mCAAmC;oBAC3C,WAAW,EACV,8PAA8P;iBAC/P;aACD;SACD,CAAC;IACH,CAAC;CACD,CAAA;;qCAnDY,0BAA0B;IADtC,IAAA,+BAAkB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;qCAEM,qBAAY;GAD3C,0BAA0B,CAmDtC"}
1
+ {"version":3,"file":"caller-policy-default-any.rule.js","sourceRoot":"","sources":["../../../../../src/modules/breaking-changes/rules/v3/caller-policy-default-any.rule.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wCAA2C;AAC3C,gDAAqD;AAErD,6DAA+D;AAQlD,QAAA,qBAAqB,GAAG,KAAK,CAAC;AAQpC,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IACtC,YAA6B,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;QAEvD,OAAE,GAAG,8BAA8B,CAAC;IAFsB,CAAC;IAI3D,WAAW;QACV,OAAO;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,8DAA8D;YACrE,WAAW,EACV,uQAAuQ;YACxQ,QAAQ,YAAiC;YACzC,QAAQ,EAAE,QAAQ;YAClB,gBAAgB,EACf,2GAA2G;SAC5G,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,MAAM;QAEX,MAAM,aAAa,GAAW,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,yBAAyB,CAAC;QAEpF,IAAI,aAAa,KAAK,QAAA,qBAAqB,EAAE,CAAC;YAC7C,OAAO,wCAAqB,CAAC;QAC9B,CAAC;QAED,OAAO;YACN,UAAU,EAAE,IAAI;YAChB,cAAc,EAAE;gBACf;oBACC,KAAK,EAAE,2DAA2D;oBAClE,WAAW,EACV,2JAA2J;oBAC5J,KAAK,EAAE,SAAS;iBAChB;aACD;YACD,eAAe,EAAE;gBAChB;oBACC,MAAM,EAAE,0CAA0C;oBAClD,WAAW,EACV,4UAA4U;iBAC7U;gBACD;oBACC,MAAM,EAAE,mCAAmC;oBAC3C,WAAW,EACV,8PAA8P;iBAC/P;aACD;SACD,CAAC;IACH,CAAC;CACD,CAAA;;qCAnDY,0BAA0B;IADtC,IAAA,+BAAkB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;qCAEM,qBAAY;GAD3C,0BAA0B,CAmDtC"}
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.ChatHubDeprecatedRule = void 0;
13
13
  const db_1 = require("@n8n/db");
14
14
  const decorators_1 = require("@n8n/decorators");
15
+ const detection_report_1 = require("../../detection-report");
15
16
  const CHAT_ENABLED_KEY = 'chat.access.enabled';
16
17
  let ChatHubDeprecatedRule = class ChatHubDeprecatedRule {
17
18
  constructor(settingsRepository) {
@@ -31,7 +32,7 @@ let ChatHubDeprecatedRule = class ChatHubDeprecatedRule {
31
32
  async detect() {
32
33
  const setting = await this.settingsRepository.findByKey(CHAT_ENABLED_KEY);
33
34
  if (setting?.value !== 'true') {
34
- return { isAffected: false, instanceIssues: [], recommendations: [] };
35
+ return detection_report_1.NOT_AFFECTED_INSTANCE;
35
36
  }
36
37
  return {
37
38
  isAffected: true,
@@ -1 +1 @@
1
- {"version":3,"file":"chat-hub-deprecated.rule.js","sourceRoot":"","sources":["../../../../../src/modules/breaking-changes/rules/v3/chat-hub-deprecated.rule.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gCAA6C;AAC7C,gDAAqD;AASrD,MAAM,gBAAgB,GAAG,qBAAqB,CAAC;AAGxC,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IACjC,YAA6B,kBAAsC;QAAtC,uBAAkB,GAAlB,kBAAkB,CAAoB;QAEnE,OAAE,GAAW,wBAAwB,CAAC;IAFgC,CAAC;IAIvE,WAAW;QACV,OAAO;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,2CAA2C;YAClD,WAAW,EACV,yMAAyM;YAC1M,QAAQ,YAAiC;YACzC,QAAQ,EAAE,QAAQ;YAClB,gBAAgB,EAAE,oDAAoD;SACtE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM;QAKX,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAE1E,IAAI,OAAO,EAAE,KAAK,KAAK,MAAM,EAAE,CAAC;YAC/B,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC;QACvE,CAAC;QAED,OAAO;YACN,UAAU,EAAE,IAAI;YAChB,cAAc,EAAE;gBACf;oBACC,KAAK,EAAE,6BAA6B;oBACpC,WAAW,EACV,uNAAuN;oBACxN,KAAK,EAAE,SAAS;iBAChB;aACD;YACD,eAAe,EAAE;gBAChB;oBACC,MAAM,EAAE,6CAA6C;oBACrD,WAAW,EACV,+OAA+O;iBAChP;aACD;SACD,CAAC;IACH,CAAC;CACD,CAAA;;gCA/CY,qBAAqB;IADjC,IAAA,+BAAkB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;qCAEY,uBAAkB;GADvD,qBAAqB,CA+CjC"}
1
+ {"version":3,"file":"chat-hub-deprecated.rule.js","sourceRoot":"","sources":["../../../../../src/modules/breaking-changes/rules/v3/chat-hub-deprecated.rule.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gCAA6C;AAC7C,gDAAqD;AAErD,6DAA+D;AAQ/D,MAAM,gBAAgB,GAAG,qBAAqB,CAAC;AAGxC,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IACjC,YAA6B,kBAAsC;QAAtC,uBAAkB,GAAlB,kBAAkB,CAAoB;QAEnE,OAAE,GAAW,wBAAwB,CAAC;IAFgC,CAAC;IAIvE,WAAW;QACV,OAAO;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,2CAA2C;YAClD,WAAW,EACV,yMAAyM;YAC1M,QAAQ,YAAiC;YACzC,QAAQ,EAAE,QAAQ;YAClB,gBAAgB,EAAE,oDAAoD;SACtE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM;QAKX,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAE1E,IAAI,OAAO,EAAE,KAAK,KAAK,MAAM,EAAE,CAAC;YAC/B,OAAO,wCAAqB,CAAC;QAC9B,CAAC;QAED,OAAO;YACN,UAAU,EAAE,IAAI;YAChB,cAAc,EAAE;gBACf;oBACC,KAAK,EAAE,6BAA6B;oBACpC,WAAW,EACV,uNAAuN;oBACxN,KAAK,EAAE,SAAS;iBAChB;aACD;YACD,eAAe,EAAE;gBAChB;oBACC,MAAM,EAAE,6CAA6C;oBACrD,WAAW,EACV,+OAA+O;iBAChP;aACD;SACD,CAAC;IACH,CAAC;CACD,CAAA;;gCA/CY,qBAAqB;IADjC,IAAA,+BAAkB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;qCAEY,uBAAkB;GADvD,qBAAqB,CA+CjC"}
@@ -8,6 +8,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.ChatTriggerEmbeddedJsonRule = void 0;
10
10
  const decorators_1 = require("@n8n/decorators");
11
+ const detection_report_1 = require("../../detection-report");
11
12
  const CHAT_TRIGGER_NODE_TYPES = [
12
13
  '@n8n/n8n-nodes-langchain.chatTrigger',
13
14
  'n8n-nodes-langchain.chatTrigger',
@@ -37,18 +38,11 @@ let ChatTriggerEmbeddedJsonRule = class ChatTriggerEmbeddedJsonRule {
37
38
  }
38
39
  async detectWorkflow(_workflow, nodesGroupedByType) {
39
40
  const affectedNodes = CHAT_TRIGGER_NODE_TYPES.flatMap((type) => nodesGroupedByType.get(type) ?? []).filter((node) => node.parameters.mode === EMBEDDED_MODE);
40
- if (affectedNodes.length === 0)
41
- return { isAffected: false, issues: [] };
42
- return {
43
- isAffected: true,
44
- issues: affectedNodes.map((node) => ({
45
- title: `Node '${node.name}' uses an embedded chat`,
46
- description: 'This embedded chat now receives JSON WebSocket frames. Update a pinned @n8n/chat widget to a version that supports the JSON format, or ensure your custom chat client parses JSON frames. Unpinned CDN embeds update automatically.',
47
- level: 'warning',
48
- nodeId: node.id,
49
- nodeName: node.name,
50
- })),
51
- };
41
+ return (0, detection_report_1.reportAffectedNodes)(affectedNodes, (node) => ({
42
+ title: `Node '${node.name}' uses an embedded chat`,
43
+ description: 'This embedded chat now receives JSON WebSocket frames. Update a pinned @n8n/chat widget to a version that supports the JSON format, or ensure your custom chat client parses JSON frames. Unpinned CDN embeds update automatically.',
44
+ level: 'warning',
45
+ }));
52
46
  }
53
47
  };
54
48
  exports.ChatTriggerEmbeddedJsonRule = ChatTriggerEmbeddedJsonRule;
@@ -1 +1 @@
1
- {"version":3,"file":"chat-trigger-embedded-json.rule.js","sourceRoot":"","sources":["../../../../../src/modules/breaking-changes/rules/v3/chat-trigger-embedded-json.rule.ts"],"names":[],"mappings":";;;;;;;;;AAEA,gDAAqD;AAWrD,MAAM,uBAAuB,GAAG;IAC/B,sCAAsC;IACtC,iCAAiC;CACjC,CAAC;AAGF,MAAM,aAAa,GAAG,SAAS,CAAC;AAGzB,IAAM,2BAA2B,GAAjC,MAAM,2BAA2B;IAAjC;QACN,OAAE,GAAG,+BAA+B,CAAC;IAkDtC,CAAC;IAhDA,WAAW;QACV,OAAO;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,wDAAwD;YAC/D,WAAW,EACV,sVAAsV;YACvV,QAAQ,YAAiC;YACzC,QAAQ,EAAE,KAAK;YACf,gBAAgB,EAAE,yCAAyC;SAC3D,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,kBAAkB,CACvB,gBAAkD;QAElD,OAAO;YACN;gBACC,MAAM,EAAE,8DAA8D;gBACtE,WAAW,EACV,0QAA0Q;aAC3Q;SACD,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,cAAc,CACnB,SAAyB,EACzB,kBAAwC;QAExC,MAAM,aAAa,GAAG,uBAAuB,CAAC,OAAO,CACpD,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAC5C,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;QAE3D,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAEzE,OAAO;YACN,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACpC,KAAK,EAAE,SAAS,IAAI,CAAC,IAAI,yBAAyB;gBAClD,WAAW,EACV,qOAAqO;gBACtO,KAAK,EAAE,SAAS;gBAChB,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,QAAQ,EAAE,IAAI,CAAC,IAAI;aACnB,CAAC,CAAC;SACH,CAAC;IACH,CAAC;CACD,CAAA;;sCAnDY,2BAA2B;IADvC,IAAA,+BAAkB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;GACzB,2BAA2B,CAmDvC"}
1
+ {"version":3,"file":"chat-trigger-embedded-json.rule.js","sourceRoot":"","sources":["../../../../../src/modules/breaking-changes/rules/v3/chat-trigger-embedded-json.rule.ts"],"names":[],"mappings":";;;;;;;;;AAEA,gDAAqD;AAGrD,6DAA6D;AAS7D,MAAM,uBAAuB,GAAG;IAC/B,sCAAsC;IACtC,iCAAiC;CACjC,CAAC;AAGF,MAAM,aAAa,GAAG,SAAS,CAAC;AAGzB,IAAM,2BAA2B,GAAjC,MAAM,2BAA2B;IAAjC;QACN,OAAE,GAAG,+BAA+B,CAAC;IA2CtC,CAAC;IAzCA,WAAW;QACV,OAAO;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,wDAAwD;YAC/D,WAAW,EACV,sVAAsV;YACvV,QAAQ,YAAiC;YACzC,QAAQ,EAAE,KAAK;YACf,gBAAgB,EAAE,yCAAyC;SAC3D,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,kBAAkB,CACvB,gBAAkD;QAElD,OAAO;YACN;gBACC,MAAM,EAAE,8DAA8D;gBACtE,WAAW,EACV,0QAA0Q;aAC3Q;SACD,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,cAAc,CACnB,SAAyB,EACzB,kBAAwC;QAExC,MAAM,aAAa,GAAG,uBAAuB,CAAC,OAAO,CACpD,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAC5C,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;QAE3D,OAAO,IAAA,sCAAmB,EAAC,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACpD,KAAK,EAAE,SAAS,IAAI,CAAC,IAAI,yBAAyB;YAClD,WAAW,EACV,qOAAqO;YACtO,KAAK,EAAE,SAAS;SAChB,CAAC,CAAC,CAAC;IACL,CAAC;CACD,CAAA;;sCA5CY,2BAA2B;IADvC,IAAA,+BAAkB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;GACzB,2BAA2B,CA4CvC"}