Commit Graph

41 Commits

Author SHA1 Message Date
Lorent Lempereur
fe91413e5d
feat(core): Renew the lease of a durable task while its handler runs (no-changelog) (#40271)
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
Co-authored-by: Emilia <100027345+sovietspaceship@users.noreply.github.com>
2026-10-06 09:07:36 +00:00
Lorent Lempereur
f4c734e7e0
feat(core): Add a lease heartbeat to the durable scheduler (no-changelog) (#40270) 2026-10-06 09:07:35 +00:00
Lorent Lempereur
f26d7fbfe7
refactor(core): Extract the handler failure path of the scheduler executor (no-changelog) (#40267) 2026-10-06 09:07:32 +00:00
Lorent Lempereur
fd6c1af1a0
feat(core): Report the occurrences a concurrency limit held back (no-changelog) (#39246) 2026-10-02 12:06:18 +00:00
Lorent Lempereur
f6f71abef4
feat(core): Cap concurrent occurrences of a durable scheduled job (no-changelog) (#39197) 2026-10-02 10:50:24 +00:00
Lorent Lempereur
194f13d30f
refactor: Move first occurrence seeding into the scheduler's provision (no-changelog) (#39605) 2026-09-28 11:42:20 +00:00
Lorent Lempereur
60bfb02db9
feat(core): Add a concurrency limit option to durable scheduled jobs (no-changelog) (#39166) 2026-09-23 09:04:27 +00: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
n8n-cat-bot[bot]
a51e6a0455
chore: Reuse one helper for the triplicated scheduler task-identity span attributes (#38037)
Co-authored-by: n8n-cat-bot[bot] <n8n-cat-bot[bot]@users.noreply.github.com>
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
2026-09-08 09:23:16 +00:00
Lorent Lempereur
0ed18c2a1b
refactor(core): Make scheduled job ownerKey non-nullable (no-changelog) (#37719) 2026-09-03 12:12:54 +00:00
Lorent Lempereur
7675c614bf
refactor(core): Own scheduled jobs by owner data rather than by workflow node (no-changelog) (#37134) 2026-09-02 20:10:43 +00:00
Lorent Lempereur
bf28c44747
feat(core): Reconcile scheduled jobs whose owner is gone (no-changelog) (#37133) 2026-09-02 20:10:42 +00:00
Lorent Lempereur
8f046e2a3f
feat(core): Introduce scheduled job owners as data (no-changelog) (#37132) 2026-09-02 20:10:42 +00:00
Lorent Lempereur
bcfdfa4252
feat(core): Run system tasks from the registry (no-changelog) (#37255) 2026-09-01 11:37:16 +00:00
Lorent Lempereur
5cb70b7bf1
feat(core): Add the SystemTask contract, decorator and registry (no-changelog) (#37026)
Co-authored-by: Danny Martini <danny@n8n.io>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-31 08:59:22 +00:00
Emilia
df8bfd9e56
feat(core): Back off a failing poll trigger instead of re-polling every tick (no-changelog) (#35707)
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
Co-authored-by: Lorent Lempereur <lorent.lempereur@n8n.io>
2026-08-21 23:17:17 +00:00
Lorent Lempereur
b33d0da323
feat(core): Add baseline Prometheus metrics for poll triggers (no-changelog) (#36250)
Co-authored-by: Danny Martini <danny@n8n.io>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-08-17 13:13:25 +00:00
Emilia
026cee3507
feat(core): Coalesce a Schedule Trigger node's catch-up runs after downtime (#35524)
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
Co-authored-by: Lorent Lempereur <lorent.lempereur@n8n.io>
2026-08-14 13:04:09 +00:00
Iván Ovejero
c0acde43a1
ci: Run PR pipeline on Node 26 (#34032)
Co-authored-by: Danny Martini <danny@n8n.io>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-08-14 07:54:25 +00:00
Emilia
8672d9567c
feat(core): Add a misfire policy to the durable scheduler (#35075)
Some checks are pending
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.18.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
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
2026-07-30 10:10:31 +00:00
Lorent Lempereur
27edc54356
fix(core): Accept 5-field cron expressions in schedule trigger (#35006) 2026-07-27 11:23:14 +00:00
Emilia
705f97e1bb
fix(core): A new schedule trigger's first occurrences must be seeded on activation (no-changelog) (#34356)
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-16 16:11:30 +00:00
Lorent Lempereur
0abb754421
test: Add dependency purity guard for @n8n/scheduler (#34346) 2026-07-16 15:51:57 +00:00
Lorent Lempereur
960f6a1db6
refactor(core): Require task handlers to return an explicit dispatch decision (#34276)
Co-authored-by: Emilia <100027345+sovietspaceship@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-16 14:43:33 +00:00
Emilia
9aa19a7198
fix(core): Claim scheduler jobs ahead of due to remove materializer window-boundary lag (no-changelog) (#34331)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-16 11:33:57 +00:00
Lorent Lempereur
e22680b99f
fix(core): Close the durable scheduler's record-then-dispatch effect boundary (#34014)
Co-authored-by: Emilia <100027345+sovietspaceship@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-16 09:47:10 +00:00
Lorent Lempereur
038d2ca286
feat(core): Add durable scheduler rollout docs and observability warnings (no-changelog) (#34170)
Some checks are pending
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.16.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
Co-authored-by: Emilia <100027345+sovietspaceship@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-14 21:30:07 +00:00
Lorent Lempereur
b3a0a47217
feat: Wire the Schedule Trigger node into the durable scheduler (no-changelog) (#33973)
Co-authored-by: Emilia <100027345+sovietspaceship@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-14 09:23:34 +00:00
Lorent Lempereur
1d662876d3
feat: Add durable scheduler job provisioning (no-changelog) (#33970)
Co-authored-by: Emilia <100027345+sovietspaceship@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-10 16:17:11 +00:00
Emilia
3b24f493d8
test(core): Add durable scheduler property-based and mutation testing (no-changelog) (#33928)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Co-authored-by: Lorent Lempereur <lorent.lempereur@n8n.io>
2026-07-10 14:58:58 +00:00
Lorent Lempereur
fa7e97130b
feat(core): Add recurring_cron schedule kind to the durable scheduler (no-changelog) (#33858) 2026-07-10 12:48:20 +00:00
Emilia
17f8fa841e
feat(core): Add tracing spans to the durable scheduler (no-changelog) (#33748)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
Co-authored-by: Lorent Lempereur <lorent.lempereur@n8n.io>
2026-07-10 10:45:21 +00:00
Emilia
7f4ec7af62
feat(core): Add Durable Scheduler metrics and instrumentation (no-changelog) (#33853)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2026-07-09 10:46:04 +00:00
Lorent Lempereur
2cc5785e09
feat(core): Run durable scheduler lifecycle loops on every main (no-changelog) (#33764)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Emilia <100027345+sovietspaceship@users.noreply.github.com>
2026-07-08 09:57:14 +00:00
Lorent Lempereur
41581cd818
refactor(core): Expose a composable Scheduler surface from @n8n/scheduler (no-changelog) (#33677) 2026-07-07 12:24:51 +00:00
Emilia
ca6d1aff62
feat(core): Add durable scheduler reaper and lease-epoch fencing (no-changelog) (#33573)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-06 10:42:23 +00:00
Lorent Lempereur
36c37f4488
feat(core): Add durable scheduler retention pruning (no-changelog) (#33616) 2026-07-06 08:59:34 +00:00
Lorent Lempereur
e43c5c18a2
feat(core): Add durable scheduler materialization sweep (no-changelog) (#33506) 2026-07-03 15:50:51 +00:00
Emilia
645a65f35d
feat(core): Add durable scheduler executor (claim + dispatch + lease) (no-changelog) (#33497)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Co-authored-by: Lorent Lempereur <lorent.lempereur@n8n.io>
2026-07-03 13:13:50 +00:00
Emilia
3286414ac0
feat(core): Add durable scheduler storage adapter (no-changelog) (#33394)
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.16.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: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-02 13:16:26 +00:00
Emilia
de7743fc61
feat: Add @n8n/scheduler package scaffold for Durable Scheduler (no-changelog) (#33294)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-30 15:53:22 +00:00