| Non-conformité Spec | INV-262-02 / Spec §4 / Plan C3, C4, FT3 | Le plan place la séquence de décision effective (handleDetection, purge, transitions, navigation lockout) côté JS/TS après retour performCheck(), alors que la décision lockout/purge doit être uniquement native et non inhibable/retardable par JS. | Violation directe d’un invariant non négociable ; surface de contournement par instrumentation JS. | BLOQUANT |
| Test irréalisable | TC-INV-02, TC-NEG-03 / Plan C6, C7, C8, FT3 | Les tests adversariaux exigent un lockout natif maintenu malgré tentative JS ; le plan décrit un verrouillage UX piloté par hook/store/navigation JS. | Impossibilité de prouver contractuellement l’absence de bypass JS en session courante avec les mécanismes décrits. | BLOQUANT |
| Non-conformité Spec | Spec §3.6 (stockage lockout exclusivement Keychain) / Plan C8 / Code Contracts CC-262-T8 (tamperingLockout: boolean (persisted)) | Le plan/contracts introduisent une persistance JS du lockout en plus de la Keychain. | Rupture de l’exclusivité contractuelle du stockage lockout ; risque d’incohérence d’état et de non-conformité d’audit. | MAJEUR |
| Couverture manquante | INV-262-02, CA-01, CA-02 / Spec §3.1 (operations sensibles) / Plan C3, C7, C8 | Le plan ne documente pas de mécanisme natif explicite empêchant toutes opérations sensibles (Keychain/dechiffrement/API auth) quand tampered=true; il décrit surtout un verrouillage UI/navigation. | Verrouillage fonctionnel potentiellement contournable hors UX ; couverture incomplète des invariants de sécurité. | MAJEUR |
| Hypothèse implicite | Spec F4, ERR-04 / Plan §8 HT-08 | Le plan suppose qu’en absence d’endpoint backend l’émission devient un no-op local, sans cadrage contractuel supplémentaire. | Dégradation de l’auditabilité distante et hétérogénéité d’implémentation non explicitement contractualisée. | MAJEUR |
| Code Contract — Forbidden | Code Contracts CC-262-T10 / section forbidden | La règle interdite « Tester sign et verify isolement (roundtrip obligatoire si crypto) » n’est pas reliée à la spec PD-262 ni à ses invariants/tests. | Contrat de test contaminé par une contrainte hors périmètre, risque de rejet QA non justifié. | MINEUR |
| Contrainte technique non documentée | Plan (absence section dédiée "Contraintes techniques") / Framework de test | Le choix explicite Jest/Vitest n’est pas documenté. | Ambiguïté d’exécution des tests et du runner CI. | MAJEUR |
| Contrainte technique non documentée | Plan (absence section dédiée "Contraintes techniques") / Compatibilité ESM/CJS | Aucune documentation des dépendances ESM-only et de l’adaptation runner associée. | Risque de non-exécution des tests selon environnement. | MAJEUR |
| Contrainte technique non documentée | Plan (absence section dédiée "Contraintes techniques") / Variables CI | Variables CI requises pour tests d’intégration non documentées. | Reproductibilité CI partielle et écarts d’environnement. | MINEUR |
| Contrainte technique non documentée | Plan §9.3, §12 / Dépendances inter-PD | Les dépendances inter-PD existent mais sans statut systématique attendu (DONE/TODO/STUB) pour chaque dépendance. | Traçabilité de livraison inter-story incomplète pour audit tiers. | MINEUR |