
gillesandClaude Opus 4.8
ff9cfaa9e1
feat(scheduler): automatisations planifiées (cron) — tâche 5
- table schedules (migration 0007) + service scheduler (croner) : CRUD,
runSchedule avec scope (all/liste), pool de concurrence et verrou par machine,
mapping actions → refresh/metrics/docker_scan ; reloadSchedules au boot
- worker = reloadSchedules (remplace le refresh 30 min en dur)
- routes /api/schedules (CRUD + :id/run) ; cron invalide rejeté (validation croner)
- UI Paramètres : onglet « Automatisations » (liste, activer/lancer/supprimer, création)
tsc 0 · 113 tests · build OK · boot OK (migration 0007, CRUD vérifié).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 19:25:44 +02:00
..
2026-06-05 19:50:25 +02:00
2026-06-06 08:02:32 +02:00
2026-06-05 19:50:25 +02:00
2026-06-05 19:50:25 +02:00
2026-06-06 07:53:47 +02:00
2026-06-05 19:50:25 +02:00
2026-06-05 19:50:25 +02:00
2026-06-06 18:41:11 +02:00
2026-06-06 18:41:11 +02:00
2026-06-05 19:50:25 +02:00
2026-06-05 19:50:25 +02:00
2026-06-05 19:50:25 +02:00
2026-06-05 19:50:25 +02:00
2026-06-06 06:13:03 +02:00
2026-06-06 06:05:59 +02:00
2026-06-06 06:05:59 +02:00
2026-06-05 21:02:38 +02:00
2026-06-06 06:05:59 +02:00
2026-06-05 20:54:52 +02:00
2026-06-06 06:24:43 +02:00
2026-06-06 19:12:39 +02:00
2026-06-06 17:01:45 +02:00
2026-06-06 17:01:45 +02:00
2026-06-06 18:36:49 +02:00
2026-06-06 18:36:49 +02:00
2026-06-05 04:03:51 +02:00
2026-06-06 19:12:39 +02:00
2026-06-05 19:50:25 +02:00
2026-06-05 19:50:25 +02:00
2026-06-06 12:40:20 +02:00
2026-06-06 19:12:39 +02:00
2026-06-05 19:50:25 +02:00
2026-06-05 19:50:25 +02:00
2026-06-05 04:04:28 +02:00
2026-06-05 19:50:25 +02:00
2026-06-05 04:05:23 +02:00
2026-06-05 04:05:23 +02:00
2026-06-06 19:25:44 +02:00
2026-06-05 19:50:25 +02:00
2026-06-05 19:50:25 +02:00