veza/REMEDIATION_PLAN.md

2.4 KiB

🛠️ PLAN DE REMÉDIATION : FULL AUDIT FIX

Branche : remediation/full_audit_fix
Base : REPORT_STATUS_2025_12_06.md

Ce plan détaille la liste exhaustive des tâches techniques pour résoudre toutes les dettes critiques identifiées.


🟥 P0 — CRITIQUE (Immédiat)

1. Backend: Supprimer time.Sleep bloquant dans les workers

  • Tâche : Remplacer le sleep bloquant par un re-queueing différé.
  • Fichier : veza-backend-api/internal/workers/job_worker.go
  • Solution : Utiliser une goroutine séparée pour le délai ou un champ RunAt dans le job structure, mais comme la queue est in-memory, le plus simple est time.AfterFunc qui re-enqueue le job.

2. Backend: Suppression totale de migrations_legacy

  • Tâche : Supprimer le dossier et les scripts obsolètes.
  • Cible : veza-backend-api/migrations_legacy/, veza-backend-api/cmd/main.go.legacy

3. Stream Server: Sécuriser l'arrêt des tâches (abort)

  • Tâche : Remplacer abort() brutal par CancellationToken.
  • Fichier : veza-stream-server/src/core/processing/processor.rs
  • Solution : Utiliser tokio_util::sync::CancellationToken.

🟧 P1 — HAUTE PRIORITÉ (Robustesse)

4. Chat Server: Implémenter Heartbeat

  • Tâche : Ajouter un ping/pong check avec timeout.
  • Fichier : veza-chat-server/src/websocket/handler.rs

5. Chat Server: Graceful Shutdown

  • Tâche : Ajouter with_graceful_shutdown au serveur Axum.
  • Fichier : veza-chat-server/src/main.rs

6. Backend: Réparer room_handler_test.go

  • Tâche : Réactiver et corriger les tests unitaires.
  • Fichier : veza-backend-api/internal/handlers/room_handler_test.go

7. Chat Server: Validation Auth (TODO)

  • Tâche : Implémenter la validation manquante dans security/mod.rs.
  • Fichier : veza-chat-server/src/security/mod.rs

🟨 P2 — MOYENNE (Cleaning & Monitoring)

8. Monitoring & Métriques

  • Tâche : Implémenter de vraies métriques mémoire/CPU (actuellement dummy).
  • Fichier : veza-chat-server/src/monitoring.rs

9. Stream Server Code Mort

  • Tâche : Supprimer core/encoder.rs si obsolète ou le nettoyer.

10. Queue Persistence

  • Tâche : (Optionnel dans ce sprint) Préparer la structure pour queue DB.

📝 Journal d'exécution

(Sera rempli au fur et à mesure)