BaaRai
353a947285
fix(tasks): freeze the timeout budget while a task is paused
...
deadline_at is a wall-clock timestamp, so pause time counted against the
task timeout: pausing overnight (or shutting the machine down while
paused) made the deadline ring while parked, and resuming landed
straight into the settle sequence and a timeout terminal state.
ApplyTaskPause now stamps paused_at, and ApplyTaskAdmission credits the
paused interval back onto deadline_at in the same atomic UPDATE that
ends the pause (paused_at is cleared there too). The shifted deadline
flows to the live handle via the existing RETURNING mirror, so the
engine clock context picks it up. Matches the re-basing the
archive-restore path already did for paused tasks.
Migration is an idempotent ADD COLUMN; tasks paused before the upgrade
have no paused_at and keep the old behavior.
Fixes #1
2026-10-09 11:37:30 +02:00
..
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-08-28 15:25:20 +08:00
2026-08-28 07:37:24 +08:00
2026-10-08 23:14:34 +02:00
2026-08-24 19:29:14 +08:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-08-31 12:20:31 -04:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-08-24 19:29:38 +08:00
2026-08-25 14:56:15 +08:00
2026-07-26 04:27:45 -04:00
2026-08-28 15:25:20 +08:00
2026-10-08 23:14:34 +02:00
2026-09-09 11:52:15 -04:00
2026-08-24 19:29:00 +08:00
2026-08-28 14:03:07 +08:00
2026-10-08 23:14:34 +02:00
2026-09-11 08:47:57 +08:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-09-10 13:03:20 +08:00
2026-09-10 13:03:20 +08:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-08-24 19:29:00 +08:00
2026-08-24 19:29:00 +08:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-09-15 20:08:12 +08:00
2026-09-15 23:51:37 +08:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-09-12 03:00:28 -04:00
2026-08-25 09:40:05 -04:00
2026-10-04 02:43:26 -04:00
2026-08-24 19:28:18 +08:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-07-26 04:27:45 -04:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-09 11:37:30 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-09-11 00:41:01 +08:00
2026-10-08 23:14:34 +02:00
2026-08-24 19:30:14 +08:00
2026-08-28 12:56:29 +08:00
2026-08-28 12:56:29 +08:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-08-24 09:16:44 -04:00
2026-08-24 09:16:44 -04:00
2026-08-24 19:29:00 +08:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00
2026-08-24 19:29:00 +08:00
2026-10-08 23:14:34 +02:00
2026-08-28 08:00:36 +08:00
2026-08-25 14:56:15 +08:00
2026-08-24 19:29:00 +08:00
2026-08-09 09:09:59 -04:00
2026-10-08 23:14:34 +02:00
2026-08-24 19:29:00 +08:00
2026-08-24 19:29:46 +08:00
2026-09-19 09:27:03 -04:00
2026-10-08 23:14:34 +02:00
2026-10-09 11:37:30 +02:00
2026-07-26 04:27:45 -04:00
2026-08-25 12:05:26 +08:00
2026-08-28 12:56:29 +08:00
2026-10-08 23:14:34 +02:00
2026-10-08 23:14:34 +02:00