Commit Graph

25299 Commits

Author SHA1 Message Date
Guillaume Jacquart
eec68f3f45
feat(editor): Show sub-workflow progress on the node border
Replaces the in-body progress bar with a determinate arc on the node's own
border, plus a step count in the status-icon slot that gives way to the success
checkmark on finish. The running child node name reuses the subtitle line, so
nothing shifts as the child advances.

The arc is drawn on its own layer rather than sharing the running halo's ring:
compositing the two there made the shimmer's bright head vanish behind the solid
arc and read as a flicker. It trickles between steps, bounded to half a step, so
a slow child node doesn't read as a stalled bar, and stops short of a full turn
so only completion closes the loop.

The step count carries no denominator. Nodes reached is knowable, the total is
only estimated, so the count is reported unclamped and the estimate is used just
to scale the arc. That total now counts only nodes reachable from the
sub-workflow's entry point (plus their AI/tool sub-nodes), which stops leftover
trigger branches and disconnected islands from scaling the arc down.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-06 10:50:08 +02:00
Guillaume Jacquart
d4a052a3fc
fix(editor): Ignore stale sub-workflow finished events when clearing progress
`clear` deleted the progress entry using only the parent execution id and node
name, while `updateProgress` already ignored events from a superseded child.
That asymmetry meant a late `subworkflowExecutionFinished` from a previous child
could wipe the overlay of a newer one that is still running.

Pass the child execution id through from the push handler and only clear when it
matches the stored entry, mirroring the existing guard in `updateProgress`. The
id is optional so a caller with no specific child (such as a reset) still clears
unconditionally.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-06 10:50:08 +02:00
Guillaume Jacquart
4ff9c1204b
perf(core): Throttle sub-workflow progress pushes and limit them to direct children
The progress stream forwarded from a sub-workflow to the parent's canvas was
effectively unthrottled. The previous guard only suppressed consecutive
`nodeExecuteBefore` events for the same node with no intervening
`nodeExecuteAfter` — a sequence the engine does not produce — so steady state
was two messages per child node execution. Each of those is a pubsub broadcast
in scaling mode and a full canvas re-map in the editor, so a looping child
workflow could emit thousands of messages for one run.

Replace it with a trailing-edge throttle: the leading edge still emits
immediately so the overlay appears at once, subsequent events inside the window
coalesce into a single pending snapshot, and a trailing timer sends the latest
state. The overlay only renders the running node name, an "X / Y" counter and a
bar, so intermediate states are disposable. A 200-iteration child now emits two
messages instead of ~400. `workflowExecuteAfter` drops any pending snapshot,
since the finished event clears the overlay outright.

Also stop forwarding progress for nested sub-workflows. Only the workflow open
on the canvas renders the overlay, so a grandchild's parent node is not on
screen and the editor discarded those messages anyway. Resolving the direct
parent's pushRef instead of walking the whole ancestor chain removes that
wasted traffic and simplifies the lookup.

Tests now exercise real engine before/after sequences rather than the synthetic
double-`nodeExecuteBefore` the old throttle keyed on.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-06 10:50:07 +02:00
Guillaume Jacquart
995e73c24c
feat(editor): Show live sub-workflow progress on Execute Sub-workflow node 2026-10-06 10:50:07 +02:00
Guillaume Jacquart
b07a288a26
feat(core): Forward sub-workflow node progress to the parent execution 2026-10-06 10:50:06 +02:00
Matsu
7db7fa42c8
fix: Multiple migration timestamps withing a single PR (#40379) 2026-10-06 07:28:47 +00:00
Matsu
3f2144f062
chore: Update turbo.json oxlint configurations (#40377) 2026-10-06 07:27:56 +00: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
n8n-assistant[bot]
a448b8d2df
chore: Update e2e impact map (#40370)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-10-06 05:24:45 +00:00
n8n-assistant[bot]
b82ad639e8
chore: Lower boundaries baseline (no-changelog) (#40369)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-10-06 03:30:05 +00:00
Mayank SIngh
439e8ba2e7
fix(core): Reload static data for queued executions (#39668)
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2026-10-05 21:31:11 +00:00
Uddish Verma
0280644e77
refactor(API): Migrate GET /settings/log-streaming/event-types to the decorator pattern (no-changelog) (#40234)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 15:55:04 +00:00
Eugene
308ec2cc1c
feat(editor): Show Agent plans in preview chat (no-changelog) (#40006) 2026-10-05 15:42:28 +00:00
Michael Drury
5c0aff8cbc
fix(editor): Restore full-width Agent preview (#39986) 2026-10-05 15:41:33 +00:00
Robin Braumann
314c430bfc
fix(core): Limit background task continuation to the latest stop group (#40333) 2026-10-05 15:40:03 +00:00
Sandra Zollner
f7cfb520bf
feat(editor): Submit selected project changes from the promote modal (#39609) 2026-10-05 15:31:23 +00:00
Anne Aguirre
a2fd4189f1
feat(core): Persist agent budget spend in the database (#40138)
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2026-10-05 15:11:29 +00:00
Sam Wooler
5f73c7cdcb
feat(API): Support multipart request bodies on Public API controller routes (no-changelog) (#40074) 2026-10-05 15:08:34 +00:00
Emilia
02f08035b4
chore(core): Bump task-runner-launcher to 1.5.1 (#40324)
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-05 15:00:51 +00:00
Mike Repeć
680f9582e1
feat(core): Add engine suspension at node boundaries for resumable executions (#37649)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-10-05 15:00:01 +00:00
Robin Braumann
f055d9cd11
docs(core): Explain background task continuation selection (#40321) 2026-10-05 14:33:56 +00:00
Charlie Kolb
b5fe251ba5
refactor(core): Move ownership transfer registry to backend services (#40308) 2026-10-05 14:30:21 +00:00
José Braulio González Valido
b7071c91c7
fix(ai-builder): Treat a blank folder path as no folder in the build tool (#40116)
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-05 13:57:14 +00:00
Charlie Kolb
206fc6f317
refactor(core): Move instance write access service (#40307) 2026-10-05 13:54:20 +00:00
Jakub Kadlubiec
01f072b520
chore: Move Chat Hub ownership to Assistant team (no-changelog) (#40243)
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 13:38:29 +00:00
Nour Alhadi Mahmoud
548bd57802
fix(core): Load workflow publish history in a separate query (#40171)
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 13:30:49 +00:00
Robin Braumann
4939dbc787
feat(core): Stop background workflows in Preview (no-changelog) (#40291) 2026-10-05 13:19:23 +00:00
Thanasis G
022f4a6477
feat(Azure OpenAI Chat Model Node): Add the deployment dropdown (#39643)
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 13:15:57 +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
Sebastien Powell
8f13f2830a
feat(core): Add remote search and programmatic focus to N8nCombobox so the MCP selects can leave N8nSelect (#40140) 2026-10-05 12:43:11 +00:00
Benjamin Schroth
9183d0422c
fix(core): Resolve the request target against the dispatcher origin (#39506) 2026-10-05 12:28:43 +00:00
James Martin
073239e6d5
chore(core): Implements JWKS service to provide key pair for signing tokens (no-changelog) (#39718)
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-05 12:22:32 +00:00
Riqwan Thamir
7779f47a7d
fix(core): Retry transient Observer model failures (no-changelog) (#40263) 2026-10-05 12:16:57 +00:00
Andreas Fitzek
79924a5d93
refactor(core): Drop TypeORM imports from event bus, LDAP reset, ownership, evaluation, and tags (no-changelog) (#39353)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 12:14:47 +00:00
Andreas Fitzek
1942447e90
feat(core): Add a shared OAuth discovery and JWKS client (no-changelog) (#40012)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 12:11:52 +00:00
Savelii
44d9adfc7e
fix(core): Use the new client ID and secret for OAuth2 client credentials (#39891)
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
2026-10-05 12:02:55 +00:00
Ali Elkhateeb
fa8b8b243e
refactor(API): Migrate LDAP sync endpoints to PublicApiController (#40280)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-05 12:00:55 +00:00
Eugene
c4c31a529c
feat(core): Add parent-Agent plan tools (no-changelog) (#39542) 2026-10-05 11:59:50 +00:00
Yuliia Pominchuk
92ae1b336f
feat(editor): Show whose credential a node uses and let others switch from it (#40281) 2026-10-05 11:59:20 +00:00
Bernhard Wittmann
e3aa15d7d7
fix(editor): Check Teams credential again after it is saved (no-changelog) (#40264) 2026-10-05 11:56:23 +00:00
Savelii
360ec09cf2
fix(editor): Enable Save when SSO role provisioning switches back to manual (#39925)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 11:23:06 +00:00
Savelii
1cac1e056d
fix(core): Keep concurrent credential tests from sharing one node type registry (#40054)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 11:08:25 +00:00
Riqwan Thamir
fe07e84d0f
fix(core): Keep skill activation and memory compaction from breaking the prompt cache (no-changelog) (#40245)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-05 10:48:35 +00:00
Stephen Wright
6610987057
fix(Azure OpenAI Chat Model Node): Support Responses-only deployments (#39403)
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-10-05 10:46:42 +00:00
n8n-cat-bot[bot]
94a49d08ce
feat(Crypto Node): Add RSA-OAEP hash option (#39853)
Co-authored-by: n8n-cat-bot[bot] <n8n-cat-bot[bot]@users.noreply.github.com>
Co-authored-by: Jonathan <jon@n8n.io>
Co-authored-by: Jon <jonathan.bennetts@gmail.com>
2026-10-05 10:09:39 +00:00
Anne Aguirre
6a5aa7862e
feat(core): Indicate unpublished changes in agent resource list view (#40177) 2026-10-05 10:06:20 +00:00
Charlie Kolb
f47a2fe235
refactor(core): Decouple Insights from CLI and TypeORM (#40214) 2026-10-05 09:59:39 +00:00
Andreas Fitzek
32d7c8ebf4
feat(core): Add inbound-auth contracts and fail-closed defaults (no-changelog) (#40004)
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 09:30:49 +00:00
José Braulio González Valido
274639fb88
fix(ai-builder): Guide the builder to a working HTTP pagination stop rule (no-changelog) (#40024)
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-05 09:27:30 +00:00
Eugene
a9b0607111
feat(core): Add Agent plan model and validation (no-changelog) (#39530) 2026-10-05 09:21:41 +00:00