Review Conformité — PD-31¶
1. Analyse de complétude¶
Points globalement couverts : - Le besoin est bien structuré dans la spec en 8 fonctionnalités (F-31-01 à F-31-08) cohérentes avec le périmètre attendu (capture, immutabilité, ancrage, alerting, export, rétention). - Les dimensions clés sont présentes : append-only, hash chaîné, intégration Merkle/TSA/blockchain, export judiciaire, rétention légale.
Points potentiellement manquants ou insuffisamment explicites : - Le besoin impose 8 types d'événements auth : non confirmé explicitement dans l'extrait de spec. - Le besoin impose 3 canaux (ios, pwa, api) : non confirmé explicitement. - Le besoin impose 15 champs de métadonnées : non confirmé explicitement dans le modèle présenté. - Le besoin impose performance < 5ms insertion et > 1000 evt/s : la spec fonctionnelle ne montre pas clairement ces seuils comme exigences normatives (même si des tests perf existent). - Le besoin impose Zero-Knowledge (pas de données sensibles) : non explicitement garanti par exigences de minimisation/redaction/chiffrement dans l'extrait.
2. Analyse de testabilité¶
- Le dossier annonce une matrice CA → TC complète et 70 TC, ce qui indique une bonne couverture formelle.
- Répartition des tests cohérente (unitaires/intégration/E2E/perf/sécurité/non-régression), adaptée à une story critique d'audit.
- Les tests semblent couvrir les dimensions techniques et non fonctionnelles.
- Réserve : sans détail ligne à ligne de la matrice, la couverture de certains points du besoin (8 événements, 3 canaux, 15 métadonnées, Zero-Knowledge) ne peut pas être vérifiée comme strictement exhaustive.
3. Analyse de clarté¶
- La spec est globalement structurée et lisible (features, invariants, modèle de données, API, erreurs).
- Présence de 3 questions ouvertes (
QO-31-01..03) sur des sujets structurants (source de vérité alerting, gestion non-ancrés, clé de signature), ce qui crée des zones d'ambiguïté de conception. - Ces ambiguïtés peuvent impacter l'implémentation, la conformité probatoire et la reproductibilité des tests.
4. Analyse de traçabilité¶
- Chaîne besoin → spec → tests en place via CA et matrice annoncée.
- Traçabilité fonctionnelle bonne au niveau macro (mapping des blocs).
- Traçabilité fine partiellement fragile sur les exigences quantitatives/explicites du besoin (8/3/15, seuils perf, Zero-Knowledge) faute d'assertion explicite dans l'extrait.
5. Écarts détectés¶
ECT-31-01 : Couverture explicite des 8 types d'événements non démontrée¶
- Type : DIV (divergence)
- Sévérité : MAJEUR
- Description : L'extrait de spec ne prouve pas explicitement la liste exhaustive des 8 événements auth demandés.
- Impact : Risque de couverture partielle du journal d'audit.
- Recommandation : Ajouter une section normative listant les 8 événements et leur mapping CA/TC.
ECT-31-02 : Canaux iOS/PWA/API non explicitement normés¶
- Type : DIV (divergence)
- Sévérité : MAJEUR
- Description : Le besoin mentionne 3 canaux, mais la spec ne montre pas clairement les contraintes par canal.
- Impact : Risque d'implémentation incomplète ou asymétrique.
- Recommandation : Ajouter un tableau de couverture par canal avec CA et TC associés.
ECT-31-03 : Exigence des 15 métadonnées non traçable¶
- Type : ECT (écart technique)
- Sévérité : MAJEUR
- Description : Le modèle de données (5 tables) est donné, mais pas la validation explicite des 15 champs attendus.
- Impact : Perte d'exhaustivité probatoire.
- Recommandation : Spécifier les 15 champs (nom, type, obligatoire, source) + tests de complétude.
ECT-31-04 : Performance non cadrée comme exigence normative dans la spec¶
- Type : PERF (performance)
- Sévérité : MAJEUR
- Description : Seuils
< 5mset> 1000 evt/sdu besoin non visibles explicitement dans l'extrait spec. - Impact : Critères d'acceptation potentiellement non opposables en gate.
- Recommandation : Ajouter NFR chiffrés dans la spec + conditions de mesure reproductibles.
ECT-31-05 : Zero-Knowledge insuffisamment spécifié¶
- Type : SEC (sécurité)
- Sévérité : BLOQUANT
- Description : Le besoin interdit les données sensibles, mais les règles de minimisation/redaction/hachage/chiffrement ne sont pas explicites dans l'extrait.
- Impact : Risque de non-conformité sécurité/RGPD et invalidation probatoire.
- Recommandation : Formaliser une politique Zero-Knowledge (champs interdits, contrôles d'entrée, tests négatifs, audit de conformité).
ECT-31-06 : Questions ouvertes critiques non résolues¶
- Type : AMB (ambiguïté)
- Sévérité : MAJEUR
- Description :
QO-31-01..03touchent des décisions structurantes. - Impact : Variabilité d'implémentation, tests instables, dette de conformité.
- Recommandation : Lever les QO avant implémentation, puis rebasculer les décisions en CA explicites.
6. Scoring¶
| Critère | Score /10 | Justification |
|---|---|---|
| Completeness | 7 | Bonne couverture macro, mais exigences clés du besoin (8/3/15, Zero-Knowledge, seuils perf) non explicitement démontrées |
| Testability | 8 | Matrice CA→TC annoncée complète + 70 TC multi-niveaux ; légère réserve sur preuves fines des exigences quantitatives |
| Clarity | 7 | Structure solide mais 3 QO sur des sujets critiques maintiennent une ambiguïté réelle |
| Traceability | 8 | Chaîne globale en place ; traçabilité détaillée perfectible sur exigences strictes du besoin |
| Moyenne | 7.50 |
7. Verdict préliminaire¶
- GO (tous >= 8)
- RESERVE (moyenne >= 7, au moins un < 8)
- NON_CONFORME (moyenne < 7 OU un score < 6)
Review générée par ChatGPT (gpt-5.3-codex) dans le cadre du workflow de gouvernance ProbatioVault.