Cédric Hansen 209a4e4ace fix: remplace ResizeObserver par syncHeaderSpacer au load/resize/toggle activité vor 1 Monat
..
blueprints de12f60340 fix: cron_expr stocké "" au lieu de None pour compatibilité schéma SQLite existant vor 1 Monat
federation 3dbff1a364 fix: pull — dernière archive via job_id + .info.json + cleanup runs bloqués toutes les heures vor 1 Monat
jobs 81fc1d6e8f feat: navbar sticky, planification manuelle, actions groupées, archives rapides, filtre apps vor 1 Monat
static 81fc1d6e8f feat: navbar sticky, planification manuelle, actions groupées, archives rapides, filtre apps vor 1 Monat
templates 209a4e4ace fix: remplace ResizeObserver par syncHeaderSpacer au load/resize/toggle activité vor 1 Monat
app.py 4de605277e feat: refonte UI — onglets Fédération/Paramètres, barre d'activité, navigateur d'archives, boutons unifiés vor 1 Monat
db.py de12f60340 fix: cron_expr stocké "" au lieu de None pour compatibilité schéma SQLite existant vor 1 Monat
helpers.py 81fc1d6e8f feat: navbar sticky, planification manuelle, actions groupées, archives rapides, filtre apps vor 1 Monat
init_db.py 3402e0407b feat: Phase 2 — destinations rsync SSH vor 1 Monat
notifications.py 391cdb3475 feat: Phase 2 — notifications email vor 1 Monat
requirements.txt f46202ff84 feat: Phase 3A+3B — DB fédération, API REST complète, instances distantes UI + client HTTP vor 1 Monat
retention.py 8ec90bddc3 fix: accès archives root — sudo stat/find pour les opérations sur backup_dir vor 1 Monat
scheduler.py 81fc1d6e8f feat: navbar sticky, planification manuelle, actions groupées, archives rapides, filtre apps vor 1 Monat