📦 Changelog 8.9

MAJOR 2026-02-14

Orion downtime windows + Nino no-spoil + Sonora refresh

Orion - Agent View

  • Ajout du downtime service directement depuis la vue agent
  • Support d'une plage de downtime manuelle (start/end) par service
  • Ajout du ghost manuel d'une alerte depuis la vue agent
  • Rendu live des alertes agent avec actions ACK + Ghost
  • Section Disques a ignorer repartee (checklist depuis les disques detectes)
  • Ajout downtime par type d'alerte (CPU/RAM/Disk) dans la configuration agent

Orion - Alert Pipeline

  • Les alertes en downtime ou ghostees sont auto-mutees par LUMA
  • Les alertes mutees passent en statut resolved sans notification
  • Ajout des metadonnees muted/muted_by pour tracabilite
  • Regles Discord: warning => pas de notif Discord
  • CPU critique: notif Discord uniquement si 10 alertes CPU critiques actives (sinon supervision only)
  • Option pour ignorer les alertes disque pendant reparation (si remontee agent)

Orion - Dashboard

  • Graphique utilisation CPU (24h) sur le dashboard
  • Fallback intelligent: la fenetre 24h est calculee depuis la derniere mesure CPU disponible

Orion - Keys

  • Ajout de la regeneration de cle API agent depuis LUMA
  • Nouveau endpoint backend de rotation cle API

Nino - Dashboard

  • Amelioration du titre et du header du planning des sorties
  • Ajout d un caption de table pour les sorties programmees
  • Style des titres cliquables dans les tableaux (plus de violet visited)
  • Clamp du titre video dans les tableaux (2 lignes max + ellipsis)
  • Correctif chargement des videos (liste non vide + pagination coherente)
  • Correctif accessibilite modals (focus restore + inert au lieu de aria-hidden)

Nino - No Spoil

  • Ajout de l'option no_spoil sur les videos (masque le contenu non sorti)
  • Les pages series masquent automatiquement les episodes non sortis si no_spoil est actif
  • Le compteur d'episodes affiche les episodes visibles (pas le total)
  • Suppression du message 'mode no spoil actif' dans la liste des series

Nino - Editeur Video

  • Refonte layout en 2 colonnes (formulaire + sidebar fichiers/apercu)
  • Sections plus claires pour les nouveaux utilisateurs (Contenu, Publication, Organisation, Lecture)
  • No spoil et 18+ integres au design via switch + texte explicatif
  • Etat de sauvegarde visible + Ctrl/Cmd+S + protection anti-perte (beforeunload)
  • Sauvegarde sans rechargement de page (plus fluide)

Nino - Accueil

  • Hero conserve avec action Plus d infos
  • Nouveau layout en shelves (Reprendre, Dernieres, Series) avec fleches de navigation
  • Barre de raccourcis sticky (sections + categories detectees)
  • Generation automatique de rails par categories (si assez de videos)
  • Cartes series: affichage du nombre d'episodes visibles (nouvelle politique no-spoil)

Sonora - Admin Studio

  • Refresh UI de l'interface admin Sonora (studio, imports, library)
  • Toolbar plus claire: recherche, refresh, rescan et zone d'upload
  • Badges dynamiques sur imports/library (compteurs live)

Admin - Library Covers

  • Ajout d'un bouton Cover dans la library Sonora (upload direct depuis LUMA)
  • Upload proxy vers Sonora: envoi multipart/form-data (cover ou file) via endpoint admin

Admin - Users

  • Correctif encodage/accents sur la page admin des utilisateurs

Core Platform

  • Correctif crud.v3: remonte les erreurs sql.v3 au lieu de retourner des listes vides
  • buildWhere supporte les references qualifyees (table.col) dans les filtres

API Agents

  • Nouveau endpoint GET /api/orion/agents/:id pour recuperer l'agent complet
  • Nouveau endpoint POST /api/orion/agents/:id/services/downtime
  • Nouveau endpoint POST /api/orion/agents/:id/alerts/:alertId/ghost
  • Nouveau endpoint POST /api/orion/agents/:id/rotate-api-key
  • PUT /api/orion/agents/:id/config passe en merge pour preserver les cles existantes

Agent Comm

  • Le endpoint /api/orion/comm/alert lit config_pushed pour appliquer downtime/ghost
  • Signature ghost supportee: alert_type::source
  • Les notifications sont skippees si l'alerte est mutee
  • Support downtime par type: config_pushed.alerts_downtime (+ ranges optionnelles)
  • Support downtime windows par service: config_pushed.services_downtime_ranges
  • Support ignore_disk_repairs: mute des alertes disk si metadata indique une reparation

Dashboard Charts

  • Nouveau endpoint GET /api/orion/dashboard/charts/cpu?hours=24&bucket=300
  • Serie CPU (AVG/MAX) aggregee depuis orion_metrics

UI Orion

  • Nouveaux controles downtime dans la table services
  • Nouveaux badges et actions dans le bloc alertes
  • Bouton de regeneration cle API dans l'onglet configuration
  • Generation des checkboxes ghosted_disks depuis les metriques disques

API Nino

  • Nouveau endpoint GET /api/nino/videos/releases?limit=30 pour le planning des sorties
  • No-spoil expose dans les payloads videos/series pour la politique de visibilite

API Admin Sonora

  • Nouveau endpoint PUT /api/admin/sonora/library/:id/cover (proxy vers /api/library/:id/cover)
  • Accepte multipart/form-data (champ cover ou file) et forward vers Sonora