v2.0.4
MinorPublished on September 29, 2026
Changelog
🚀 Features
controller
328de91add tenancy access check (#19689), closes #19689
core
721b8caadd isDateBetween() Pebble function, closes #19502
execution
4e9ffc4allow to break out of Loop iterations
triggers
5677a89link each trigger to the executions it created (#19816), closes #12784 #19816
worker
4fbfda0reach the KV store through the controller, configurably (#19812), closes #19812b267293chunked streaming on the worker controller grpc surface204b9a6carry the client edition on gRPC requests (#19525), closes #19525
📘 Subtasks
version
d97ca67update to version '2.0.4'
🐛 Bug Fixes
ai
dd8b0e2keep copilot custom header names verbatim for yaml providers (#19677), closes #196777b39a05keep the copilot hero visible and the empty state scrollable on short viewports (#19800), closes #19777 #19800
core
e2cbf2chandle Kestra markers inside OTLP log bodies (2.0.x) (#19902), closes #19902215acdbcompilation issuea5d1325resolve host from raw authority in HTTP allow/deny-list matching4c34bbaorder SubflowExecutionEnd batch locks by parent to avoid executor deadlock (#19745) (#19750), closes #19745 #19750
design-system
c6cd65fcenter one-line alerts (#19761), closes #197614634b2aawait the i18n registration install starts (#19743), closes #19743a1ebfde29 --ks-* references that resolve to nothing (#19193), closes #18777 #19088 #19193
executions
6e0747da kill ends a retrying task run, and an expired retry never revives a killed execution, closes #19679
executor
b220d10only expose dependsOn executions outputs in Flow trigger outputs (#19810), closes #19810bc86c85release the lease of a WorkingDirectory once it ends, closes #19678fdd3614do not resubmit a task run that has already ended, closes #19678
flows
219d6ddsuggest nested and errors task ids afteroutputs.(#19888), closes #11079 #19888869475afilter the blueprint tag list by the search (#19855), closes #19782 #19855
iam
fbbe901resolve the MCP server id from the matched route, not the raw path
plugins
cb7c65eshow the class name first when picking a type in the editor (#19747), closes #19747ba99e32plugin scan in configs commands (#19737), closes #13741 #19737c72b638prevent installed versions from leaking across navigation (#19735), closes #19735
system
edca577keep /prometheus reachable on the management endpoint (#18258), closes #18258
ui
3cbcca0add blueprint template argument validation to the blueprints storee6cd260add templateArgumentsOrder to the flow blueprint template type
worker
6c2ea77report a forced termination when results may not have reached the controller, closes #196806dbe5b2reclaim the worker jobs orphaned by an inactive worker, closes #19680
🏭 Tests
executions
3ba78b6run the real DefaultExecutor in the testkit, one delivery at a time
01cf5012.0.x: executor refactor (ExecutorCore, injectable clock) and executor test kit (#19714), closes #19517 #19714
Contributors
We'd like to thank the following people for their contributions: Barthélémy Ledoux, Claude, Claude Opus 5 (1M context), Claude Opus 5.5, Dhruv Gupta, Florian Hussonnois, François Delbrayelle, GitHub, Loïc Mathieu, Malay Dewangan, Maxime Wojtczak, Miloš Paunović, Nicolas K., Piyush Bhaskar, Roman Acevedo, Rémi Barthe, Sheikh Limon, Steven Meek, YannC, YannC., Yerang-RB, github-actions[bot], nKwiatkowski