État:admission signée v1 internezéro qualification terrainA puis B modéliséproduction NO-GO

Contrat de failover des nouveaux appels

Le carrier cible non contracté possède la sélection. Priorités A puis B: Navy Phone publie deux cibles directes; aucun service central ne suit une redirection SIP.

Cellule A

Priorité 10

Première tentative. Une cellule drainée répond 503 Cell Draining avec Retry-After: 5.

Décision carrier

503 ou timeout

Le modèle avance immédiatement sur 503, ou à 4 s sans réponse; toute observation de timeout anticipée est refusée.

Cellule B

Priorité 20

Seconde et dernière cible; deux échecs ferment le nouvel appel sans route inventée.

Anti-flap modèle

Hold-down 30 s

La cible fautive est supprimée temporairement; des résultats concurrents ne raccourcissent jamais la borne. Ce comportement n’est pas prouvé chez un opérateur.

Dialogue établi

Jamais déplacé

Il reste attaché à sa cellule. Une redirection 302 est terminale et ne crée aucune cible; les redirections SIP sont interdites.

Barrière interne avant activation

Ce contrôle empêche une activation administrative de remplacer la recette technique et les approbations attendues.

À retenir sans jargon

Ce qui existe

Navy Phone sait vérifier un dossier signé et refuser le fournisseur s’il est absent, expiré ou lié à une autre configuration.

Ce qui n’existe pas

Aucun fournisseur n’a encore passé cette qualification sur son vrai réseau. Il n’y a ni numéro, ni trunk, ni appel public validé.

Décision

La barrière interne réduit le risque d’activation accidentelle. Elle ne donne aucune autorisation de production: la recette terrain et la décision humaine restent obligatoires.

Entrée contrôléeDécision et écritureRefus automatiquesLimite honnête
Schéma navy-phone.carrier-ingress-qualification.v1, tenant, carrier, provider, digest canonique de configuration, 20 contrôles non compensatoires et artefacts SHA-256. Reçu opérateur et décision indépendante portent deux signatures RSA distinctes d’au moins 2 048 bits. Fenêtre maximale: 30 jours.La vérification est sans mutation par défaut et rend READY_TO_ADMIT ou NO-GO. Avec --commit, le store écrit atomiquement qualification, preuve active, activation et audit. L’historique reste conservé; seule la révocation terminale est permise.Tenant, carrier ou provider différent; configuration modifiée; preuve rejouée ou incohérente; qualification absente ou expirée; signature, trust root, artefact ou contrôle manquant. La migration 0039 bloque aussi preuve active et activation sans qualification courante.Contrôle interne implémenté dans lib/carrier/carrier-ingress-qualification.ts, son store et la migration 0039. Zéro reçu terrain, zéro configuration opérateur réelle, zéro appel PSTN et zéro bascule observée. Production NO-GO.