| Carrier non qualifié, drain ou absence de réponse A | La gate signée v1 refuse l’activation sans qualification courante. Après qualification terrain, le carrier cible devrait tenter A puis B pour le nouvel appel. | Le nouvel appel reste fermé sans qualification; un dialogue établi reste sur sa cellule et peut être coupé avec elle. | Contrôle interne présent et modèle fermé local; zéro qualification terrain, aucun chaos A/B, carrier ou PSTN réel. Production NO-GO. |
| RTPEngine indisponible | Nouvelle admission refusée fail-closed | Pas de média non ancré accepté | Refus ciblé en lab; continuité d’un appel actif non qualifiée |
| TURN/coturn indisponible ou credential expiré | Refuser le nouveau relais et conserver uniquement les chemins média directement joignables; ne jamais élargir le firewall en repli | Les softphones hors LAN ou derrière un NAT strict peuvent devenir injoignables, même si le PBX reste sain | Un lab local A/B exerce coturn, mais aucun broker de credentials, navigateur réel, certificat opéré, panne DNS/ACME ou SLO de production n’est qualifié. NO-GO |
| Asterisk ou bridge perdu | Fin de session locale, cause technique et nettoyage | Appel actif perdu | Nettoyage local ciblé; aucune reprise cross-cell |
| Bridge public Twilio ou ingress perdu | Les nouvelles sessions sont refusées; signature, numéro, CallSid et socket unique restent obligatoires | Le VoiceBot Twilio devient inaccessible et l’appel actif peut être coupé; aucun appel n’est migré | Code local sur 127.0.0.1; aucun ingress, webhook, numéro public, DDoS, HA, charge ou appel réel. Promotion NO-GO |
| Media WS / worker perdu | Génération annulée, aucun ACK courant et aucun commit | Bot retiré ou handoff humain | Flush/cleanup local prouvés; reprise transparente absente |
| STT indisponible | Le bot ne fabrique pas de transcript; repli humain | Conversation IA suspendue, téléphonie maintenue | Contrat cible; STT streaming souverain E2E absent |
| LLM indisponible ou invalide | Réponse sûre déterministe ou handoff | Naturalité réduite, protocole critique conservé | Code/contrats partiels, aucun SLO modèle cloud |
| Fournisseur IA externe indisponible ou refusé | Couper l’egress concerné, refuser l’issue inconnue et utiliser un repli local, déterministe ou humain | Voix ElevenLabs ou résumé Anthropic/OpenRouter indisponible; aucune action sensible ne progresse | Adaptateurs présents et LOCAL_ONLY fail-closed; contrat, résidence, rétention, quotas, coût, qualité, sous-traitants et SLO non prouvés. NO-GO |
| Runtime STT/TTS local saturé ou arrêté | Retirer le moteur de la readiness, ne fabriquer ni transcript ni audio et transférer à un humain | Assistant vocal suspendu; téléphonie indépendante maintenue si le parcours humain fonctionne | Adaptateurs, sidecars et bancs partiels; modèle exact, images, capacité, crash/reprise, isolation et SLO non qualifiés. Production NO-GO |
| Prepare, TTS ou ACK | Prepare annulable avec timeout 6 s par défaut, borne 0,5 à 15 s; ACK 3 s par défaut, borne 0,25 à 10 s. Refus, exception ou issue inconnue: failed immédiat ou fail-closed, aucun commit. | Une annulation confirmée garde la connexion; les autres échecs produisent silence ou repli, jamais progression fictive. | Contrats et tests logiciels; audition humaine, cloud et PSTN non prouvés. |
| VoiceBot absent | Navy Phone conserve PBX, file, SVI et agent humain | Fonctions de crise indisponibles, appel maintenu | Frontière produit décidée; scénario cloud non exercé |
| Sentinelle vocale indisponible ou ambiguë | La conversation continue; l’interface indique que le signal consultatif manque et laisse toute décision à l’humain | Perte d’une aide de supervision, sans blocage automatique de l’appelant | Divergence Whisper partielle; sidecar /analyze répond 503 faute d’adapter anti-spoof. Erreurs, biais, replay et revue humaine non qualifiés. NO-GO |
| Session ou identité VoiceBot invalide | 401 si session absente, expirée ou restreinte; panne du session store: 503 no-store sans fetch/token; identité machine absente: 503 sans fetch | Headers filtrés et réponse bornée à 1 MiB; téléphonie indépendante | 17/17 dans 4 fichiers, 11 chemins et 12 handlers; endpoint, rotation et scénario cloud non exercés |
| PostgreSQL / CAS indisponible | Aucun commit décisionnel; admission ou action sensible fermée | État conversationnel non avancé | Cible; aucune base cloud ni bascule DB |
| navy.db locale corrompue ou reprise interrompue | Le strict v2 refuse l’archive hostile avant mutation ou restaure/annule via journal dans une cible isolée; un SIGKILL pendant l’initialisation abandonne sûrement puis accepte le retry; le finalizer committed-success refuse un succès avec journal résiduel | Le mécanisme limite l’écriture partielle dans le lab; aucun délai réel de retour du service n’est connu | Snapshot de 126 sources; 48/48 tests recovery dont 42 scénarios hostiles internes et 81/81 sur quatre suites. Archive réelle, RPO/RTO, processus complet, média et appel de contrôle absents |
| Email Resend refusé, lent ou non livré | La livraison reste inconnue; aucun lien n’est affiché comme repli et la procédure administrateur doit rester séparée | Invitation, vérification ou réinitialisation retardée; le compte ne doit pas être présenté comme activé | Adaptateur présent; erreurs absorbées et stub qui journalise le message en développement. Domaine, délivrabilité, retry, webhook et contrat non prouvés. NO-GO |
| Messagerie ou stockage du message indisponible | Arrêter la capture et terminer proprement sans annoncer qu’un message a été conservé | L’appelant ne peut pas déposer son message; les fichiers existants doivent rester protégés | Parcours logiciel présent; consentement, stockage, quotas, notification, rétention, restauration, charge et PSTN non prouvés. NO-GO |
| Timer ou décision de non-réponse ambiguë | Revérifier l’appel après chaque attente; relire deux fois une décision ambiguë; agir seulement après un claim durable; sortir l’IVR immédiatement après ses relances bornées; utiliser le prompt générique si seule sa métadonnée échoue après commit | Un appel déjà terminé reste inerte. Une panne persistante peut fermer le parcours, mais ne crée ni messagerie ni transfert non autorisé | Tests locaux sur accusé perdu, réponse concurrente par action, raccrochage pendant le claim ou lookup, retry borné et épuisement IVR; crash PBX/DB réel, double worker, boucle de transfert, charge et SLO non prouvés. NO-GO |
| Poste opérateur hors ligne ou session inaccessible | Passage en lecture seule, brouillon borné et aucun rejeu automatique avant vérification de /api/connectivity | Les nouvelles actions de crise sont bloquées pour éviter un faux enregistrement | Code UI et tests; aucun second réseau, poste durci, réseau captif réel, longue coupure, multi-onglets ou exercice humain. NO-GO |
| Échec ACME ou certificat public proche de l’expiration | Garder le dernier certificat valide, alerter et arrêter l’ingress avant expiration plutôt que d’ouvrir HTTP en clair | Nouveaux accès HTTPS/WSS refusés; la PKI mTLS privée reste séparée | Configuration Caddy candidate seulement. L’edge ne peut joindre ni ACME ni DNS public; domaine, challenge, renouvellement, révocation et bascule non prouvés. NO-GO |