Tâche
📝 **Question :** Implémentez `CircuitBreaker`. fail_max=2, récupération=10. 2 échoue → s'ouvre. Appeler pendant l'ouverture → RuntimeError. Après 10 s → half_open ; succès → fermé. Imprimer les résultats pour : 2 appels échoués, 1 tentative en ouverture, avance du temps, 1 appel réussi.
📋 Choisissez la bonne réponse.
💡 **Indice :** Relisez la théorie ci-dessus en cas de doute.