Commit Graph

407 Commits

Author SHA1 Message Date
Uddish Verma
e47b8d6891
test(API): Drop the shared ActiveWorkflowManager mock workaround
`executions.test.ts` now registers its own `InstanceSettings` mock before
`setupTestServer`, so the shared helper no longer needs to patch the already
constructed instance. Leaves the helper identical to master.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-13 13:44:58 +01:00
Uddish Verma
6d32edbc0d
Merge remote-tracking branch 'origin/master' into api-84-workflow-writes 2026-08-11 16:23:54 +01:00
Uddish Verma
26af927404
fix(API): Fix discover schema gap and instance-role timing surfaced by decorator migration
/discover's requestSchema was only ever populated for legacy eov-handled
routes; decorator-routed operations with a body silently had none. That
never showed up before because every previously-migrated decorator route
was a GET without a body - migrating a POST/PUT surfaces it. Have
buildDecoratorEndpoints read each route's own committed, generated path
fragment (the same file the OpenAPI generator writes) to recover it.

Separately, WorkflowsPublicController now depends on WorkflowService, which
depends on ActiveWorkflowManager. Every public-api integration test
constructs this controller as part of router setup, so ActiveWorkflowManager
can now become a cached DI singleton earlier than a test's own
initActiveWorkflowManager() call, which re-mocks InstanceSettings afterwards.
The already-built ActiveWorkflowManager instance keeps its original,
pre-mock InstanceSettings reference, so `.init()`'s leader-role assertion
fails. Patch the mocked InstanceSettings onto whatever instance
Container.get returns instead of assuming it was just constructed.

Part of https://linear.app/n8n/issue/API-84/schema-first-migration-workflows
2026-08-07 12:25:15 +01:00
Ali Elkhateeb
8db0b48ee1
refactor(API): Route public API executions through shared execution services (no-changelog) (#35582) 2026-08-07 08:13:11 +00:00
Nour Alhadi Mahmoud
32f38a3541
fix(core): Report failed publishing when imported workflows share a webhook path (#35525)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-07 07:18:36 +00:00
n8n-assistant[bot]
ca3d42d838
chore: Bundle/2.x (#35563)
Co-authored-by: Matsu <matias.huhta@n8n.io>
2026-08-05 08:29:40 +03:00
James Gee
008a75aec6
feat(core): Import sub-workflow dependencies from a package (no-changelog) (#34793) 2026-07-29 09:38:53 +00:00
Dmitrii
02e736ef4e
feat(API): Add public API endpoints for OIDC SSO configuration (#34313) 2026-07-28 10:58:55 +00:00
Guillaume Jacquart
298a941af6
feat(core): Make SSO role mapping default condition configurable (#35023)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-28 08:53:48 +00:00
Charlie Kolb
0f6be1f38d
refactor: Replace @ts-ignore with @ts-expect-error outside nodes-base (#35009)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-27 13:22:06 +00:00
Jan Kalkan
4044d58d13
feat(core): Validate missing node types on package import (#34598)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 21:09:27 +00:00
Dmitrii
cd1e48e5f5
feat(API): Add public API endpoints for OpenTelemetry configuration (#34429) 2026-07-22 09:28:47 +00:00
n8n-assistant[bot]
2222fe3a6c
chore: Bundle/2.x (#34680)
Co-authored-by: Charlie Kolb <charlie@n8n.io>
Co-authored-by: Guillaume Jacquart <jacquart.guillaume@gmail.com>
Co-authored-by: Stephen Wright <sjw948@gmail.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: Bernhard Wittmann <bernhard.wittmann@n8n.io>
Co-authored-by: Nikhil Kuriakose <nikhil.kuriakose@n8n.io>
Co-authored-by: Albert Alises <albert.alises@gmail.com>
Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com>
Co-authored-by: Andreas Fitzek <andreas.fitzek@n8n.io>
Co-authored-by: Elias Meire <elias@meire.dev>
Co-authored-by: Robin Braumann <50590409+bjorger@users.noreply.github.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: yehorkardash <yehor.kardash@n8n.io>
Co-authored-by: Mike Repeć <mike.repec@n8n.io>
Co-authored-by: Yuliia Pominchuk <31064937+yuliia-pominchuk@users.noreply.github.com>
Co-authored-by: RomanDavydchuk <roman.davydchuk@n8n.io>
2026-07-22 08:09:00 +00:00
Sandra Zollner
6d38f2ee39
feat(core): Review submission flow endpoints and toggle (#34649)
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Kai <kai.grosse.hartlage@gmail.com>
Co-authored-by: Kai <kai.hartlage@n8n.io>
2026-07-21 15:25:16 +00:00
Matsu
cec46445ee
chore: Migrate packages/cli to Typescript 7 (#34159) 2026-07-15 11:49:51 +00:00
Matsu
8bb6489918
chore: Remove remaining Jest references (no-changelog) (#33412)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2026-07-09 09:29:24 +03:00
James Gee
17899c6aa5
feat(core): Add folder export to n8n packages (no-changelog) (#32849) 2026-07-02 13:12:49 +00:00
Matsu
df97053888
chore: Remove references to Jest (#33282) 2026-07-01 09:03:25 +00:00
Matsu
0d465d4428
test: Migrate cli package from Jest to Vitest (#31804)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2026-06-29 21:19:56 +03:00
Ricardo Espinoza
c5689d44e2
feat(core): Synthesize type definitions for custom and community nodes in MCP (#32885) 2026-06-29 15:59:51 +00:00
n8n-assistant[bot]
a4bc50f9a0
chore: Bundle/2.x (#32896)
Co-authored-by: Matsu <matias.huhta@n8n.io>
Co-authored-by: Eugene <eugene@n8n.io>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Co-authored-by: Dmitrii <dmitrii.kulikov@n8n.io>
Co-authored-by: Bernhard Wittmann <bernhard.wittmann@n8n.io>
Co-authored-by: Andreas Fitzek <andreas.fitzek@n8n.io>
Co-authored-by: Alexander Gekov <40495748+alexander-gekov@users.noreply.github.com>
Co-authored-by: Konstantin Tieber <46342664+konstantintieber@users.noreply.github.com>
Co-authored-by: Lorent Lempereur <looorent@users.noreply.github.com>
Co-authored-by: yehorkardash <yehor.kardash@n8n.io>
2026-06-24 09:43:29 +03:00
Andreas Fitzek
1a02b53784
refactor(core): Extract test webhook cancel route into a REST controller (#31353) 2026-06-23 10:25:44 +00:00
Mike Repeć
10856a4f4d
feat(core): Track binary data size on execution entity rows (no-changelog) (#32387)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-17 15:14:27 +00:00
Mike Repeć
612cb772c2
feat(core): Add sizeBytes and workflowVersionId to executions (no-changelog) (#32067)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2026-06-12 09:44:19 +00:00
Guillaume Jacquart
71e031688d
refactor(core): Extract the OAuth server into a shared oauth-server module (no-changelog) (#32018)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-11 10:32:22 +00:00
Tomi Turtiainen
3dd6aaa22e
fix(core): Stabilize public API test logging (no-changelog) (#32060) 2026-06-10 11:48:21 +00:00
Lorent Lempereur
ab0d86fa11
refactor(core): Split PrometheusMetricsService into focused per-metric services (no-changelog) (#31855) 2026-06-09 10:28:01 +00:00
Declan Carroll
a83ea70bbc
ci: Speed up DB integration tests via Postgres template DB + persistent Jest workers (#31778)
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-05 06:27:41 +00:00
Yuliia Pominchuk
5ad38d77b7
feat(core): Encrypt running user's auth cookie into manual execution credential context (#30811)
Some checks are pending
Build: Benchmark Image / build (push) Waiting to run
CI: Master (Build, Test, Lint) / Build for Github Cache (push) Waiting to run
CI: Master (Build, Test, Lint) / Unit tests (22.22.3) (push) Waiting to run
CI: Master (Build, Test, Lint) / Unit tests (24.15.0) (push) Waiting to run
CI: Master (Build, Test, Lint) / Lint (push) Waiting to run
CI: Master (Build, Test, Lint) / Performance (push) Waiting to run
CI: Master (Build, Test, Lint) / Notify Slack on failure (push) Blocked by required conditions
Util: Sync API Docs / sync-public-api (push) Waiting to run
Co-authored-by: Guillaume Jacquart <jacquart.guillaume@gmail.com>
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-22 09:42:04 +00:00
Daria
b9ba2603ce
feat(core): Add support for creating and updating workflow groups (#30211) 2026-05-19 14:07:06 +00:00
n8n-assistant[bot]
293d5afd64
chore: Bundle/2.x (#30359)
Co-authored-by: Matsu <matias.huhta@n8n.io>
Co-authored-by: RomanDavydchuk <roman.davydchuk@n8n.io>
Co-authored-by: Dawid Myslak <dawid.myslak@gmail.com>
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Co-authored-by: Bernhard Wittmann <bernhard.wittmann@n8n.io>
Co-authored-by: Daria <daria.staferova@n8n.io>
Co-authored-by: Andreas Fitzek <andreas.fitzek@n8n.io>
2026-05-13 08:23:48 +03:00
Konstantin Tieber
283071e611
feat(core): Add flag to import workflow cli to activate workflow on import (#29770) 2026-05-05 16:29:00 +00:00
Stephen Wright
258b9703c5
refactor: Migrate all cipher call sites to encryptV2/decryptV2 (#29096) 2026-04-28 09:24:01 +00:00
Matsu
370b281216
chore(core): Enable TypeScript strict mode in packages/cli (no-changelog) (#27876)
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-27 14:21:31 +00:00
Andreas Fitzek
1d325a20ca
feat(core): Accept token-exchanged scoped JWTs on the instance MCP server (#28909) 2026-04-27 07:22:29 +00:00
Guillaume Jacquart
5af4e1cc19
feat(API): Add encryption key management endpoints (#28897)
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-23 13:27:57 +00:00
Andreas Fitzek
87e3f1877e
feat(core): Wire TokenExchangeService.exchange() end-to-end (no-changelog) (#28293) 2026-04-10 11:49:17 +00:00
James Gee
cbe109a4cc
feat(core): OTEL - workflow node tracing (#27789) 2026-04-02 07:59:19 +00:00
Sandra Zollner
1fa28054a6
feat(core): Enable community package management via Public API (#27637) 2026-04-01 14:51:33 +00:00
Milorad FIlipović
4436e4b71c
fix(core): Fix /healthz endpoint when using N8N_PATH (#27665) 2026-03-30 13:05:07 +00:00
Stephen Wright
150067fbbb
feat: POST / PATCH /role-mapping-rule endpoints (#27569) 2026-03-26 13:39:06 +00:00
Iván Ovejero
88f9f2ed65
fix(core): Assign webhook ID to API-created webhook nodes (#27161) 2026-03-23 11:48:29 +00:00
Charlie Kolb
f79b4d7a71
feat(editor): Display workflow, credential and data table dependencies (#26912)
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2026-03-19 09:53:21 +00:00
Tomi Turtiainen
d832ffe763
refactor(core): Remove TaskRunnersConfig.enabled since runners are always on (#25834)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Danny Martini <danny@n8n.io>
2026-03-04 09:55:08 +00:00
Andreas Fitzek
a741f15792
chore(core): Implement redaction logic in redaction module (#26268) 2026-02-26 17:32:40 +00:00
Daria
47d5738ed6
fix(core): Respect n8n path for health endpoint (#26129) 2026-02-23 14:44:46 +00:00
Daria
9ec0f97a9f
feat(core): Accept slash inside health endpoint env var (#25753) 2026-02-16 10:26:22 +00:00
Daria
d09c6a3d5a
fix(core): Make health endpoint configurable to solve conflicts (#25729) 2026-02-13 13:47:19 +00:00
Ricardo Espinoza
0d842c5da5
feat(core): Add data tables to env features (#23828)
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: Milorad FIlipović <milorad@n8n.io>
2026-02-09 14:35:47 +00:00
phyllis-noester
112d0eb6b3
feat(core): Support disabling sharing from personal space (#25259)
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2026-02-04 19:19:05 +00:00