Retour à la leçon
Mission

Mission : les emails de facturation perdus lors d'un redémarrage

Corriger un mauvais usage de BackgroundTasks pour une tâche critique et l'utiliser correctement pour une tâche non critique.

Contexte

POST /orders/{id}/invoice de app/routers/orders.py utilise background_tasks.add_task(send_invoice_email, order_id) pour envoyer la facture par email. Le service a redémarré trois fois cette semaine pour des déploiements, et une poignée de clients n'a jamais reçu sa facture, sans qu'aucune erreur n'apparaisse nulle part. Par ailleurs, POST /users bloque encore le client 3 secondes pour un email de bienvenue non critique.