Tomáš Dvořák and Devin
269e031761
refactor(db): port cron jobs to sqlc ( #80 )
...
Tranche 6 — 15 of 17 raw sites in cron.go. Adds cron_jobs and
cron_executions to schema.sql and a full query set: job CRUD, owner
joins (via project and via service), execution list/insert/finish,
due-job scan for the scheduler, run bookkeeping, and retention trim.
The filtered list query and the sparse UPDATE builder stay raw — both
are genuinely dynamic. Go models keep string IDs; cronJobFrom and
cronExecutionFrom map uuid/null types at the boundary.
TestCronLiveInvariants covers insert/read, both owner joins, the
trigger read, execution lifecycle, retention trim, and delete on live
Postgres.
Generated with [Devin](https://devin.ai )
Co-authored-by: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-10 04:27:16 +02:00
..
2026-10-09 12:41:26 +02:00
2026-10-09 10:52:15 +02:00
2026-10-09 10:52:15 +02:00
2026-10-09 10:43:12 +02:00
2026-04-10 12:02:36 +02:00
2026-10-10 00:07:30 +02:00
2026-09-17 09:40:08 +02:00
2026-10-09 20:30:33 +02:00
2026-04-10 12:02:36 +02:00
2026-10-09 10:52:15 +02:00
2026-09-21 18:05:22 +02:00
2026-10-09 10:43:12 +02:00
2026-10-08 22:54:36 +02:00
2026-10-08 23:07:27 +02:00
2026-10-09 10:10:18 +02:00
2026-04-10 12:02:36 +02:00
2026-04-10 12:02:36 +02:00
2026-09-22 19:58:59 +02:00
2026-10-10 04:27:16 +02:00
2026-10-10 04:27:16 +02:00
2026-10-04 09:01:28 +02:00
2026-10-09 12:12:21 +02:00
2026-10-08 22:09:42 +02:00
2026-10-08 22:09:42 +02:00
2026-10-10 02:17:36 +02:00
2026-10-10 04:01:40 +02:00
2026-10-10 04:18:51 +02:00
2026-10-10 03:25:07 +02:00
2026-10-10 01:17:32 +02:00
2026-10-08 15:38:36 +02:00
2026-09-22 19:58:59 +02:00
2026-04-10 12:02:36 +02:00
2026-10-10 00:29:57 +02:00
2026-10-10 00:29:57 +02:00
2026-09-17 10:30:36 +02:00
2026-10-09 11:13:37 +02:00
2026-04-10 12:02:36 +02:00
2026-10-09 10:43:12 +02:00
2026-10-09 20:30:33 +02:00
2026-10-09 10:43:12 +02:00
2026-09-22 19:58:59 +02:00
2026-10-09 18:43:33 +02:00
2026-10-09 10:35:12 +02:00
2026-09-22 19:58:59 +02:00
2026-09-22 19:58:59 +02:00
2026-10-09 20:30:33 +02:00
2026-10-10 01:39:09 +02:00
2026-10-10 01:39:09 +02:00
2026-10-09 12:12:21 +02:00
2026-10-09 12:41:26 +02:00
2026-10-10 01:39:09 +02:00
2026-10-09 09:51:38 +02:00
2026-10-08 15:38:36 +02:00
2026-10-08 15:38:36 +02:00
2026-09-17 09:40:08 +02:00
2026-10-10 00:54:07 +02:00
2026-10-10 04:01:40 +02:00
2026-09-22 19:58:59 +02:00
2026-10-09 10:52:15 +02:00
2026-10-09 01:04:19 +02:00
2026-04-10 12:02:36 +02:00
2026-10-08 17:21:27 +02:00
2026-10-08 17:08:35 +02:00
2026-10-10 02:17:41 +02:00
2026-10-10 04:18:51 +02:00
2026-09-22 19:58:59 +02:00
2026-09-22 19:58:59 +02:00
2026-10-09 12:12:21 +02:00
2026-10-10 03:25:07 +02:00
2026-10-09 23:47:25 +02:00
2026-10-09 23:47:25 +02:00
2026-10-09 10:22:58 +02:00
2026-10-10 02:17:41 +02:00
2026-10-09 00:22:28 +02:00
2026-10-09 22:40:35 +02:00
2026-10-08 16:23:28 +02:00
2026-10-09 23:25:34 +02:00
2026-10-09 00:33:27 +02:00
2026-10-09 23:25:34 +02:00
2026-10-09 12:46:35 +02:00
2026-10-09 23:25:34 +02:00
2026-10-09 23:25:34 +02:00
2026-10-09 11:13:34 +02:00
2026-10-08 15:38:36 +02:00
2026-10-08 17:08:35 +02:00
2026-10-08 16:38:46 +02:00
2026-10-10 02:34:51 +02:00
2026-10-09 09:44:08 +02:00
2026-04-10 12:02:36 +02:00