| Non-conformité Spec | Spec §5.4-5.6 / §6 ; Plan §2 F1-F2 et Plan §9 (“ordre de traitement”) | Le plan est contradictoire sur l’ordre taille > 1GB vs validations d’invariants RFC (une section place la taille après invariants, une autre avant). | Ambiguïté de résultat terminal (413 vs 422) pour des cas identiques, rupture de déterminisme contractuel et de machine de décision. | BLOQUANT |
| Couverture manquante | INV-85-05, CA-12 ; Tests TC-INV-8505 ; Plan C4/C6/§6 | Le mécanisme d’audit WORM pour erreurs produites avant ExportService (notamment 400 DTO, 403 guard) n’est pas explicitement défini techniquement. | Impossibilité de démontrer “audit pour tout appel” sur tous codes requis (200, 400, 403, 404, 413, 422). | BLOQUANT |
| Hypothèse implicite | Plan C8 / §6 ; Tests §8 | exportId est déclaré champ audit obligatoire y compris pour erreurs de rejet précoce, sans règle explicite de génération/corrélation quand aucun export n’est créé. | Traçabilité ambiguë et testabilité partielle de l’audit contractuel multi-codes. | MAJEUR |
| Couverture manquante | Spec §5.1 (formats contractuels) ; Plan C1/C5 | Les contraintes de format de sortie (ex. RFC3339 UTC Z strict, semver version, regex strictes de champs hex/UUID/url) ne sont pas mappées de façon exhaustive à des contrôles d’exécution dans le plan. | Risque de réponses 200 non conformes au contrat de données, avec validation tiers non déterministe. | MAJEUR |
| Non-conformité Spec | Spec §5.8 (DDL non applicable) ; Plan §8 HT-04 | Le plan introduit une dépendance conditionnelle à une migration DDL (“si AuditActionType…”) alors que la spec contractualise “migration DDL : non applicable”. | Élargissement de périmètre technique hors contrat et risque de dérive de livraison. | MAJEUR |
| Code Contract — Invariant | Code Contracts CC-85-10 / CC-85-11 | Plusieurs “invariants” de code contract ne sont pas des sous-ensembles des invariants de la spec (ex. couverture >=80%, règles internes de framework/module). | Risque de conflit de conformité : exigences d’implémentation additionnelles non contractualisées. | MAJEUR |
| Code Contract — Forbidden | Code Contracts CC-85-10/CC-85-01 (forbidden) | Certains patterns interdits ne sont pas reliés explicitement à la spec ni à une exigence sécurité formelle. | Rigidité hors périmètre contractuel pouvant créer des rejets arbitraires inter-agents. | MINEUR |
| Contrainte technique non documentée | Plan (absence section “Contraintes techniques”) / Exigence §7 du prompt | La section nommée “Contraintes techniques” n’est pas présente comme section dédiée et structurée. | Traçabilité documentaire incomplète vis-à-vis de la grille de revue imposée. | MINEUR |
| Contrainte technique non documentée | Plan global (framework de test) | Le choix explicite du framework de test (Jest ou Vitest) n’est pas documenté. | Ambiguïté d’exécution CI/tests et risque de divergence outillage. | MAJEUR |
| Contrainte technique non documentée | Plan global (ESM/CJS) | Aucune documentation explicite des dépendances ESM-only et de l’adaptation du runner associée. | Risque d’échec d’exécution tests/build selon runtime/module system. | MAJEUR |
| Contrainte technique non documentée | Plan global (variables CI) | Variables CI requises pour tests d’intégration (ex. DATABASE_URL, CI=true) non documentées explicitement. | Reproductibilité CI partielle, onboarding/exécution non déterministes. | MINEUR |
| Contrainte technique non documentée | Plan global (dépendances inter-PD) | Les dépendances inter-PD ne sont pas listées avec statut explicite DONE/TODO/STUB acceptable. | Visibilité insuffisante sur prérequis et blocages inter-stories. | MINEUR |