n8n 2.29.7 → 2.30.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.
- package/README.md +9 -8
- package/dist/active-executions.d.ts +2 -1
- package/dist/active-executions.js +2 -1
- package/dist/active-executions.js.map +1 -1
- package/dist/active-workflow-manager.js +10 -5
- package/dist/active-workflow-manager.js.map +1 -1
- package/dist/blob-storage/azure-byte-store.ee.js +2 -2
- package/dist/blob-storage/azure-byte-store.ee.js.map +1 -1
- package/dist/blob-storage/s3-byte-store.ee.js +2 -2
- package/dist/blob-storage/s3-byte-store.ee.js.map +1 -1
- package/dist/build.tsbuildinfo +1 -1
- package/dist/chat/chat-service.js +5 -4
- package/dist/chat/chat-service.js.map +1 -1
- package/dist/chat/chat-service.types.d.ts +2 -2
- package/dist/commands/audit.js +3 -2
- package/dist/commands/audit.js.map +1 -1
- package/dist/commands/base-command.js +2 -1
- package/dist/commands/base-command.js.map +1 -1
- package/dist/commands/execute.d.ts +2 -2
- package/dist/commands/export/credentials.d.ts +4 -4
- package/dist/commands/export/entities.d.ts +2 -2
- package/dist/commands/export/workflow.d.ts +4 -4
- package/dist/commands/import/credentials.d.ts +2 -2
- package/dist/commands/import/workflow.d.ts +2 -2
- package/dist/commands/start.js +2 -0
- package/dist/commands/start.js.map +1 -1
- package/dist/commands/ttwf/generate.d.ts +2 -2
- package/dist/controllers/annotation-tags.controller.ee.d.ts +1 -1
- package/dist/controllers/oauth/oauth1-credential.controller.d.ts +3 -1
- package/dist/controllers/oauth/oauth1-credential.controller.js +12 -6
- package/dist/controllers/oauth/oauth1-credential.controller.js.map +1 -1
- package/dist/controllers/oauth/oauth2-credential.controller.d.ts +3 -1
- package/dist/controllers/oauth/oauth2-credential.controller.js +12 -5
- package/dist/controllers/oauth/oauth2-credential.controller.js.map +1 -1
- package/dist/controllers/posthog.controller.d.ts +6 -0
- package/dist/controllers/posthog.controller.js +36 -8
- package/dist/controllers/posthog.controller.js.map +1 -1
- package/dist/controllers/project.controller.d.ts +2 -0
- package/dist/controllers/project.controller.js +12 -4
- package/dist/controllers/project.controller.js.map +1 -1
- package/dist/controllers/role.controller.d.ts +3 -2
- package/dist/controllers/role.controller.js +21 -7
- package/dist/controllers/role.controller.js.map +1 -1
- package/dist/controllers/users.controller.d.ts +3 -2
- package/dist/controllers/users.controller.js +5 -1
- package/dist/controllers/users.controller.js.map +1 -1
- package/dist/credentials/credentials.controller.d.ts +3 -1
- package/dist/credentials/credentials.controller.js +24 -18
- package/dist/credentials/credentials.controller.js.map +1 -1
- package/dist/credentials/credentials.service.d.ts +1 -0
- package/dist/credentials/credentials.service.js +11 -0
- package/dist/credentials/credentials.service.js.map +1 -1
- package/dist/credentials-overwrites.d.ts +2 -0
- package/dist/credentials-overwrites.js +10 -0
- package/dist/credentials-overwrites.js.map +1 -1
- package/dist/deprecation/deprecation.service.js +35 -6
- package/dist/deprecation/deprecation.service.js.map +1 -1
- package/dist/errors/response-errors/bad-request.error.d.ts +2 -1
- package/dist/errors/response-errors/bad-request.error.js +5 -2
- package/dist/errors/response-errors/bad-request.error.js.map +1 -1
- package/dist/evaluation.ee/test-runs.controller.ee.d.ts +1 -0
- package/dist/eventbus/event-message-classes/index.d.ts +2 -2
- package/dist/eventbus/event-message-classes/index.js +1 -0
- package/dist/eventbus/event-message-classes/index.js.map +1 -1
- package/dist/events/event.service.d.ts +2 -1
- package/dist/events/event.service.js.map +1 -1
- package/dist/events/maps/instance-ai.event-map.d.ts +1 -1
- package/dist/events/maps/relay.event-map.d.ts +21 -2
- package/dist/events/maps/workflow-publication-metrics.event-map.d.ts +26 -0
- package/dist/events/maps/workflow-publication-metrics.event-map.js +3 -0
- package/dist/events/maps/workflow-publication-metrics.event-map.js.map +1 -0
- package/dist/events/relays/log-streaming.event-relay.d.ts +2 -1
- package/dist/events/relays/log-streaming.event-relay.js +16 -3
- package/dist/events/relays/log-streaming.event-relay.js.map +1 -1
- package/dist/events/relays/telemetry.event-relay.d.ts +3 -0
- package/dist/events/relays/telemetry.event-relay.js +44 -3
- package/dist/events/relays/telemetry.event-relay.js.map +1 -1
- package/dist/execution-lifecycle/execution-lifecycle-hooks.js +2 -0
- package/dist/execution-lifecycle/execution-lifecycle-hooks.js.map +1 -1
- package/dist/execution-lifecycle/shared/shared-hook-functions.js +2 -2
- package/dist/execution-lifecycle/shared/shared-hook-functions.js.map +1 -1
- package/dist/executions/execution-data/azure-store.ee.js +2 -1
- package/dist/executions/execution-data/azure-store.ee.js.map +1 -1
- package/dist/executions/execution-data/s3-store.ee.js +2 -1
- package/dist/executions/execution-data/s3-store.ee.js.map +1 -1
- package/dist/executions/execution.service.js +13 -2
- package/dist/executions/execution.service.js.map +1 -1
- package/dist/instance-settings-loader/loaders/community-packages.instance-settings-loader.js +6 -6
- package/dist/instance-settings-loader/loaders/community-packages.instance-settings-loader.js.map +1 -1
- package/dist/interfaces.d.ts +2 -1
- package/dist/license/license.service.js +4 -4
- package/dist/license/license.service.js.map +1 -1
- package/dist/load-nodes-and-credentials.js +5 -4
- package/dist/load-nodes-and-credentials.js.map +1 -1
- package/dist/metrics/prometheus/active-workflow-metrics.service.js +8 -13
- package/dist/metrics/prometheus/active-workflow-metrics.service.js.map +1 -1
- package/dist/metrics/prometheus/cached-metric-query.d.ts +19 -0
- package/dist/metrics/prometheus/cached-metric-query.js +28 -0
- package/dist/metrics/prometheus/cached-metric-query.js.map +1 -0
- package/dist/metrics/prometheus/instance-ai-metrics.service.js +5 -3
- package/dist/metrics/prometheus/instance-ai-metrics.service.js.map +1 -1
- package/dist/metrics/prometheus/prometheus.service.d.ts +2 -1
- package/dist/metrics/prometheus/prometheus.service.js +5 -2
- package/dist/metrics/prometheus/prometheus.service.js.map +1 -1
- package/dist/metrics/prometheus/workflow-info-metrics.service.js +8 -13
- package/dist/metrics/prometheus/workflow-info-metrics.service.js.map +1 -1
- package/dist/metrics/prometheus/workflow-publication-metrics.service.d.ts +21 -0
- package/dist/metrics/prometheus/workflow-publication-metrics.service.js +160 -0
- package/dist/metrics/prometheus/workflow-publication-metrics.service.js.map +1 -0
- package/dist/metrics/prometheus/workflow-statistics-metrics.service.d.ts +0 -4
- package/dist/metrics/prometheus/workflow-statistics-metrics.service.js +10 -42
- package/dist/metrics/prometheus/workflow-statistics-metrics.service.js.map +1 -1
- package/dist/middlewares/body-parser.js +21 -7
- package/dist/middlewares/body-parser.js.map +1 -1
- package/dist/modules/agents/agent-config.service.js +39 -18
- package/dist/modules/agents/agent-config.service.js.map +1 -1
- package/dist/modules/agents/agent-execution-orchestrator.service.d.ts +2 -2
- package/dist/modules/agents/agent-execution-orchestrator.service.js +5 -8
- package/dist/modules/agents/agent-execution-orchestrator.service.js.map +1 -1
- package/dist/modules/agents/agent-execution.service.d.ts +2 -2
- package/dist/modules/agents/agent-execution.service.js +11 -8
- package/dist/modules/agents/agent-execution.service.js.map +1 -1
- package/dist/modules/agents/agent-integration-persistence.service.d.ts +4 -1
- package/dist/modules/agents/agent-integration-persistence.service.js +4 -2
- package/dist/modules/agents/agent-integration-persistence.service.js.map +1 -1
- package/dist/modules/agents/agent-integrations.controller.js +13 -3
- package/dist/modules/agents/agent-integrations.controller.js.map +1 -1
- package/dist/modules/agents/agent-knowledge-commands.d.ts +3 -0
- package/dist/modules/agents/agent-knowledge-commands.js +32 -9
- package/dist/modules/agents/agent-knowledge-commands.js.map +1 -1
- package/dist/modules/agents/agent-knowledge-gate.d.ts +1 -1
- package/dist/modules/agents/agent-knowledge-gate.js +1 -3
- package/dist/modules/agents/agent-knowledge-gate.js.map +1 -1
- package/dist/modules/agents/agent-knowledge-retrieval.d.ts +13 -6
- package/dist/modules/agents/agent-knowledge-retrieval.js +16 -14
- package/dist/modules/agents/agent-knowledge-retrieval.js.map +1 -1
- package/dist/modules/agents/agent-knowledge-sandbox.service.d.ts +16 -11
- package/dist/modules/agents/agent-knowledge-sandbox.service.js +233 -140
- package/dist/modules/agents/agent-knowledge-sandbox.service.js.map +1 -1
- package/dist/modules/agents/agent-knowledge-storage.d.ts +4 -15
- package/dist/modules/agents/agent-knowledge-storage.js +13 -26
- package/dist/modules/agents/agent-knowledge-storage.js.map +1 -1
- package/dist/modules/agents/agent-knowledge.controller.d.ts +1 -1
- package/dist/modules/agents/agent-knowledge.controller.js +3 -3
- package/dist/modules/agents/agent-knowledge.controller.js.map +1 -1
- package/dist/modules/agents/agent-knowledge.service.d.ts +13 -12
- package/dist/modules/agents/agent-knowledge.service.js +93 -106
- package/dist/modules/agents/agent-knowledge.service.js.map +1 -1
- package/dist/modules/agents/agent-model-catalog.service.d.ts +11 -0
- package/dist/modules/agents/agent-model-catalog.service.js +138 -0
- package/dist/modules/agents/agent-model-catalog.service.js.map +1 -0
- package/dist/modules/agents/agent-publish.service.js +6 -1
- package/dist/modules/agents/agent-publish.service.js.map +1 -1
- package/dist/modules/agents/agent-runtime-cache.service.d.ts +0 -1
- package/dist/modules/agents/agent-runtime-cache.service.js +4 -13
- package/dist/modules/agents/agent-runtime-cache.service.js.map +1 -1
- package/dist/modules/agents/agent-runtime-reconstruction.service.d.ts +3 -7
- package/dist/modules/agents/agent-runtime-reconstruction.service.js +10 -26
- package/dist/modules/agents/agent-runtime-reconstruction.service.js.map +1 -1
- package/dist/modules/agents/agent-sandbox.controller.d.ts +1 -1
- package/dist/modules/agents/agent-sandbox.controller.js +4 -4
- package/dist/modules/agents/agent-sandbox.controller.js.map +1 -1
- package/dist/modules/agents/agent-task.service.d.ts +1 -4
- package/dist/modules/agents/agent-task.service.js +1 -23
- package/dist/modules/agents/agent-task.service.js.map +1 -1
- package/dist/modules/agents/agents-catalog.controller.d.ts +9 -2
- package/dist/modules/agents/agents-catalog.controller.js +25 -2
- package/dist/modules/agents/agents-catalog.controller.js.map +1 -1
- package/dist/modules/agents/agents-config.controller.d.ts +46 -30
- package/dist/modules/agents/agents.controller.js +1 -1
- package/dist/modules/agents/agents.controller.js.map +1 -1
- package/dist/modules/agents/agents.service.d.ts +1 -1
- package/dist/modules/agents/agents.service.js +8 -2
- package/dist/modules/agents/agents.service.js.map +1 -1
- package/dist/modules/agents/builder/agents-builder-tools.service.d.ts +3 -3
- package/dist/modules/agents/builder/agents-builder-tools.service.js +32 -9
- package/dist/modules/agents/builder/agents-builder-tools.service.js.map +1 -1
- package/dist/modules/agents/builder/builder-model-live-lookup.service.d.ts +14 -0
- package/dist/modules/agents/builder/builder-model-live-lookup.service.js +91 -0
- package/dist/modules/agents/builder/builder-model-live-lookup.service.js.map +1 -0
- package/dist/modules/agents/builder/interactive/llm-provider-defaults.d.ts +0 -12
- package/dist/modules/agents/builder/interactive/llm-provider-defaults.js +20 -40
- package/dist/modules/agents/builder/interactive/llm-provider-defaults.js.map +1 -1
- package/dist/modules/agents/builder/interactive/resolve-llm.tool.d.ts +1 -2
- package/dist/modules/agents/builder/interactive/resolve-llm.tool.js +3 -2
- package/dist/modules/agents/builder/interactive/resolve-llm.tool.js.map +1 -1
- package/dist/modules/agents/builder/prompts/config-mutation.prompt.js +6 -0
- package/dist/modules/agents/builder/prompts/config-mutation.prompt.js.map +1 -1
- package/dist/modules/agents/builder/prompts/config-rules.prompt.js +7 -0
- package/dist/modules/agents/builder/prompts/config-rules.prompt.js.map +1 -1
- package/dist/modules/agents/entities/agent-execution.entity.d.ts +2 -4
- package/dist/modules/agents/entities/agent-execution.entity.js +2 -10
- package/dist/modules/agents/entities/agent-execution.entity.js.map +1 -1
- package/dist/modules/agents/execution-recorder.d.ts +0 -8
- package/dist/modules/agents/execution-recorder.js +12 -27
- package/dist/modules/agents/execution-recorder.js.map +1 -1
- package/dist/modules/agents/integrations/agent-chat-suspension-cards.js +5 -5
- package/dist/modules/agents/integrations/agent-chat-suspension-cards.js.map +1 -1
- package/dist/modules/agents/integrations/chat-integration.service.d.ts +7 -6
- package/dist/modules/agents/integrations/chat-integration.service.js +51 -85
- package/dist/modules/agents/integrations/chat-integration.service.js.map +1 -1
- package/dist/modules/agents/integrations/integration-action-executor.d.ts +116 -116
- package/dist/modules/agents/integrations/integration-helpers.js +5 -5
- package/dist/modules/agents/integrations/integration-helpers.js.map +1 -1
- package/dist/modules/agents/integrations/integration-message-context.service.js +2 -2
- package/dist/modules/agents/integrations/integration-message-context.service.js.map +1 -1
- package/dist/modules/agents/integrations/integration-tool-definitions.d.ts +949 -949
- package/dist/modules/agents/integrations/integration-tool-execution.js +4 -4
- package/dist/modules/agents/integrations/integration-tool-execution.js.map +1 -1
- package/dist/modules/agents/integrations/n8n-checkpoint-storage.d.ts +1 -0
- package/dist/modules/agents/integrations/n8n-checkpoint-storage.js +9 -1
- package/dist/modules/agents/integrations/n8n-checkpoint-storage.js.map +1 -1
- package/dist/modules/agents/integrations/platforms/linear-operations.js +18 -18
- package/dist/modules/agents/integrations/platforms/linear-operations.js.map +1 -1
- package/dist/modules/agents/integrations/platforms/linear-tool-definitions.d.ts +30 -30
- package/dist/modules/agents/integrations/platforms/slack-bridge-behavior.js +6 -6
- package/dist/modules/agents/integrations/platforms/slack-bridge-behavior.js.map +1 -1
- package/dist/modules/agents/integrations/platforms/slack-operations.js +3 -3
- package/dist/modules/agents/integrations/platforms/slack-operations.js.map +1 -1
- package/dist/modules/agents/integrations/recording/channel-integration-recorder.d.ts +64 -0
- package/dist/modules/agents/integrations/recording/channel-integration-recorder.js +376 -0
- package/dist/modules/agents/integrations/recording/channel-integration-recorder.js.map +1 -0
- package/dist/modules/agents/integrations/recording/recording-adapter.d.ts +2 -0
- package/dist/modules/agents/integrations/recording/recording-adapter.js +98 -0
- package/dist/modules/agents/integrations/recording/recording-adapter.js.map +1 -0
- package/dist/modules/agents/integrations/slack-app-setup.service.js +5 -5
- package/dist/modules/agents/integrations/slack-app-setup.service.js.map +1 -1
- package/dist/modules/agents/json-config/from-json-config.js +3 -0
- package/dist/modules/agents/json-config/from-json-config.js.map +1 -1
- package/dist/modules/agents/repositories/agent-checkpoint.repository.d.ts +1 -0
- package/dist/modules/agents/repositories/agent-checkpoint.repository.js +4 -0
- package/dist/modules/agents/repositories/agent-checkpoint.repository.js.map +1 -1
- package/dist/modules/agents/repositories/agent-execution.repository.js +3 -1
- package/dist/modules/agents/repositories/agent-execution.repository.js.map +1 -1
- package/dist/modules/agents/sub-agents/sub-agent-foreground-runner.d.ts +0 -1
- package/dist/modules/agents/sub-agents/sub-agent-foreground-runner.js +0 -1
- package/dist/modules/agents/sub-agents/sub-agent-foreground-runner.js.map +1 -1
- package/dist/modules/agents/tools/knowledge/search-knowledge.tool.d.ts +12 -8
- package/dist/modules/agents/tools/knowledge/search-knowledge.tool.js +12 -10
- package/dist/modules/agents/tools/knowledge/search-knowledge.tool.js.map +1 -1
- package/dist/modules/agents/tools/workflow-tool-factory.d.ts +2 -6
- package/dist/modules/agents/tools/workflow-tool-factory.js +11 -24
- package/dist/modules/agents/tools/workflow-tool-factory.js.map +1 -1
- package/dist/modules/agents/utils/agent-resource-id.js +2 -2
- package/dist/modules/agents/utils/agent-resource-id.js.map +1 -1
- package/dist/modules/agents/utils/execution-to-message-mapper.d.ts +1 -1
- package/dist/modules/agents/utils/execution-to-message-mapper.js +4 -31
- package/dist/modules/agents/utils/execution-to-message-mapper.js.map +1 -1
- package/dist/modules/breaking-changes/breaking-changes.controller.d.ts +4 -7
- package/dist/modules/breaking-changes/breaking-changes.controller.js +8 -7
- package/dist/modules/breaking-changes/breaking-changes.controller.js.map +1 -1
- package/dist/modules/breaking-changes/rules/index.d.ts +2 -0
- package/dist/modules/breaking-changes/rules/index.js +2 -0
- package/dist/modules/breaking-changes/rules/index.js.map +1 -1
- package/dist/modules/breaking-changes/rules/v3/always-output-data-multi-output.rule.d.ts +14 -0
- package/dist/modules/breaking-changes/rules/v3/always-output-data-multi-output.rule.js +82 -0
- package/dist/modules/breaking-changes/rules/v3/always-output-data-multi-output.rule.js.map +1 -0
- package/dist/modules/breaking-changes/rules/v3/execute-workflow-each-mode.rule.d.ts +10 -0
- package/dist/modules/breaking-changes/rules/v3/execute-workflow-each-mode.rule.js +53 -0
- package/dist/modules/breaking-changes/rules/v3/execute-workflow-each-mode.rule.js.map +1 -0
- package/dist/modules/chat-hub/chat-hub-extractor.js +2 -1
- package/dist/modules/chat-hub/chat-hub-extractor.js.map +1 -1
- package/dist/modules/chat-hub/chat-hub.attachment.service.js +3 -3
- package/dist/modules/chat-hub/chat-hub.attachment.service.js.map +1 -1
- package/dist/modules/chat-hub/chat-hub.controller.js +2 -2
- package/dist/modules/chat-hub/chat-hub.controller.js.map +1 -1
- package/dist/modules/chat-hub/chat-hub.module.d.ts +1 -1
- package/dist/modules/chat-hub/chat-hub.settings.controller.d.ts +3 -3
- package/dist/modules/chat-hub/chat-hub.types.d.ts +4 -4
- package/dist/modules/community-packages/community-node-types.service.js +3 -2
- package/dist/modules/community-packages/community-node-types.service.js.map +1 -1
- package/dist/modules/community-packages/community-packages.lifecycle.service.js +2 -1
- package/dist/modules/community-packages/community-packages.lifecycle.service.js.map +1 -1
- package/dist/modules/community-packages/community-packages.service.d.ts +6 -0
- package/dist/modules/community-packages/community-packages.service.js +116 -25
- package/dist/modules/community-packages/community-packages.service.js.map +1 -1
- package/dist/modules/community-packages/installed-packages.repository.d.ts +2 -0
- package/dist/modules/community-packages/installed-packages.repository.js +9 -0
- package/dist/modules/community-packages/installed-packages.repository.js.map +1 -1
- package/dist/modules/community-packages/npm-utils.js +2 -2
- package/dist/modules/community-packages/npm-utils.js.map +1 -1
- package/dist/modules/data-table/data-table-column.repository.js +3 -2
- package/dist/modules/data-table/data-table-column.repository.js.map +1 -1
- package/dist/modules/data-table/data-table-proxy.service.d.ts +3 -0
- package/dist/modules/data-table/data-table-proxy.service.js +8 -0
- package/dist/modules/data-table/data-table-proxy.service.js.map +1 -1
- package/dist/modules/data-table/data-table-rows.repository.d.ts +3 -0
- package/dist/modules/data-table/data-table-rows.repository.js +15 -4
- package/dist/modules/data-table/data-table-rows.repository.js.map +1 -1
- package/dist/modules/data-table/data-table.controller.js +2 -1
- package/dist/modules/data-table/data-table.controller.js.map +1 -1
- package/dist/modules/data-table/data-table.module.d.ts +1 -1
- package/dist/modules/data-table/data-table.repository.js +10 -0
- package/dist/modules/data-table/data-table.repository.js.map +1 -1
- package/dist/modules/data-table/data-table.service.d.ts +3 -0
- package/dist/modules/data-table/data-table.service.js +10 -0
- package/dist/modules/data-table/data-table.service.js.map +1 -1
- package/dist/modules/data-table/multer-upload-middleware.js +4 -3
- package/dist/modules/data-table/multer-upload-middleware.js.map +1 -1
- package/dist/modules/dynamic-credentials.ee/context-establishment-hooks/n8n-oauth/n8n-oauth-extractor.js +2 -1
- package/dist/modules/dynamic-credentials.ee/context-establishment-hooks/n8n-oauth/n8n-oauth-extractor.js.map +1 -1
- package/dist/modules/dynamic-credentials.ee/credential-resolvers/identifiers/oauth2-introspection-identifier.d.ts +2 -2
- package/dist/modules/dynamic-credentials.ee/dynamic-credentials.controller.js +2 -1
- package/dist/modules/dynamic-credentials.ee/dynamic-credentials.controller.js.map +1 -1
- package/dist/modules/dynamic-credentials.ee/services/dynamic-credential-storage.service.js +5 -0
- package/dist/modules/dynamic-credentials.ee/services/dynamic-credential-storage.service.js.map +1 -1
- package/dist/modules/dynamic-credentials.ee/services/n8n-resolver-seeder.service.d.ts +2 -3
- package/dist/modules/dynamic-credentials.ee/services/n8n-resolver-seeder.service.js +1 -7
- package/dist/modules/dynamic-credentials.ee/services/n8n-resolver-seeder.service.js.map +1 -1
- package/dist/modules/dynamic-credentials.ee/services/shared-fields.d.ts +2 -1
- package/dist/modules/dynamic-credentials.ee/services/shared-fields.js +15 -0
- package/dist/modules/dynamic-credentials.ee/services/shared-fields.js.map +1 -1
- package/dist/modules/external-secrets.ee/errors/secrets-provider-errors.d.ts +33 -0
- package/dist/modules/external-secrets.ee/errors/secrets-provider-errors.js +58 -0
- package/dist/modules/external-secrets.ee/errors/secrets-provider-errors.js.map +1 -0
- package/dist/modules/external-secrets.ee/provider-lifecycle.service.js +4 -4
- package/dist/modules/external-secrets.ee/provider-lifecycle.service.js.map +1 -1
- package/dist/modules/external-secrets.ee/providers/aws-secrets-manager.d.ts +16 -3
- package/dist/modules/external-secrets.ee/providers/aws-secrets-manager.js +114 -23
- package/dist/modules/external-secrets.ee/providers/aws-secrets-manager.js.map +1 -1
- package/dist/modules/external-secrets.ee/providers/azure-key-vault/azure-key-vault.d.ts +3 -0
- package/dist/modules/external-secrets.ee/providers/azure-key-vault/azure-key-vault.js +136 -32
- package/dist/modules/external-secrets.ee/providers/azure-key-vault/azure-key-vault.js.map +1 -1
- package/dist/modules/external-secrets.ee/providers/gcp-secrets-manager/gcp-secrets-manager.d.ts +2 -0
- package/dist/modules/external-secrets.ee/providers/gcp-secrets-manager/gcp-secrets-manager.js +134 -50
- package/dist/modules/external-secrets.ee/providers/gcp-secrets-manager/gcp-secrets-manager.js.map +1 -1
- package/dist/modules/external-secrets.ee/providers/infisical.d.ts +31 -0
- package/dist/modules/external-secrets.ee/providers/infisical.js +97 -40
- package/dist/modules/external-secrets.ee/providers/infisical.js.map +1 -1
- package/dist/modules/external-secrets.ee/providers/one-password.d.ts +2 -0
- package/dist/modules/external-secrets.ee/providers/one-password.js +97 -41
- package/dist/modules/external-secrets.ee/providers/one-password.js.map +1 -1
- package/dist/modules/external-secrets.ee/providers/vault.d.ts +3 -1
- package/dist/modules/external-secrets.ee/providers/vault.js +126 -33
- package/dist/modules/external-secrets.ee/providers/vault.js.map +1 -1
- package/dist/modules/external-secrets.ee/secrets-cache.service.js +2 -1
- package/dist/modules/external-secrets.ee/secrets-cache.service.js.map +1 -1
- package/dist/modules/favorites/dto/add-favorite.dto.d.ts +1 -1
- package/dist/modules/insights/database/entities/insights-shared.d.ts +1 -1
- package/dist/modules/insights/database/repositories/insights-by-period.repository.d.ts +2 -2
- package/dist/modules/insights/insights-compaction.service.d.ts +4 -2
- package/dist/modules/insights/insights-compaction.service.js +46 -39
- package/dist/modules/insights/insights-compaction.service.js.map +1 -1
- package/dist/modules/insights/insights.service.d.ts +3 -3
- package/dist/modules/insights/insights.service.js +4 -4
- package/dist/modules/insights/insights.service.js.map +1 -1
- package/dist/modules/instance-ai/browser/browser-local-mcp-server.js +1 -1
- package/dist/modules/instance-ai/browser/browser-local-mcp-server.js.map +1 -1
- package/dist/modules/instance-ai/eval/date-anchors.d.ts +1 -0
- package/dist/modules/instance-ai/eval/date-anchors.js +24 -0
- package/dist/modules/instance-ai/eval/date-anchors.js.map +1 -0
- package/dist/modules/instance-ai/eval/eval-timings.d.ts +10 -0
- package/dist/modules/instance-ai/eval/eval-timings.js +50 -0
- package/dist/modules/instance-ai/eval/eval-timings.js.map +1 -0
- package/dist/modules/instance-ai/eval/execution.service.d.ts +1 -0
- package/dist/modules/instance-ai/eval/execution.service.js +175 -26
- package/dist/modules/instance-ai/eval/execution.service.js.map +1 -1
- package/dist/modules/instance-ai/eval/llm-completion-mock.d.ts +7 -0
- package/dist/modules/instance-ai/eval/llm-completion-mock.js +188 -0
- package/dist/modules/instance-ai/eval/llm-completion-mock.js.map +1 -0
- package/dist/modules/instance-ai/eval/llm-wire-server.js +14 -1
- package/dist/modules/instance-ai/eval/llm-wire-server.js.map +1 -1
- package/dist/modules/instance-ai/eval/mock-handler.d.ts +9 -2
- package/dist/modules/instance-ai/eval/mock-handler.js +239 -41
- package/dist/modules/instance-ai/eval/mock-handler.js.map +1 -1
- package/dist/modules/instance-ai/eval/mock-quirks.d.ts +1 -0
- package/dist/modules/instance-ai/eval/mock-quirks.js +47 -2
- package/dist/modules/instance-ai/eval/mock-quirks.js.map +1 -1
- package/dist/modules/instance-ai/eval/pin-data-generator.d.ts +7 -0
- package/dist/modules/instance-ai/eval/pin-data-generator.js +190 -8
- package/dist/modules/instance-ai/eval/pin-data-generator.js.map +1 -1
- package/dist/modules/instance-ai/eval/workflow-analysis.d.ts +2 -0
- package/dist/modules/instance-ai/eval/workflow-analysis.js +25 -3
- package/dist/modules/instance-ai/eval/workflow-analysis.js.map +1 -1
- package/dist/modules/instance-ai/event-bus/in-process-event-bus.d.ts +15 -1
- package/dist/modules/instance-ai/event-bus/in-process-event-bus.js +51 -5
- package/dist/modules/instance-ai/event-bus/in-process-event-bus.js.map +1 -1
- package/dist/modules/instance-ai/instance-ai-error-reporter.service.d.ts +18 -0
- package/dist/modules/instance-ai/instance-ai-error-reporter.service.js +76 -0
- package/dist/modules/instance-ai/instance-ai-error-reporter.service.js.map +1 -0
- package/dist/modules/instance-ai/instance-ai.adapter.service.d.ts +4 -1
- package/dist/modules/instance-ai/instance-ai.adapter.service.js +71 -8
- package/dist/modules/instance-ai/instance-ai.adapter.service.js.map +1 -1
- package/dist/modules/instance-ai/instance-ai.controller.d.ts +5 -5
- package/dist/modules/instance-ai/instance-ai.controller.js +85 -55
- package/dist/modules/instance-ai/instance-ai.controller.js.map +1 -1
- package/dist/modules/instance-ai/instance-ai.service.d.ts +24 -6
- package/dist/modules/instance-ai/instance-ai.service.js +303 -106
- package/dist/modules/instance-ai/instance-ai.service.js.map +1 -1
- package/dist/modules/instance-ai/mcp/instance-ai-mcp-connection.controller.d.ts +2 -1
- package/dist/modules/instance-ai/mcp/instance-ai-mcp-connection.controller.js +12 -0
- package/dist/modules/instance-ai/mcp/instance-ai-mcp-connection.controller.js.map +1 -1
- package/dist/modules/instance-ai/mcp/instance-ai-mcp-registry.service.d.ts +3 -1
- package/dist/modules/instance-ai/mcp/instance-ai-mcp-registry.service.js +78 -11
- package/dist/modules/instance-ai/mcp/instance-ai-mcp-registry.service.js.map +1 -1
- package/dist/modules/instance-ai/message-parser.js +62 -15
- package/dist/modules/instance-ai/message-parser.js.map +1 -1
- package/dist/modules/instance-ai/node-definition-resolver.js +34 -4
- package/dist/modules/instance-ai/node-definition-resolver.js.map +1 -1
- package/dist/modules/instance-ai/observability.d.ts +2 -1
- package/dist/modules/instance-ai/observability.js +2 -1
- package/dist/modules/instance-ai/observability.js.map +1 -1
- package/dist/modules/instance-ai/repositories/instance-ai-pending-confirmation.repository.d.ts +1 -0
- package/dist/modules/instance-ai/repositories/instance-ai-pending-confirmation.repository.js +4 -0
- package/dist/modules/instance-ai/repositories/instance-ai-pending-confirmation.repository.js.map +1 -1
- package/dist/modules/instance-ai/storage/db-iteration-log-storage.js +2 -2
- package/dist/modules/instance-ai/storage/db-iteration-log-storage.js.map +1 -1
- package/dist/modules/instance-ai/storage/typeorm-agent-memory.js +4 -4
- package/dist/modules/instance-ai/storage/typeorm-agent-memory.js.map +1 -1
- package/dist/modules/instance-ai/suspended-run-restorer.service.d.ts +3 -2
- package/dist/modules/instance-ai/suspended-run-restorer.service.js +9 -8
- package/dist/modules/instance-ai/suspended-run-restorer.service.js.map +1 -1
- package/dist/modules/instance-registry/storage/redis-instance-storage.js +9 -8
- package/dist/modules/instance-registry/storage/redis-instance-storage.js.map +1 -1
- package/dist/modules/mcp/mcp-api-key.service.js +2 -2
- package/dist/modules/mcp/mcp-api-key.service.js.map +1 -1
- package/dist/modules/mcp/mcp-server-middleware.service.js +3 -3
- package/dist/modules/mcp/mcp-server-middleware.service.js.map +1 -1
- package/dist/modules/mcp/mcp.service.d.ts +2 -1
- package/dist/modules/mcp/mcp.service.js +3 -2
- package/dist/modules/mcp/mcp.service.js.map +1 -1
- package/dist/modules/mcp/mcp.typeguards.js +9 -9
- package/dist/modules/mcp/mcp.typeguards.js.map +1 -1
- package/dist/modules/mcp/mcp.utils.js +2 -2
- package/dist/modules/mcp/mcp.utils.js.map +1 -1
- package/dist/modules/mcp/tools/execute-workflow.tool.d.ts +8 -8
- package/dist/modules/mcp/tools/execute-workflow.tool.js +2 -1
- package/dist/modules/mcp/tools/execute-workflow.tool.js.map +1 -1
- package/dist/modules/mcp/tools/execution-utils.js +2 -1
- package/dist/modules/mcp/tools/execution-utils.js.map +1 -1
- package/dist/modules/mcp/tools/get-execution.tool.js +2 -1
- package/dist/modules/mcp/tools/get-execution.tool.js.map +1 -1
- package/dist/modules/mcp/tools/get-workflow-details.tool.d.ts +2 -2
- package/dist/modules/mcp/tools/get-workflow-details.tool.js +5 -5
- package/dist/modules/mcp/tools/get-workflow-details.tool.js.map +1 -1
- package/dist/modules/mcp/tools/get-workflow-history.tool.d.ts +4 -4
- package/dist/modules/mcp/tools/get-workflow-history.tool.js +2 -2
- package/dist/modules/mcp/tools/get-workflow-history.tool.js.map +1 -1
- package/dist/modules/mcp/tools/get-workflow-version.tool.js +2 -2
- package/dist/modules/mcp/tools/get-workflow-version.tool.js.map +1 -1
- package/dist/modules/mcp/tools/publish-workflow.tool.js +2 -1
- package/dist/modules/mcp/tools/publish-workflow.tool.js.map +1 -1
- package/dist/modules/mcp/tools/schemas.d.ts +52 -52
- package/dist/modules/mcp/tools/test-workflow.tool.js +2 -1
- package/dist/modules/mcp/tools/test-workflow.tool.js.map +1 -1
- package/dist/modules/mcp/tools/unpublish-workflow.tool.js +2 -1
- package/dist/modules/mcp/tools/unpublish-workflow.tool.js.map +1 -1
- package/dist/modules/mcp/tools/webhook-utils.d.ts +2 -3
- package/dist/modules/mcp/tools/webhook-utils.js +15 -21
- package/dist/modules/mcp/tools/webhook-utils.js.map +1 -1
- package/dist/modules/mcp/tools/workflow-builder/get-workflow-node-types.tool.d.ts +2 -2
- package/dist/modules/mcp/tools/workflow-builder/restore-workflow-version.tool.js +2 -2
- package/dist/modules/mcp/tools/workflow-builder/restore-workflow-version.tool.js.map +1 -1
- package/dist/modules/mcp/tools/workflow-builder/validate-node.tool.d.ts +2 -2
- package/dist/modules/mcp/tools/workflow-builder/workflow-operations.d.ts +85 -85
- package/dist/modules/mcp-registry/mcp-registry-node-loader.js +2 -1
- package/dist/modules/mcp-registry/mcp-registry-node-loader.js.map +1 -1
- package/dist/modules/n8n-packages/engine/import-pipeline.js +14 -1
- package/dist/modules/n8n-packages/engine/import-pipeline.js.map +1 -1
- package/dist/modules/n8n-packages/entities/folder/folder.exporter.d.ts +31 -0
- package/dist/modules/n8n-packages/entities/folder/folder.exporter.js +115 -0
- package/dist/modules/n8n-packages/entities/folder/folder.exporter.js.map +1 -0
- package/dist/modules/n8n-packages/entities/folder/folder.serializer.d.ts +5 -0
- package/dist/modules/n8n-packages/entities/folder/folder.serializer.js +25 -0
- package/dist/modules/n8n-packages/entities/folder/folder.serializer.js.map +1 -0
- package/dist/modules/n8n-packages/entities/project/project.exporter.d.ts +20 -0
- package/dist/modules/n8n-packages/entities/project/project.exporter.js +59 -0
- package/dist/modules/n8n-packages/entities/project/project.exporter.js.map +1 -0
- package/dist/modules/n8n-packages/entities/project/project.serializer.d.ts +5 -0
- package/dist/modules/n8n-packages/entities/project/project.serializer.js +26 -0
- package/dist/modules/n8n-packages/entities/project/project.serializer.js.map +1 -0
- package/dist/modules/n8n-packages/entities/requirements.types.d.ts +5 -0
- package/dist/modules/n8n-packages/entities/requirements.types.js +8 -0
- package/dist/modules/n8n-packages/entities/requirements.types.js.map +1 -0
- package/dist/modules/n8n-packages/entities/workflow/workflow-publisher.js +2 -2
- package/dist/modules/n8n-packages/entities/workflow/workflow-publisher.js.map +1 -1
- package/dist/modules/n8n-packages/entities/workflow/workflow.exporter.d.ts +3 -5
- package/dist/modules/n8n-packages/entities/workflow/workflow.exporter.js +2 -2
- package/dist/modules/n8n-packages/entities/workflow/workflow.exporter.js.map +1 -1
- package/dist/modules/n8n-packages/io/slug.utils.d.ts +1 -1
- package/dist/modules/n8n-packages/io/slug.utils.js +1 -2
- package/dist/modules/n8n-packages/io/slug.utils.js.map +1 -1
- package/dist/modules/n8n-packages/io/unique-filename-allocator.d.ts +3 -2
- package/dist/modules/n8n-packages/io/unique-filename-allocator.js +3 -0
- package/dist/modules/n8n-packages/io/unique-filename-allocator.js.map +1 -1
- package/dist/modules/n8n-packages/n8n-packages.module.js +1 -1
- package/dist/modules/n8n-packages/n8n-packages.module.js.map +1 -1
- package/dist/modules/n8n-packages/n8n-packages.service.d.ts +11 -3
- package/dist/modules/n8n-packages/n8n-packages.service.js +77 -16
- package/dist/modules/n8n-packages/n8n-packages.service.js.map +1 -1
- package/dist/modules/n8n-packages/n8n-packages.types.d.ts +21 -2
- package/dist/modules/n8n-packages/n8n-packages.types.js.map +1 -1
- package/dist/modules/n8n-packages/spec/manifest.schema.d.ts +88 -22
- package/dist/modules/n8n-packages/spec/manifest.schema.js +20 -12
- package/dist/modules/n8n-packages/spec/manifest.schema.js.map +1 -1
- package/dist/modules/n8n-packages/spec/requirements.schema.d.ts +8 -8
- package/dist/modules/n8n-packages/spec/serialized/credential.schema.d.ts +2 -2
- package/dist/modules/n8n-packages/spec/serialized/folder.schema.d.ts +15 -0
- package/dist/modules/n8n-packages/spec/serialized/folder.schema.js +12 -0
- package/dist/modules/n8n-packages/spec/serialized/folder.schema.js.map +1 -0
- package/dist/modules/n8n-packages/spec/serialized/project.schema.d.ts +33 -0
- package/dist/modules/n8n-packages/spec/serialized/project.schema.js +15 -0
- package/dist/modules/n8n-packages/spec/serialized/project.schema.js.map +1 -0
- package/dist/modules/n8n-packages/spec/serialized/workflow.schema.d.ts +32 -32
- package/dist/modules/oauth-jwe/oauth-jwe-key.service.js +2 -2
- package/dist/modules/oauth-jwe/oauth-jwe-key.service.js.map +1 -1
- package/dist/modules/oauth-server/oauth-token.service.js +2 -1
- package/dist/modules/oauth-server/oauth-token.service.js.map +1 -1
- package/dist/modules/oauth-server/protected-resource-resolvers/workflow-mcp-test-trigger-resource.resolver.js +2 -2
- package/dist/modules/oauth-server/protected-resource-resolvers/workflow-mcp-test-trigger-resource.resolver.js.map +1 -1
- package/dist/modules/otel/execution-level-tracer.js +32 -8
- package/dist/modules/otel/execution-level-tracer.js.map +1 -1
- package/dist/modules/otel/execution-level-tracer.types.d.ts +2 -0
- package/dist/modules/otel/execution-level-tracer.types.js.map +1 -1
- package/dist/modules/provisioning.ee/provisioning.service.ee.d.ts +1 -0
- package/dist/modules/provisioning.ee/provisioning.service.ee.js +38 -15
- package/dist/modules/provisioning.ee/provisioning.service.ee.js.map +1 -1
- package/dist/modules/quick-connect/quick-connect.config.d.ts +19 -19
- package/dist/modules/quick-connect/quick-connect.module.d.ts +8 -8
- package/dist/modules/source-control.ee/source-control-export.service.ee.js +3 -1
- package/dist/modules/source-control.ee/source-control-export.service.ee.js.map +1 -1
- package/dist/modules/source-control.ee/source-control-helper.ee.js +2 -0
- package/dist/modules/source-control.ee/source-control-helper.ee.js.map +1 -1
- package/dist/modules/source-control.ee/source-control-import.service.ee.js +15 -10
- package/dist/modules/source-control.ee/source-control-import.service.ee.js.map +1 -1
- package/dist/modules/source-control.ee/source-control.controller.ee.d.ts +6 -6
- package/dist/modules/source-control.ee/source-control.controller.ee.js +3 -3
- package/dist/modules/source-control.ee/source-control.controller.ee.js.map +1 -1
- package/dist/modules/source-control.ee/source-control.service.ee.d.ts +2 -2
- package/dist/modules/source-control.ee/source-control.service.ee.js +2 -2
- package/dist/modules/source-control.ee/source-control.service.ee.js.map +1 -1
- package/dist/modules/source-control.ee/types/exportable-credential.d.ts +2 -0
- package/dist/modules/sso-saml/saml.controller.ee.d.ts +2 -2
- package/dist/modules/token-exchange/token-exchange.schemas.d.ts +8 -8
- package/dist/modules/workflow-index/workflow-index.service.js +3 -2
- package/dist/modules/workflow-index/workflow-index.service.js.map +1 -1
- package/dist/oauth/oauth.service.d.ts +5 -0
- package/dist/oauth/oauth.service.js +45 -15
- package/dist/oauth/oauth.service.js.map +1 -1
- package/dist/public-api/types.d.ts +28 -1
- package/dist/public-api/v1/handlers/data-tables/data-tables.rows.handler.d.ts +1 -0
- package/dist/public-api/v1/handlers/data-tables/data-tables.rows.handler.js +15 -0
- package/dist/public-api/v1/handlers/data-tables/data-tables.rows.handler.js.map +1 -1
- package/dist/public-api/v1/handlers/discover/discover.service.js +11 -11
- package/dist/public-api/v1/handlers/discover/discover.service.js.map +1 -1
- package/dist/public-api/v1/handlers/evaluations/evaluations.handler.d.ts +9 -0
- package/dist/public-api/v1/handlers/evaluations/evaluations.handler.js +64 -0
- package/dist/public-api/v1/handlers/evaluations/evaluations.handler.js.map +1 -0
- package/dist/public-api/v1/handlers/evaluations/evaluations.mapper.d.ts +9 -0
- package/dist/public-api/v1/handlers/evaluations/evaluations.mapper.js +34 -0
- package/dist/public-api/v1/handlers/evaluations/evaluations.mapper.js.map +1 -0
- package/dist/public-api/v1/handlers/executions/executions.handler.js +1 -0
- package/dist/public-api/v1/handlers/executions/executions.handler.js.map +1 -1
- package/dist/public-api/v1/handlers/n8n-packages/n8n-packages.handler.d.ts +5 -3
- package/dist/public-api/v1/handlers/n8n-packages/n8n-packages.handler.js +53 -26
- package/dist/public-api/v1/handlers/n8n-packages/n8n-packages.handler.js.map +1 -1
- package/dist/public-api/v1/handlers/projects/projects.handler.js +10 -0
- package/dist/public-api/v1/handlers/projects/projects.handler.js.map +1 -1
- package/dist/public-api/v1/openapi.yml +300 -18
- package/dist/public-api/v1/shared/middlewares/global.middleware.d.ts +1 -0
- package/dist/public-api/v1/shared/middlewares/global.middleware.js +6 -0
- package/dist/public-api/v1/shared/middlewares/global.middleware.js.map +1 -1
- package/dist/push/index.js +3 -3
- package/dist/push/index.js.map +1 -1
- package/dist/requests.d.ts +1 -0
- package/dist/response-helper.js +2 -1
- package/dist/response-helper.js.map +1 -1
- package/dist/scaling/constants.d.ts +3 -2
- package/dist/scaling/constants.js +4 -1
- package/dist/scaling/constants.js.map +1 -1
- package/dist/scaling/job-processor.js +1 -0
- package/dist/scaling/job-processor.js.map +1 -1
- package/dist/scaling/leader-election-client.d.ts +1 -1
- package/dist/scaling/leader-election-client.js +13 -12
- package/dist/scaling/leader-election-client.js.map +1 -1
- package/dist/scaling/pubsub/pubsub.event-map.d.ts +11 -1
- package/dist/scaling/pubsub/pubsub.types.d.ts +3 -1
- package/dist/scaling/redis-lock.service.js +5 -5
- package/dist/scaling/redis-lock.service.js.map +1 -1
- package/dist/scaling/scaling.service.js +3 -2
- package/dist/scaling/scaling.service.js.map +1 -1
- package/dist/scaling/scaling.types.d.ts +1 -0
- package/dist/services/folder-finder.service.d.ts +12 -0
- package/dist/services/folder-finder.service.js +58 -0
- package/dist/services/folder-finder.service.js.map +1 -0
- package/dist/services/frontend.service.js +3 -0
- package/dist/services/frontend.service.js.map +1 -1
- package/dist/services/import.service.js +2 -2
- package/dist/services/import.service.js.map +1 -1
- package/dist/services/project.service.ee.d.ts +1 -0
- package/dist/services/project.service.ee.js +21 -1
- package/dist/services/project.service.ee.js.map +1 -1
- package/dist/services/protected-resource.registry.js +2 -2
- package/dist/services/protected-resource.registry.js.map +1 -1
- package/dist/services/proxy-token-manager.js +2 -2
- package/dist/services/proxy-token-manager.js.map +1 -1
- package/dist/services/pruning/executions-pruning.service.js +3 -3
- package/dist/services/pruning/executions-pruning.service.js.map +1 -1
- package/dist/services/pruning/workflow-history-compaction.service.js +2 -1
- package/dist/services/pruning/workflow-history-compaction.service.js.map +1 -1
- package/dist/services/redis-client.service.js +5 -2
- package/dist/services/redis-client.service.js.map +1 -1
- package/dist/services/role.service.d.ts +3 -3
- package/dist/services/role.service.js +9 -3
- package/dist/services/role.service.js.map +1 -1
- package/dist/services/url.service.d.ts +1 -0
- package/dist/services/url.service.js +10 -5
- package/dist/services/url.service.js.map +1 -1
- package/dist/services/workflow-statistics-rollup.service.d.ts +31 -0
- package/dist/services/workflow-statistics-rollup.service.js +160 -0
- package/dist/services/workflow-statistics-rollup.service.js.map +1 -0
- package/dist/services/workflow-statistics.service.d.ts +5 -2
- package/dist/services/workflow-statistics.service.js +37 -15
- package/dist/services/workflow-statistics.service.js.map +1 -1
- package/dist/task-runners/task-managers/task-requester.d.ts +2 -1
- package/dist/task-runners/task-managers/task-requester.js +3 -3
- package/dist/task-runners/task-managers/task-requester.js.map +1 -1
- package/dist/wait-tracker.js +2 -1
- package/dist/wait-tracker.js.map +1 -1
- package/dist/webhooks/webhook-helpers.d.ts +2 -1
- package/dist/webhooks/webhook-helpers.js +5 -4
- package/dist/webhooks/webhook-helpers.js.map +1 -1
- package/dist/webhooks/webhook-last-node-response-extractor.d.ts +2 -1
- package/dist/webhooks/webhook-last-node-response-extractor.js +12 -11
- package/dist/webhooks/webhook-last-node-response-extractor.js.map +1 -1
- package/dist/webhooks/webhook-request-handler.js +2 -2
- package/dist/webhooks/webhook-request-handler.js.map +1 -1
- package/dist/webhooks/webhook-response-headers.js +2 -2
- package/dist/webhooks/webhook-response-headers.js.map +1 -1
- package/dist/webhooks/webhook.service.js +6 -5
- package/dist/webhooks/webhook.service.js.map +1 -1
- package/dist/workflow-execute-additional-data.js +6 -13
- package/dist/workflow-execute-additional-data.js.map +1 -1
- package/dist/workflow-runner.d.ts +2 -1
- package/dist/workflow-runner.js +1 -0
- package/dist/workflow-runner.js.map +1 -1
- package/dist/workflows/publication/workflow-publication-applier.js +2 -2
- package/dist/workflows/publication/workflow-publication-applier.js.map +1 -1
- package/dist/workflows/publication/workflow-publication-notifier.d.ts +12 -0
- package/dist/workflows/publication/workflow-publication-notifier.js +78 -0
- package/dist/workflows/publication/workflow-publication-notifier.js.map +1 -0
- package/dist/workflows/publication/workflow-publication-outbox-cleanup.service.d.ts +3 -1
- package/dist/workflows/publication/workflow-publication-outbox-cleanup.service.js +13 -2
- package/dist/workflows/publication/workflow-publication-outbox-cleanup.service.js.map +1 -1
- package/dist/workflows/publication/workflow-publication-outbox-consumer.d.ts +4 -1
- package/dist/workflows/publication/workflow-publication-outbox-consumer.js +61 -11
- package/dist/workflows/publication/workflow-publication-outbox-consumer.js.map +1 -1
- package/dist/workflows/publication/workflow-publication-status.service.d.ts +9 -0
- package/dist/workflows/publication/workflow-publication-status.service.js +54 -0
- package/dist/workflows/publication/workflow-publication-status.service.js.map +1 -0
- package/dist/workflows/triggers/non-webhook-trigger-registrar.d.ts +1 -1
- package/dist/workflows/triggers/trigger-activation-retry.js +2 -1
- package/dist/workflows/triggers/trigger-activation-retry.js.map +1 -1
- package/dist/workflows/triggers/trigger-execution-context.factory.d.ts +2 -2
- package/dist/workflows/triggers/trigger-execution-context.factory.js +1 -1
- package/dist/workflows/triggers/trigger-execution-context.factory.js.map +1 -1
- package/dist/workflows/triggers/webhook-trigger-registrar.js +2 -1
- package/dist/workflows/triggers/webhook-trigger-registrar.js.map +1 -1
- package/dist/workflows/triggers/workflow-trigger-activator.d.ts +7 -1
- package/dist/workflows/triggers/workflow-trigger-activator.js +64 -10
- package/dist/workflows/triggers/workflow-trigger-activator.js.map +1 -1
- package/dist/workflows/workflow-execution.service.d.ts +2 -1
- package/dist/workflows/workflow-execution.service.js.map +1 -1
- package/dist/workflows/workflow-finder.service.d.ts +1 -0
- package/dist/workflows/workflow-finder.service.js +21 -0
- package/dist/workflows/workflow-finder.service.js.map +1 -1
- package/dist/workflows/workflow-history/workflow-history.service.js +2 -1
- package/dist/workflows/workflow-history/workflow-history.service.js.map +1 -1
- package/dist/workflows/workflow-published-data.service.js +2 -2
- package/dist/workflows/workflow-published-data.service.js.map +1 -1
- package/dist/workflows/workflow-validation.service.js +3 -2
- package/dist/workflows/workflow-validation.service.js.map +1 -1
- package/dist/workflows/workflow.service.d.ts +8 -6
- package/dist/workflows/workflow.service.js +9 -3
- package/dist/workflows/workflow.service.js.map +1 -1
- package/dist/workflows/workflows.controller.d.ts +31 -28
- package/dist/workflows/workflows.controller.js +28 -4
- package/dist/workflows/workflows.controller.js.map +1 -1
- package/package.json +39 -35
- package/dist/modules/agents/builder/builder-model-lookup.service.d.ts +0 -17
- package/dist/modules/agents/builder/builder-model-lookup.service.js +0 -67
- package/dist/modules/agents/builder/builder-model-lookup.service.js.map +0 -1
- package/dist/modules/n8n-packages/n8n-packages.controller.d.ts +0 -10
- package/dist/modules/n8n-packages/n8n-packages.controller.js +0 -44
- package/dist/modules/n8n-packages/n8n-packages.controller.js.map +0 -1
|
@@ -10,33 +10,71 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.InProcessEventBus = void 0;
|
|
13
|
+
const backend_common_1 = require("@n8n/backend-common");
|
|
14
|
+
const decorators_1 = require("@n8n/decorators");
|
|
13
15
|
const di_1 = require("@n8n/di");
|
|
14
16
|
const node_events_1 = require("node:events");
|
|
17
|
+
const n8n_core_1 = require("n8n-core");
|
|
18
|
+
const constants_1 = require("../../../scaling/constants");
|
|
19
|
+
const publisher_service_1 = require("../../../scaling/pubsub/publisher.service");
|
|
15
20
|
const MAX_EVENTS_PER_THREAD = 500;
|
|
16
21
|
const MAX_BYTES_PER_THREAD = 2 * 1024 * 1024;
|
|
17
22
|
let InProcessEventBus = class InProcessEventBus {
|
|
18
|
-
constructor() {
|
|
23
|
+
constructor(logger, instanceSettings, publisher) {
|
|
24
|
+
this.logger = logger;
|
|
25
|
+
this.instanceSettings = instanceSettings;
|
|
26
|
+
this.publisher = publisher;
|
|
19
27
|
this.emitter = new node_events_1.EventEmitter();
|
|
20
28
|
this.store = new Map();
|
|
21
29
|
this.sizeBytes = new Map();
|
|
22
30
|
this.nextId = new Map();
|
|
31
|
+
this.logger = this.logger.scoped('instance-ai');
|
|
23
32
|
this.emitter.setMaxListeners(0);
|
|
24
33
|
}
|
|
25
34
|
publish(threadId, event) {
|
|
35
|
+
const sizeBytes = Buffer.byteLength(JSON.stringify(event), 'utf8');
|
|
36
|
+
this.storeAndEmit(threadId, event, sizeBytes);
|
|
37
|
+
this.relayToSiblings(threadId, event, sizeBytes);
|
|
38
|
+
}
|
|
39
|
+
publishLocalOnly(threadId, event) {
|
|
40
|
+
this.storeAndEmit(threadId, event, Buffer.byteLength(JSON.stringify(event), 'utf8'));
|
|
41
|
+
}
|
|
42
|
+
storeAndEmit(threadId, event, eventSizeBytes) {
|
|
26
43
|
const events = this.getOrCreateStore(threadId);
|
|
27
44
|
const id = (this.nextId.get(threadId) ?? 0) + 1;
|
|
28
45
|
this.nextId.set(threadId, id);
|
|
29
46
|
const stored = { id, event };
|
|
30
|
-
const eventSize = JSON.stringify(event).length;
|
|
31
47
|
events.push(stored);
|
|
32
|
-
this.sizeBytes.set(threadId, (this.sizeBytes.get(threadId) ?? 0) +
|
|
48
|
+
this.sizeBytes.set(threadId, (this.sizeBytes.get(threadId) ?? 0) + eventSizeBytes);
|
|
33
49
|
this.evictIfNeeded(threadId, events);
|
|
34
50
|
this.emitter.emit(threadId, stored);
|
|
35
51
|
}
|
|
52
|
+
relayToSiblings(threadId, event, sizeBytes) {
|
|
53
|
+
if (!this.instanceSettings.isMultiMain)
|
|
54
|
+
return;
|
|
55
|
+
if (sizeBytes > constants_1.MAX_PUBSUB_PAYLOAD_BYTES) {
|
|
56
|
+
this.logger.warn(`Skipping cross-main relay of "${event.type}" event (${sizeBytes} bytes exceeds ${constants_1.MAX_PUBSUB_PAYLOAD_BYTES})`, { threadId, runId: event.runId });
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
void this.publisher
|
|
60
|
+
.publishCommand({ command: 'relay-instance-ai-event', payload: { threadId, event } })
|
|
61
|
+
.catch((error) => this.logger.error('Failed to relay Instance AI event to sibling mains', {
|
|
62
|
+
threadId,
|
|
63
|
+
error,
|
|
64
|
+
}));
|
|
65
|
+
}
|
|
66
|
+
handleRelayInstanceAiEvent({ threadId, event, }) {
|
|
67
|
+
if (!this.hasSubscribers(threadId))
|
|
68
|
+
return;
|
|
69
|
+
this.publishLocalOnly(threadId, event);
|
|
70
|
+
}
|
|
36
71
|
subscribe(threadId, handler) {
|
|
37
72
|
this.emitter.on(threadId, handler);
|
|
38
73
|
return () => this.emitter.off(threadId, handler);
|
|
39
74
|
}
|
|
75
|
+
hasSubscribers(threadId) {
|
|
76
|
+
return this.emitter.listenerCount(threadId) > 0;
|
|
77
|
+
}
|
|
40
78
|
getEventsAfter(threadId, afterId) {
|
|
41
79
|
const events = this.store.get(threadId);
|
|
42
80
|
if (!events)
|
|
@@ -77,7 +115,7 @@ let InProcessEventBus = class InProcessEventBus {
|
|
|
77
115
|
const evicted = events.shift();
|
|
78
116
|
if (!evicted)
|
|
79
117
|
break;
|
|
80
|
-
totalSize -= JSON.stringify(evicted.event)
|
|
118
|
+
totalSize -= Buffer.byteLength(JSON.stringify(evicted.event), 'utf8');
|
|
81
119
|
}
|
|
82
120
|
this.sizeBytes.set(threadId, Math.max(0, totalSize));
|
|
83
121
|
}
|
|
@@ -91,8 +129,16 @@ let InProcessEventBus = class InProcessEventBus {
|
|
|
91
129
|
}
|
|
92
130
|
};
|
|
93
131
|
exports.InProcessEventBus = InProcessEventBus;
|
|
132
|
+
__decorate([
|
|
133
|
+
(0, decorators_1.OnPubSubEvent)('relay-instance-ai-event', { instanceType: 'main' }),
|
|
134
|
+
__metadata("design:type", Function),
|
|
135
|
+
__metadata("design:paramtypes", [Object]),
|
|
136
|
+
__metadata("design:returntype", void 0)
|
|
137
|
+
], InProcessEventBus.prototype, "handleRelayInstanceAiEvent", null);
|
|
94
138
|
exports.InProcessEventBus = InProcessEventBus = __decorate([
|
|
95
139
|
(0, di_1.Service)(),
|
|
96
|
-
__metadata("design:paramtypes", [
|
|
140
|
+
__metadata("design:paramtypes", [backend_common_1.Logger,
|
|
141
|
+
n8n_core_1.InstanceSettings,
|
|
142
|
+
publisher_service_1.Publisher])
|
|
97
143
|
], InProcessEventBus);
|
|
98
144
|
//# sourceMappingURL=in-process-event-bus.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"in-process-event-bus.js","sourceRoot":"","sources":["../../../../src/modules/instance-ai/event-bus/in-process-event-bus.ts"],"names":[],"mappings":";;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"in-process-event-bus.js","sourceRoot":"","sources":["../../../../src/modules/instance-ai/event-bus/in-process-event-bus.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Logger } from '@n8n/backend-common';
|
|
2
|
+
import { ErrorReporter } from 'n8n-core';
|
|
3
|
+
import { type InstanceAiObservabilityContext } from './observability';
|
|
4
|
+
export type InstanceAiErrorReportContext = {
|
|
5
|
+
component: string;
|
|
6
|
+
} & InstanceAiObservabilityContext;
|
|
7
|
+
export declare class InstanceAiErrorReporterService {
|
|
8
|
+
private readonly errorReporter;
|
|
9
|
+
private readonly logger;
|
|
10
|
+
private readonly reportedErrorsByRun;
|
|
11
|
+
constructor(logger: Logger, errorReporter: ErrorReporter);
|
|
12
|
+
beginRun(runId: string): void;
|
|
13
|
+
endRun(runId: string): void;
|
|
14
|
+
endAllRuns(): void;
|
|
15
|
+
report(error: unknown, context: InstanceAiErrorReportContext): void;
|
|
16
|
+
withBoundary<T>(component: string, context: InstanceAiObservabilityContext, fn: () => Promise<T>): Promise<T>;
|
|
17
|
+
private shouldSkipDuplicateReport;
|
|
18
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.InstanceAiErrorReporterService = void 0;
|
|
13
|
+
const backend_common_1 = require("@n8n/backend-common");
|
|
14
|
+
const di_1 = require("@n8n/di");
|
|
15
|
+
const n8n_core_1 = require("n8n-core");
|
|
16
|
+
const observability_1 = require("./observability");
|
|
17
|
+
let InstanceAiErrorReporterService = class InstanceAiErrorReporterService {
|
|
18
|
+
constructor(logger, errorReporter) {
|
|
19
|
+
this.errorReporter = errorReporter;
|
|
20
|
+
this.reportedErrorsByRun = new Map();
|
|
21
|
+
this.logger = logger.scoped('instance-ai');
|
|
22
|
+
}
|
|
23
|
+
beginRun(runId) {
|
|
24
|
+
this.reportedErrorsByRun.set(runId, new WeakSet());
|
|
25
|
+
}
|
|
26
|
+
endRun(runId) {
|
|
27
|
+
this.reportedErrorsByRun.delete(runId);
|
|
28
|
+
}
|
|
29
|
+
endAllRuns() {
|
|
30
|
+
this.reportedErrorsByRun.clear();
|
|
31
|
+
}
|
|
32
|
+
report(error, context) {
|
|
33
|
+
if (this.shouldSkipDuplicateReport(error, context.runId))
|
|
34
|
+
return;
|
|
35
|
+
const observability = (0, observability_1.buildInstanceAiObservabilityContext)(context);
|
|
36
|
+
this.logger.error(`Instance AI error in ${context.component}`, {
|
|
37
|
+
error,
|
|
38
|
+
component: context.component,
|
|
39
|
+
...observability,
|
|
40
|
+
});
|
|
41
|
+
this.errorReporter.error(error, {
|
|
42
|
+
tags: { component: context.component, ...observability },
|
|
43
|
+
extra: observability,
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
async withBoundary(component, context, fn) {
|
|
47
|
+
try {
|
|
48
|
+
return await fn();
|
|
49
|
+
}
|
|
50
|
+
catch (error) {
|
|
51
|
+
this.report(error, { component, ...context });
|
|
52
|
+
throw error;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
shouldSkipDuplicateReport(error, runId) {
|
|
56
|
+
if (typeof error !== 'object' || error === null || !runId) {
|
|
57
|
+
return false;
|
|
58
|
+
}
|
|
59
|
+
const reportedErrors = this.reportedErrorsByRun.get(runId);
|
|
60
|
+
if (!reportedErrors) {
|
|
61
|
+
return false;
|
|
62
|
+
}
|
|
63
|
+
if (reportedErrors.has(error)) {
|
|
64
|
+
return true;
|
|
65
|
+
}
|
|
66
|
+
reportedErrors.add(error);
|
|
67
|
+
return false;
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
exports.InstanceAiErrorReporterService = InstanceAiErrorReporterService;
|
|
71
|
+
exports.InstanceAiErrorReporterService = InstanceAiErrorReporterService = __decorate([
|
|
72
|
+
(0, di_1.Service)(),
|
|
73
|
+
__metadata("design:paramtypes", [backend_common_1.Logger,
|
|
74
|
+
n8n_core_1.ErrorReporter])
|
|
75
|
+
], InstanceAiErrorReporterService);
|
|
76
|
+
//# sourceMappingURL=instance-ai-error-reporter.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instance-ai-error-reporter.service.js","sourceRoot":"","sources":["../../../src/modules/instance-ai/instance-ai-error-reporter.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wDAA6C;AAC7C,gCAAkC;AAClC,uCAAyC;AAEzC,mDAGyB;AAKlB,IAAM,8BAA8B,GAApC,MAAM,8BAA8B;IAK1C,YACC,MAAc,EACG,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;QAJ7B,wBAAmB,GAAG,IAAI,GAAG,EAA2B,CAAC;QAMzE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC5C,CAAC;IAED,QAAQ,CAAC,KAAa;QACrB,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,OAAO,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,CAAC,KAAa;QACnB,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED,UAAU;QACT,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;IAClC,CAAC;IAED,MAAM,CAAC,KAAc,EAAE,OAAqC;QAC3D,IAAI,IAAI,CAAC,yBAAyB,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO;QAEjE,MAAM,aAAa,GAAG,IAAA,mDAAmC,EAAC,OAAO,CAAC,CAAC;QAEnE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,OAAO,CAAC,SAAS,EAAE,EAAE;YAC9D,KAAK;YACL,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,GAAG,aAAa;SAChB,CAAC,CAAC;QAEH,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,EAAE;YAC/B,IAAI,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,GAAG,aAAa,EAAE;YACxD,KAAK,EAAE,aAAa;SACpB,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CACjB,SAAiB,EACjB,OAAuC,EACvC,EAAoB;QAEpB,IAAI,CAAC;YACJ,OAAO,MAAM,EAAE,EAAE,CAAC;QACnB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;YAE9C,MAAM,KAAK,CAAC;QACb,CAAC;IACF,CAAC;IAEO,yBAAyB,CAAC,KAAc,EAAE,KAAc;QAC/D,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC3D,OAAO,KAAK,CAAC;QACd,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC3D,IAAI,CAAC,cAAc,EAAE,CAAC;YACrB,OAAO,KAAK,CAAC;QACd,CAAC;QAED,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC;QACb,CAAC;QAED,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC1B,OAAO,KAAK,CAAC;IACd,CAAC;CACD,CAAA;AAxEY,wEAA8B;yCAA9B,8BAA8B;IAD1C,IAAA,YAAO,GAAE;qCAOA,uBAAM;QACkB,wBAAa;GAPlC,8BAA8B,CAwE1C"}
|
|
@@ -18,6 +18,7 @@ import { NodeCatalogService } from '../../node-catalog';
|
|
|
18
18
|
import { DataTableRepository } from '../../modules/data-table/data-table.repository';
|
|
19
19
|
import { DataTableService } from '../../modules/data-table/data-table.service';
|
|
20
20
|
import { SourceControlPreferencesService } from '../../modules/source-control.ee/source-control-preferences.service.ee';
|
|
21
|
+
import { AiGatewayService } from '../../services/ai-gateway.service';
|
|
21
22
|
import { FolderService } from '../../services/folder.service';
|
|
22
23
|
import { NodeResourceExplorerService } from '../../services/node-resource-explorer.service';
|
|
23
24
|
import { ProjectService } from '../../services/project.service.ee';
|
|
@@ -31,6 +32,7 @@ import { EnterpriseWorkflowService } from '../../workflows/workflow.service.ee';
|
|
|
31
32
|
import { Telemetry } from '../../telemetry';
|
|
32
33
|
import { WorkflowRunner } from '../../workflow-runner';
|
|
33
34
|
export declare class InstanceAiAdapterService {
|
|
35
|
+
private readonly globalConfig;
|
|
34
36
|
private readonly workflowService;
|
|
35
37
|
private readonly workflowFinderService;
|
|
36
38
|
private readonly workflowRepository;
|
|
@@ -62,6 +64,7 @@ export declare class InstanceAiAdapterService {
|
|
|
62
64
|
private readonly aiBuilderTemporaryWorkflowRepository;
|
|
63
65
|
private readonly ssrfProtectionService;
|
|
64
66
|
private readonly outboundHttp;
|
|
67
|
+
private readonly aiGatewayService;
|
|
65
68
|
private readonly nodeCatalogService?;
|
|
66
69
|
private readonly logger;
|
|
67
70
|
private readonly allowSendingParameterValues;
|
|
@@ -69,7 +72,7 @@ export declare class InstanceAiAdapterService {
|
|
|
69
72
|
private readonly NODES_CACHE_TTL_MS;
|
|
70
73
|
private templatesService;
|
|
71
74
|
private getNodesFromCache;
|
|
72
|
-
constructor(logger: Logger, globalConfig: GlobalConfig, workflowService: WorkflowService, workflowFinderService: WorkflowFinderService, workflowRepository: WorkflowRepository, sharedWorkflowRepository: SharedWorkflowRepository, projectRepository: ProjectRepository, executionRepository: ExecutionRepository, credentialsService: CredentialsService, credentialsFinderService: CredentialsFinderService, activeExecutions: ActiveExecutions, workflowRunner: WorkflowRunner, loadNodesAndCredentials: LoadNodesAndCredentials, nodeTypes: NodeTypes, instanceSettings: InstanceSettings, dataTableService: DataTableService, dataTableRepository: DataTableRepository, nodeResourceExplorerService: NodeResourceExplorerService, folderService: FolderService, projectService: ProjectService, tagService: TagService, sourceControlPreferencesService: SourceControlPreferencesService, settingsService: InstanceAiSettingsService, workflowHistoryService: WorkflowHistoryService, enterpriseWorkflowService: EnterpriseWorkflowService, license: License, executionPersistence: ExecutionPersistence, eventService: EventService, roleService: RoleService, telemetry: Telemetry, aiBuilderTemporaryWorkflowRepository: AiBuilderTemporaryWorkflowRepository, ssrfProtectionService: SsrfProtectionService, outboundHttp: OutboundHttp, nodeCatalogService?: NodeCatalogService | undefined);
|
|
75
|
+
constructor(logger: Logger, globalConfig: GlobalConfig, workflowService: WorkflowService, workflowFinderService: WorkflowFinderService, workflowRepository: WorkflowRepository, sharedWorkflowRepository: SharedWorkflowRepository, projectRepository: ProjectRepository, executionRepository: ExecutionRepository, credentialsService: CredentialsService, credentialsFinderService: CredentialsFinderService, activeExecutions: ActiveExecutions, workflowRunner: WorkflowRunner, loadNodesAndCredentials: LoadNodesAndCredentials, nodeTypes: NodeTypes, instanceSettings: InstanceSettings, dataTableService: DataTableService, dataTableRepository: DataTableRepository, nodeResourceExplorerService: NodeResourceExplorerService, folderService: FolderService, projectService: ProjectService, tagService: TagService, sourceControlPreferencesService: SourceControlPreferencesService, settingsService: InstanceAiSettingsService, workflowHistoryService: WorkflowHistoryService, enterpriseWorkflowService: EnterpriseWorkflowService, license: License, executionPersistence: ExecutionPersistence, eventService: EventService, roleService: RoleService, telemetry: Telemetry, aiBuilderTemporaryWorkflowRepository: AiBuilderTemporaryWorkflowRepository, ssrfProtectionService: SsrfProtectionService, outboundHttp: OutboundHttp, aiGatewayService: AiGatewayService, nodeCatalogService?: NodeCatalogService | undefined);
|
|
73
76
|
createContext(user: User, options?: {
|
|
74
77
|
searchProxyConfig?: ServiceProxyConfig;
|
|
75
78
|
pushRef?: string;
|
|
@@ -86,6 +86,7 @@ const data_table_service_1 = require("../../modules/data-table/data-table.servic
|
|
|
86
86
|
const node_description_transform_1 = require("../../modules/mcp-registry/node-description-transform");
|
|
87
87
|
const source_control_preferences_service_ee_1 = require("../../modules/source-control.ee/source-control-preferences.service.ee");
|
|
88
88
|
const check_access_1 = require("../../permissions.ee/check-access");
|
|
89
|
+
const ai_gateway_service_1 = require("../../services/ai-gateway.service");
|
|
89
90
|
const folder_service_1 = require("../../services/folder.service");
|
|
90
91
|
const node_resource_explorer_service_1 = require("../../services/node-resource-explorer.service");
|
|
91
92
|
const project_service_ee_1 = require("../../services/project.service.ee");
|
|
@@ -111,6 +112,7 @@ function resolveDisplayedDefaults(nodeProperties, parameters, nodeType, typeVers
|
|
|
111
112
|
const resolved = n8n_workflow_1.NodeHelpers.getNodeParameters(nodeProperties, parameters, true, false, stubNode, desc);
|
|
112
113
|
return resolved ?? parameters;
|
|
113
114
|
}
|
|
115
|
+
let httpCredentialHostsCache;
|
|
114
116
|
let InstanceAiAdapterService = class InstanceAiAdapterService {
|
|
115
117
|
async getNodesFromCache() {
|
|
116
118
|
if (this.nodesCache && Date.now() < this.nodesCache.expiresAt) {
|
|
@@ -124,7 +126,8 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
|
|
|
124
126
|
});
|
|
125
127
|
return await promise;
|
|
126
128
|
}
|
|
127
|
-
constructor(logger, globalConfig, workflowService, workflowFinderService, workflowRepository, sharedWorkflowRepository, projectRepository, executionRepository, credentialsService, credentialsFinderService, activeExecutions, workflowRunner, loadNodesAndCredentials, nodeTypes, instanceSettings, dataTableService, dataTableRepository, nodeResourceExplorerService, folderService, projectService, tagService, sourceControlPreferencesService, settingsService, workflowHistoryService, enterpriseWorkflowService, license, executionPersistence, eventService, roleService, telemetry, aiBuilderTemporaryWorkflowRepository, ssrfProtectionService, outboundHttp, nodeCatalogService) {
|
|
129
|
+
constructor(logger, globalConfig, workflowService, workflowFinderService, workflowRepository, sharedWorkflowRepository, projectRepository, executionRepository, credentialsService, credentialsFinderService, activeExecutions, workflowRunner, loadNodesAndCredentials, nodeTypes, instanceSettings, dataTableService, dataTableRepository, nodeResourceExplorerService, folderService, projectService, tagService, sourceControlPreferencesService, settingsService, workflowHistoryService, enterpriseWorkflowService, license, executionPersistence, eventService, roleService, telemetry, aiBuilderTemporaryWorkflowRepository, ssrfProtectionService, outboundHttp, aiGatewayService, nodeCatalogService) {
|
|
130
|
+
this.globalConfig = globalConfig;
|
|
128
131
|
this.workflowService = workflowService;
|
|
129
132
|
this.workflowFinderService = workflowFinderService;
|
|
130
133
|
this.workflowRepository = workflowRepository;
|
|
@@ -156,6 +159,7 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
|
|
|
156
159
|
this.aiBuilderTemporaryWorkflowRepository = aiBuilderTemporaryWorkflowRepository;
|
|
157
160
|
this.ssrfProtectionService = ssrfProtectionService;
|
|
158
161
|
this.outboundHttp = outboundHttp;
|
|
162
|
+
this.aiGatewayService = aiGatewayService;
|
|
159
163
|
this.nodeCatalogService = nodeCatalogService;
|
|
160
164
|
this.nodesCache = null;
|
|
161
165
|
this.NODES_CACHE_TTL_MS = 5 * 60 * 1000;
|
|
@@ -351,13 +355,16 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
|
|
|
351
355
|
source: 'n8n-ai',
|
|
352
356
|
});
|
|
353
357
|
},
|
|
354
|
-
async getAsWorkflowJSON(workflowId) {
|
|
358
|
+
async getAsWorkflowJSON(workflowId, versionId) {
|
|
355
359
|
const wf = await workflowFinderService.findWorkflowForUser(workflowId, user, [
|
|
356
360
|
'workflow:read',
|
|
357
361
|
]);
|
|
358
362
|
if (!wf)
|
|
359
363
|
throw new Error(`Workflow ${workflowId} not found or not accessible`);
|
|
360
|
-
|
|
364
|
+
if (!versionId)
|
|
365
|
+
return toWorkflowJSON(wf, { redactParameters });
|
|
366
|
+
const version = await workflowHistoryService.getVersion(user, workflowId, versionId);
|
|
367
|
+
return toWorkflowJSON(wf, { redactParameters, graph: version });
|
|
361
368
|
},
|
|
362
369
|
async getWorkflowHead(workflowId) {
|
|
363
370
|
const head = await workflowFinderService.findWorkflowHeadForUser(workflowId, user, [
|
|
@@ -566,6 +573,7 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
|
|
|
566
573
|
nodes: (version.nodes ?? []).map((n) => ({
|
|
567
574
|
name: n.name,
|
|
568
575
|
type: n.type,
|
|
576
|
+
typeVersion: n.typeVersion,
|
|
569
577
|
parameters: redactParameters ? undefined : n.parameters,
|
|
570
578
|
position: n.position,
|
|
571
579
|
})),
|
|
@@ -593,7 +601,7 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
|
|
|
593
601
|
};
|
|
594
602
|
}
|
|
595
603
|
createExecutionAdapter(user, pushRef, threadId) {
|
|
596
|
-
const { workflowFinderService, workflowRunner, activeExecutions, executionRepository, nodeTypes, allowSendingParameterValues, license, roleService, telemetry, logger, } = this;
|
|
604
|
+
const { workflowFinderService, workflowRunner, activeExecutions, executionRepository, nodeTypes, allowSendingParameterValues, license, roleService, telemetry, logger, globalConfig, } = this;
|
|
597
605
|
const assertNotReadOnly = () => this.assertInstanceNotReadOnly('executions');
|
|
598
606
|
const DEFAULT_TIMEOUT_MS = 5 * constants_1.Time.minutes.toMilliseconds;
|
|
599
607
|
const MAX_TIMEOUT_MS = 10 * constants_1.Time.minutes.toMilliseconds;
|
|
@@ -699,6 +707,21 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
|
|
|
699
707
|
runData.telemetryMetadata = {
|
|
700
708
|
mockDataSources: pinDataPlan.mockDataSources,
|
|
701
709
|
};
|
|
710
|
+
const offloadingManualExecutionsInQueueMode = globalConfig.executions?.mode === 'queue' &&
|
|
711
|
+
process.env.OFFLOAD_MANUAL_EXECUTIONS_TO_WORKERS === 'true';
|
|
712
|
+
if (runData.executionMode === 'manual' &&
|
|
713
|
+
offloadingManualExecutionsInQueueMode &&
|
|
714
|
+
!runData.executionData) {
|
|
715
|
+
runData.executionData = (0, n8n_workflow_1.createRunExecutionData)({
|
|
716
|
+
startData: { startNodes: runData.startNodes },
|
|
717
|
+
resultData: { pinData: runData.pinData, runData: null },
|
|
718
|
+
manualData: {
|
|
719
|
+
userId: runData.userId,
|
|
720
|
+
triggerToStartFrom: runData.triggerToStartFrom,
|
|
721
|
+
},
|
|
722
|
+
executionData: null,
|
|
723
|
+
});
|
|
724
|
+
}
|
|
702
725
|
const trackBuilderExecutedWorkflow = (status, error) => {
|
|
703
726
|
if (!threadId)
|
|
704
727
|
return;
|
|
@@ -845,7 +868,7 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
|
|
|
845
868
|
};
|
|
846
869
|
}
|
|
847
870
|
createCredentialAdapter(user, boundProjectId, credentialIdAllowlist) {
|
|
848
|
-
const { credentialsService, credentialsFinderService, loadNodesAndCredentials } = this;
|
|
871
|
+
const { credentialsService, credentialsFinderService, loadNodesAndCredentials, aiGatewayService, } = this;
|
|
849
872
|
const adapter = {
|
|
850
873
|
async list(options) {
|
|
851
874
|
if (boundProjectId) {
|
|
@@ -1021,6 +1044,31 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
|
|
|
1021
1044
|
}
|
|
1022
1045
|
return results;
|
|
1023
1046
|
},
|
|
1047
|
+
async listHttpCredentialHosts() {
|
|
1048
|
+
if (httpCredentialHostsCache)
|
|
1049
|
+
return httpCredentialHostsCache;
|
|
1050
|
+
const { knownCredentials } = loadNodesAndCredentials;
|
|
1051
|
+
const result = [];
|
|
1052
|
+
for (const typeName of Object.keys(knownCredentials)) {
|
|
1053
|
+
let credType;
|
|
1054
|
+
try {
|
|
1055
|
+
credType = loadNodesAndCredentials.getCredential(typeName).type;
|
|
1056
|
+
}
|
|
1057
|
+
catch {
|
|
1058
|
+
continue;
|
|
1059
|
+
}
|
|
1060
|
+
const usableInHttpNode = Boolean(credType.authenticate) ||
|
|
1061
|
+
(knownCredentials[typeName]?.extends ?? []).some((parent) => parent === 'oAuth2Api' || parent === 'oAuth1Api');
|
|
1062
|
+
if (!usableInHttpNode)
|
|
1063
|
+
continue;
|
|
1064
|
+
const hosts = (0, instance_ai_1.deriveCredentialHosts)(credType);
|
|
1065
|
+
if (hosts.length === 0)
|
|
1066
|
+
continue;
|
|
1067
|
+
result.push({ type: typeName, displayName: credType.displayName, hosts });
|
|
1068
|
+
}
|
|
1069
|
+
httpCredentialHostsCache = result;
|
|
1070
|
+
return result;
|
|
1071
|
+
},
|
|
1024
1072
|
async getAccountContext(credentialId) {
|
|
1025
1073
|
const credential = await credentialsFinderService.findCredentialForUser(credentialId, user, ['credential:read']);
|
|
1026
1074
|
if (!credential) {
|
|
@@ -1064,6 +1112,15 @@ let InstanceAiAdapterService = class InstanceAiAdapterService {
|
|
|
1064
1112
|
return { accountIdentifier: undefined };
|
|
1065
1113
|
}
|
|
1066
1114
|
},
|
|
1115
|
+
async isAiGatewayCredentialType(credType) {
|
|
1116
|
+
try {
|
|
1117
|
+
const config = await aiGatewayService.getGatewayConfig();
|
|
1118
|
+
return config.credentialTypes.includes(credType);
|
|
1119
|
+
}
|
|
1120
|
+
catch {
|
|
1121
|
+
return false;
|
|
1122
|
+
}
|
|
1123
|
+
},
|
|
1067
1124
|
};
|
|
1068
1125
|
if (!credentialIdAllowlist)
|
|
1069
1126
|
return adapter;
|
|
@@ -1786,6 +1843,7 @@ exports.InstanceAiAdapterService = InstanceAiAdapterService = __decorate([
|
|
|
1786
1843
|
db_1.AiBuilderTemporaryWorkflowRepository,
|
|
1787
1844
|
backend_network_1.SsrfProtectionService,
|
|
1788
1845
|
backend_network_1.OutboundHttp,
|
|
1846
|
+
ai_gateway_service_1.AiGatewayService,
|
|
1789
1847
|
node_catalog_1.NodeCatalogService])
|
|
1790
1848
|
], InstanceAiAdapterService);
|
|
1791
1849
|
const MAX_RESULT_CHARS = 20_000;
|
|
@@ -2102,6 +2160,9 @@ function sdkNodeGroupsToRuntime(nodeGroups) {
|
|
|
2102
2160
|
function hasCredentialId(value) {
|
|
2103
2161
|
if (typeof value !== 'object' || value === null)
|
|
2104
2162
|
return false;
|
|
2163
|
+
if (Reflect.get(value, 'id') === null && Reflect.get(value, '__aiGatewayManaged') === true) {
|
|
2164
|
+
return true;
|
|
2165
|
+
}
|
|
2105
2166
|
const id = Reflect.get(value, 'id');
|
|
2106
2167
|
return typeof id === 'string' && id.trim() !== '';
|
|
2107
2168
|
}
|
|
@@ -2129,10 +2190,11 @@ function sanitizeCredentialReferencesForSave(nodes) {
|
|
|
2129
2190
|
}
|
|
2130
2191
|
function toWorkflowJSON(workflow, options) {
|
|
2131
2192
|
const redact = options?.redactParameters ?? false;
|
|
2193
|
+
const source = options?.graph ?? workflow;
|
|
2132
2194
|
return {
|
|
2133
2195
|
id: workflow.id,
|
|
2134
2196
|
name: workflow.name,
|
|
2135
|
-
nodes: (
|
|
2197
|
+
nodes: (source.nodes ?? []).map((n) => ({
|
|
2136
2198
|
id: n.id ?? '',
|
|
2137
2199
|
name: n.name,
|
|
2138
2200
|
type: n.type,
|
|
@@ -2149,9 +2211,9 @@ function toWorkflowJSON(workflow, options) {
|
|
|
2149
2211
|
alwaysOutputData: n.alwaysOutputData,
|
|
2150
2212
|
onError: n.onError,
|
|
2151
2213
|
})),
|
|
2152
|
-
connections:
|
|
2214
|
+
connections: source.connections,
|
|
2153
2215
|
settings: workflow.settings,
|
|
2154
|
-
...(
|
|
2216
|
+
...(source.nodeGroups ? { nodeGroups: source.nodeGroups } : {}),
|
|
2155
2217
|
};
|
|
2156
2218
|
}
|
|
2157
2219
|
function toWorkflowDetail(workflow, options) {
|
|
@@ -2167,6 +2229,7 @@ function toWorkflowDetail(workflow, options) {
|
|
|
2167
2229
|
nodes: (workflow.nodes ?? []).map((n) => ({
|
|
2168
2230
|
name: n.name,
|
|
2169
2231
|
type: n.type,
|
|
2232
|
+
typeVersion: n.typeVersion,
|
|
2170
2233
|
parameters: redact ? undefined : n.parameters,
|
|
2171
2234
|
position: n.position,
|
|
2172
2235
|
webhookId: n.webhookId,
|