Classes de données et cycle de vie

Chaque classe possède un owner, une frontière de confiance et une preuve distincte.

ClasseOwner / stockageProtectionCycle de viePreuve
Trames audioNavy Phone, mémoire bornéeTransport contrôlé, jamais dans métriquesPurge après lecture/annulationCode buffers/AbortSignal
Session d’appelNavy Phone, PostgreSQL cibleTenant, TLS, RLS/IAMRétention à approuverSchémas; base cloud absente
Prepared-turnVoiceBot, store produitRévision, CAS, token opaqueTTL et purgeContrats/tests produit
Audit téléphonieNavy Phone, ledgerAppend-only, hash chainExport/scellement à figerCode local
Audit décisionnelVoiceBot, audit produitProvenance, protocole, gardeSéparé du ledger PBXContrat produit
EnregistrementConformité, objet cibleConsentement, clé dédiée, ACLOff par défaut, TTL/legal holdCible seulement
Télémétrie edgeSRE, quatre fichiers /runRoot 0700, fichiers 0640, aucune donnée d’appel ou sortie de commandeDernier snapshot/metrics/transition/admissionHealth-lab local
Preuve exact-edge localeRelease assurance, rapport éphémère du lab13 checks et 9 métriques canoniques, références de corrélation opaques, aucun média, SIP ou identifiant brut dans l’enveloppeDigest SHA-256 canonique local; registre immuable et rétention absentsSchéma v1 validé, sourceTreeClean=true au dernier run, promotion NO-GO, aucune attestation externe
Preuve OpenTofu localeRelease assurance, stdout JSON content-free uniquementSources temporaires limitées au HCL revu, credentials hôte explicitement neutralisés, backend désactivé et réseau coupé après bootstrap du miroirWorkspace, provider, plan et state éphémères supprimés; aucun stdout brut, environnement ou secret persistéSchéma scaleway-opentofu-runtime-gate.v1 avec digest canonique; 39 tests mockés, cloud absent et promotion NO-GO

Preuve de lecture et audits séparés

Le ledger d’appel et la décision conversationnelle se corrèlent sans fusionner leurs responsabilités.

Navy Phone

Transport et téléphonie

Call ID opaque, transitions PBX, bridge, génération audio, mark/ACK, handoff, début/fin et causes techniques.

VoiceBot

Décision et protocole

Session/tour, faits et sources, révision, proposition LLM, décision de garde, prepared-turn, commit ou refus.

Invariant

Audio envoyé ou mark reçu ne signifie pas « entendu ». Le commit n’est permis qu’avec un ACK courant et une révision CAS valide.