PD-86 — Rapport de confrontation (Étape 3)¶
Ce rapport est produit par l'orchestrateur Claude avant chaque gate PMO. Il confronte les documents produits pour identifier convergences, divergences et zones d'ombre.
1. Sources confrontées¶
PD-86-specification.md(Étape 1 — Spécification)PD-86-tests.md(Étape 2 — Tests & Validation)
2. Convergences¶
- Le périmètre fonctionnel est aligné : détection locale au viewer sur image/vidéo/PDF, sans analyse serveur, avec écran de consentement avant rendu (spec sections 2/⅘, tests TC-86-01/02/03/17).
- La logique vidéo est cohérente entre documents : agrégation
max(score_categorie), plafond 12 frames, inclusion des 2 premières secondes (spec Q3-Q4 + perf, tests TC-86-02/24, PERF-86-04). - La politique prudente en cas d'échec d'analyse est convergente sur
TIMEOUT,MODEL_UNAVAILABLE,CORRUPTED_INPUT,INTERNAL_ERROR(spec ⅘/9, tests TC-86-08/09/19/20, ERR-86-01..05). - Les invariants sécurité sont couverts de façon explicite : zéro transmission réseau, cache chiffré minimal, absence de dérivés persistants, hygiène des logs, zeroization best-effort (spec 4/7, tests TC-86-04/06/07/15/16 + SEC-86-01..05).
- Les critères d'acceptation CA-86-01 à CA-86-12 sont tous mappés à au moins un scénario de test (matrice 1.2 complète).
- Les transitions utilisateur clés sont testées : désactivation globale, préférence document réversible, décisions
KEEP_HIDDEN/CANCEL, confirmation additionnelle mineur (spec 4.1/INV-86-06/14/15, tests TC-86-10/11/13/21).
3. Divergences¶
- DIV-01 : Contradiction sur la structure minimale du verdict en cache (
documentId). - Source A (spécification, modèle de données 3.1) :
DocumentSensitiveVerdictinclutdocumentIdcomme champ de l'entité. - Source B (tests, TC-86-06 + CA-86-06 repris) : attendu limité à
isSensitive, catégories, scores arrondis,modelVersion,analyzedAt,analysisStatus(sansdocumentIddans la liste autorisée). - Impact : ambiguïté de conformité sur le contenu exact du cache, risque de rejet en gate (lecture stricte de "uniquement les champs autorisés").
4. Zones d'ombre¶
- Priorité non explicitée entre
suppressWarning=trueet statuts d'erreur prudents (TIMEOUT,MODEL_UNAVAILABLE, etc.) : la règle de précédence n'est pas formalisée en cas de collision. - Les seuils utilisateur (bornes
[0.50, 0.95], valeurs par catégorie, comportement aux bornes) sont spécifiés mais sans cas de test dédié. - L'unicité
(documentId, modelVersion)est définie dans la spec sans scénario de validation explicite (absence de test collision/doublon). - La notion de "pages représentatives" PDF reste non contractée (signalée ST-86-04), donc vérification partielle seulement.
- Le budget
<=700 msest conditionné au "device cible" sans matrice de référence figée (signalée ST-86-03), ce qui limite l'objectivation du verdict perf. - La compatibilité iOS minimale est indiquée "décision d'implémentation" dans la spec sans critère de test associé.
5. Recommandation¶
- Procéder — convergence confirmée, aucun conflit bloquant
- Rework nécessaire — divergences à résoudre avant de continuer
- Escalade — décision humaine requise sur un point structurant