mirror of
https://github.com/windmill-labs/windmill.git
synced 2026-09-21 08:02:38 +00:00
The catch block was the one probe-less way to arm a retry: a catch-up whose loadPastChat threw after a newer turn-end queued would schedule a retry carrying its stale chat id, which could then supersede the newer catch-up and re-adopt — and re-persist — the chat the driver rotated away from. The catch now makes the same supersession check the 'unavailable' path already sits behind, so a superseded failure leaves the gate and the retry to the catch-up that owns them. Also makes the latestWins failure case actually fail: both run calls were synchronous, so the throwing task was skipped as superseded and the catch went unexercised. A tick between them lets it throw, and the suite now asserts the error was seen as well as the follow-up running. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019N8x51GqABUEFvg52V6aYo
Windmill frontend
The Windmill frontend written in Svelte 5 + Tailwind CSS
The frontend is under AGPL, see the LICENSE file at the root of this repo