Changelog
Kestrel Platform
Every user-visible change to the Kestrel API, CLI and dashboard. Dates are the day a release reached the stable channel.
Breaking Two changes need action before you upgrade
-
GET /v1/runsno longer returnssteps[]inline. Fetch them from/v1/runs/:id/steps, or pass?expand=stepsfor the old shape. The inline field is removed for good in 5.0. -
The CLI reads
KESTREL_TOKEN, notKESTREL_API_KEY. The old variable still works until 1 Dec 2026 and prints a deprecation warning on every invocation.kestrel doctortells you which one you are on.
4.3.0
4 Sep 2026
Current
Scheduled runs get a real backfill story, the run log stops truncating at 10k lines, and the dashboard finally remembers which workspace you were in.
-
Added
Backfill for scheduled runs
kestrel schedule backfill <id> --from 2026-08-01replays a schedule over a past window, at most 50 runs at a time, with the same concurrency limit as live execution.#2841 · docs/schedules#backfill
-
Added
Run log streaming over SSE
GET /v1/runs/:id/logs?stream=trueemits log lines as they are written. Logs are retained for 30 days on Team plans, 7 on Free.#2803
-
Changed
Run logs keep the last 200k lines, not 10k
Long-running jobs were silently losing their tail, which is precisely the part anyone reads. Older lines are now dropped from the head instead.
#2790 · reported by 14 workspaces
-
Fixed
Retries no longer double-count against the rate limit
An automatic retry consumed two units of quota instead of one. Affected workspaces have had the difference credited back to the current billing period.
#2822 · severity: high
-
Removed
The legacy
/v0endpoints are goneDeprecated since March, at 0.02% of traffic for the last eight weeks. Every caller was contacted directly in August.
#2755 · announced 12 Mar 2026
4.2.2
21 Aug 2026
Patch
A patch release: one regression from 4.2.0 and two small corrections.
-
Fixed
Webhook signatures verified against the wrong secret after rotation
For roughly six hours after a secret was rotated, deliveries were signed with the retired key. Rotation now writes both keys and accepts either for 24 hours.
#2731 · postmortem published
-
Changed
Timeouts are reported in seconds everywhere
The API returned milliseconds, the CLI printed seconds, and the dashboard mixed both.
#2724
Six earlier releases, 4.0.0 – 4.2.1
- 4.2.1Hotfix: dashboard failed to load for workspaces with over 500 schedules.
- 4.2.0Schedules, per-workspace concurrency limits, and the run timeline view.
- 4.1.2Fixed token refresh in the Python SDK; CLI binaries signed for macOS 15.
- 4.1.0Webhooks with signed payloads and per-event delivery history.
- 4.0.1Fixed the migration that left duplicated rows in
run_steps. - 4.0.0The 2026-06-01 API version, workspaces, and the rewritten CLI.