Commit Graph

94 Commits

Author SHA1 Message Date
Veljko Terzic
75b94ccad5
perf(engine): Prefetch handler reads when a step message is published
Start the reads of a queue consumer when its message is published, so
the reads run while the message waits in the serial queue.

- step:settled: the step, the execution, the failed-step probe and the
  successor summaries. The reads start after the settlement commits.
- step:ready: the predecessor rows for the step inputs. The claim and the
  execution status read after the claim stay on the critical path.

A consumer that finds no prefetch does the same reads itself.

Ordering change: the settled handler can see an execution status that is
older by one queue wait. If a cancel lands in that window, one more step
can be planned. The ready handler cancels that step after its claim.
createSteps still checks for failed steps under the execution lock.
Planning reads still run after the settlement of the step commits, so
the last predecessor of a successor to settle sees the others settled.
No durability change.
2026-10-16 15:20:32 +02:00
Danny Martini
adfc54a090 feat(engine): Add engine v2 tracing spans and a benchmark NoOp opt-in 2026-10-16 00:46:50 +02:00
n8n-assistant[bot]
a11777054a
🚀 Release 2.43.0 (#40376)
Co-authored-by: n8n-release-helper[bot] <265227495+n8n-release-helper[bot]@users.noreply.github.com>
2026-10-06 07:10:16 +00:00
Pierantonio Cangianiello
8fa89ee02f
docs(engine): Add ADR on binary data access from a data plane in a separate process (no-changelog) (#40179) 2026-10-05 12:55:40 +00:00
mfsiega
56d6e9da2c
feat(core): Stop engine v2 executions from the control plane (#39786)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-02 14:53:46 +00:00
Pierantonio Cangianiello
119e21752b
feat(engine): Add the host callback that deletes the binary files of a pruned execution (no-changelog) (#39701) 2026-10-01 09:50:12 +00:00
mfsiega
681768e0bb
feat(engine): Cancel an execution on request (#39785)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-01 08:40:02 +00:00
mfsiega
dcda65f7d9
fix(engine): Report the recorded finish time on execution end events (#39963)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-30 10:02:13 +00:00
Tomi Turtiainen
3c1aaae176
feat(core): Send streaming webhook chunks from engine v2 (no-changelog) (#39947) 2026-09-30 09:50:04 +00:00
mfsiega
a5b00eee2d
feat(engine): Add a service that cancels an execution (#39806)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-29 15:01:08 +00:00
Pierantonio Cangianiello
933113e375
docs(engine): Add ADR on deletion of binary files written by Engine v2 runs (no-changelog) (#39617) 2026-09-29 14:12:41 +00:00
Matsu
f3f660b745
chore: Migrate database and engine lint to Oxlint (no-changelog) (#39841) 2026-09-29 12:24:22 +00:00
Tomi Turtiainen
84da588c36
feat(engine): Let the caller tell engine v2 which response it expects (#39780) 2026-09-29 10:19:05 +00:00
n8n-assistant[bot]
86c23326c9
🚀 Release 2.42.0 (#39826)
Co-authored-by: n8n-release-helper[bot] <265227495+n8n-release-helper[bot]@users.noreply.github.com>
2026-09-29 07:11:00 +00:00
Danny Martini
c53a5e4dd8
feat(engine): Store the execution's waiting status (no-changelog) (#39093)
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-25 13:13:59 +00:00
Tomi Turtiainen
c6fb5737c1
chore(engine): Use engine v2 naming (#39582) 2026-09-25 07:54:48 +00:00
Tomi Turtiainen
95c4070090
feat(core): Support the responseNode webhook response mode on engine 2.0 (no-changelog) (#39003) 2026-09-24 08:24:43 +00:00
Tomi Turtiainen
972db68d6b
feat(engine): Report execution response failures (#39001) 2026-09-23 16:54:39 +00:00
Danny Martini
691bf44151
feat(engine): Suspend and resume waiting steps (no-changelog) (#37853)
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-23 14:59:15 +00:00
Tomi Turtiainen
d01ec72338
ci: Enforce ADR conventions (#39286) 2026-09-23 06:50:50 +00:00
Tomi Turtiainen
3f5aab992c
fix(engine): Preserve host execution mode (#39253) 2026-09-23 06:28:26 +00:00
Tomi Turtiainen
518a24dd64
refactor(engine): Split execution response endpoints (#39261) 2026-09-22 11:44:49 +00:00
n8n-assistant[bot]
669a65ade5
🚀 Release 2.41.0 (#39228)
Co-authored-by: n8n-release-helper[bot] <265227495+n8n-release-helper[bot]@users.noreply.github.com>
2026-09-22 07:18:44 +00:00
Tomi Turtiainen
6c6ef51066
docs(engine): Refine execution response comments (#39167)
Co-authored-by: mfsiega <93014743+mfsiega@users.noreply.github.com>
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2026-09-21 14:46:00 +00:00
Tomi Turtiainen
c37c4d7b3f
feat(engine): Publish execution response events on the data plane (no-changelog) (#39080) 2026-09-21 10:44:58 +00:00
n8n-cat-bot[bot]
82f3a0154b
docs: Standardise on "engine v2" naming in AGENTS.md (#38966)
Co-authored-by: n8n-cat-bot[bot] <n8n-cat-bot[bot]@users.noreply.github.com>
2026-09-18 06:37:41 +00:00
Tomi Turtiainen
9b66a2bbfa
feat(engine): Read executions from the data plane and merge with the DB (#38110) 2026-09-16 10:45:58 +00:00
Tomi Turtiainen
dac4f63f1e
feat(engine): Add endpoints to list and count executions in the data plane (#38109)
Co-authored-by: Stephen Wright <sjw948@gmail.com>
Co-authored-by: Svetoslav Dekov <svetoslav.dekov@n8n.io>
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: n8n-cat-bot[bot] <283985454+n8n-cat-bot[bot]@users.noreply.github.com>
Co-authored-by: n8n-cat-bot[bot] <n8n-cat-bot[bot]@users.noreply.github.com>
Co-authored-by: Andreas Fitzek <andreas.fitzek@n8n.io>
Co-authored-by: Elias Meire <elias@meire.dev>
Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com>
Co-authored-by: Riqwan Thamir <rmthamir@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Guillaume Jacquart <jacquart.guillaume@gmail.com>
Co-authored-by: n8n-assistant[bot] <100856346+n8n-assistant[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Matsu <matias.huhta@n8n.io>
Co-authored-by: Raúl Gómez Morales <raul00gm@gmail.com>
Co-authored-by: subaru <79771445+subaru-hello@users.noreply.github.com>
Co-authored-by: Declan Carroll <declan@n8n.io>
Co-authored-by: Charlie Kolb <charlie@n8n.io>
Co-authored-by: Roman Makowiak <roman.makowiak@n8n.io>
Co-authored-by: Tuukka Kantola <Tuukkaa@users.noreply.github.com>
2026-09-16 09:06:07 +00:00
n8n-assistant[bot]
caff5b7013
🚀 Release 2.40.0 (#38711)
Co-authored-by: Matsuuu <16068444+Matsuuu@users.noreply.github.com>
2026-09-15 13:02:15 +03:00
Pierantonio Cangianiello
bb9556b9d5
feat(engine): Add the data plane credentials helper that resolves credentials through the control plane (no-changelog) (#38443)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-14 15:13:43 +00:00
Charlie Kolb
737d66eeb3
build: Remove unused dependencies reported by knip (no-changelog) (#38591)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-14 13:22:42 +00:00
Matsu
3454df1c1b
chore: Remove dead ESLint config and add lint parity tooling (no-changelog) (#38343)
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
2026-09-11 13:33:07 +03:00
Matsu
7be94a1184
chore: Update eslint configuration (#38307)
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-10 14:40:35 +03:00
Declan Carroll
1ad0b44a68
build: Move the monorepo and Docker deploys to pnpm 12 (no-changelog) (#37899)
Co-authored-by: Matsu <matias.huhta@n8n.io>
2026-09-08 15:15:57 +01:00
n8n-assistant[bot]
1620ec42ca
🚀 Release 2.39.0 (#38029)
Co-authored-by: Matsuuu <16068444+Matsuuu@users.noreply.github.com>
2026-09-08 11:04:45 +03:00
n8n-release-tag-merge[bot]
4223e6172a Merge tag 'n8n@2.38.0' 2026-09-08 07:40:20 +00:00
Tomi Turtiainen
10bc6ca351
feat(engine): Store the workflow that ran with each engine 2.0 execution (#37858) 2026-09-07 15:05:31 +00:00
Pierantonio Cangianiello
0f86167947
feat(engine): Prepare engine v2 for credential resolution (no-changelog) (#37876)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2026-09-07 10:34:43 +00:00
Declan Carroll
73ad071adf
build: Deploy production closures without pnpm deploy --legacy (no-changelog) (#37890) 2026-09-07 07:01:04 +00:00
Tomi Turtiainen
853344a078
docs: Adjust ADR title and filename (#37842) 2026-09-04 10:53:56 +00:00
Tomi Turtiainen
ae26d9599d
feat(engine): Return run data for engine 2.0 executions (#37486)
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-03 15:41:04 +00:00
n8n-assistant[bot]
ee7aca5845
🚀 Release 2.38.1 (#37499)
Co-authored-by: Matsuuu <16068444+Matsuuu@users.noreply.github.com>
Co-authored-by: Matsuuu <matias.huhta@n8n.io>
2026-09-01 12:57:43 +03:00
Tomi Turtiainen
b04acabea4
feat(engine): Let the control plane mint the engine 2.0 execution id (#37224) 2026-08-31 14:04:01 +00:00
Iván Ovejero
344ef416bf
refactor(engine): Log through an injected logger instead of the console (#37111) 2026-08-28 10:04:56 +00:00
Tomi Turtiainen
6e21069861
docs(engine): Add ADR for trigger settlement before execution (#37278) 2026-08-28 08:07:25 +00:00
Tomi Turtiainen
26d48059e3
feat(engine): Emit execution lifecycle status updates (#37013) 2026-08-27 10:42:21 +00:00
Iván Ovejero
58e05d8ea9
feat(engine): Support Split In Batches loops (no-changelog) (#36723) 2026-08-26 10:46:04 +00:00
Tomi Turtiainen
16a7438269
refactor(engine): Extract the shared-secret token helper and add the action token (#37012) 2026-08-26 10:01:58 +00:00
Tomi Turtiainen
d48b9e4597
feat(engine): Add read API for executions and steps (#36881) 2026-08-26 09:16:41 +00:00
n8n-assistant[bot]
541a312dc2
🚀 Release 2.37.0 (#36986)
Co-authored-by: Matsuuu <16068444+Matsuuu@users.noreply.github.com>
2026-08-25 07:32:14 +00:00