Aller au contenu

PD-254 — Dossier de conformité Gate 5 (AMBIGUITY) — v1

Date : 2026-03-13 Story : PD-254 — Protocole migration probatoire Gate : 5 — AMBIGUITY Itération : v1 Reviewers : Claude (P1 review + P2 confrontation — fallback Art. II, prompts >100KB)


1. Documents analysés

Document Auteur Version Taille
PD-254-specification.md ChatGPT (corrigé Claude v2) v2 32KB
PD-254-tests.md ChatGPT (corrigé Claude v2) v2 26KB
PD-254-plan.md Claude -p v1 34KB
PD-254-code-contracts.yaml Claude -p v1 16KB

2. Écarts identifiés (post-confrontation)

Majeurs (1)

ID Type Constat Source Impact
DIV-02 Contrainte technique Dépendances inter-PD (PD-44, PD-54, PD-55, PD-36/37) sans statut (DONE/TODO/STUB) P1-écart2, P2-DIV-02 Impossible de déterminer si l'implémentation peut démarrer

Mineurs (8)

ID Type Constat Source Impact
DIV-01 Contrainte technique Framework de test non nommé (Jest implicite NestJS) P1-écart1, P2-DIV-01 Documentation ambiguë
DIV-03 Contrainte technique Version canonicalize non figée (v1 CJS, v2 ESM-only future) P1-écart3, P2-DIV-03 Risque de casse future
DIV-04 Hypothèse implicite Mécanisme de seed sampling non spécifié (identifié dans plan §3 comme risque) P1-écart4, P2-DIV-04 Reproductibilité à préciser
DIV-05 Risque sécurité Lock Redis sans fencing token (atténué par contexte batch + idempotence) P1-écart5, P2-DIV-05 Risque théorique négligeable
DIV-06 Hypothèse implicite Migrations TypeORM (CREATE TABLE) non listées dans les tâches P1-écart6, P2-DIV-06 Oubli potentiel
DIV-07 Hypothèse implicite Disponibilité Redis non en précondition F1 P1-écart7, P2-DIV-07 Comportement fail-open possible
DIV-08 Incohérence Plan↔Tests TC-PRECHECK-EXP-01 dans le plan mais absent de tests.md P1-écart8, P2-DIV-08 Asymétrie documentaire
DIV-10 Non-conformité Spec Retry 3× I/O non spécifié dans la spec P1-écart10, P2-DIV-10 Ajout comportemental

Cosmétiques (2)

ID Type Constat Source
DIV-09 Non-conformité Spec Mapping codes HTTP — décision d'implémentation légitime P1-écart9, P2-DIV-09
DIV-11 Contrainte technique Variables CI non documentées P1-écart11, P2-DIV-11

Zones d'ombre (3)

  • ZO-01 : Taille maximale du manifest et performance sérialisation (source_object_count max 999M)
  • ZO-02 : Rétention artefacts campagnes échouées (valeur probatoire non contractualisée)
  • ZO-03 : Interaction lock expiré + réconciliation orphelin

3. Dérogation Art. II

Les deux phases (review + confrontation) ont été exécutées par claude -p au lieu de ChatGPT. Raison : prompts assemblés de 116-118KB, au-dessus du seuil ~30KB d'OpenCode. Dérogation documentée et non structurelle.

4. Scoring

Critère Score Justification
Feasibility 8.5 Plan réalisable avec la stack existante. Découpage 8 composants cohérent. Seul le statut des dépendances inter-PD est un risque de blocage (1 majeur).
Coverage 8.0 11/11 invariants mappés, 18/18 CA mappés, 40+ TC référencés. TC-PRECHECK-EXP-01 ajouté mais absent de tests.md (asymétrie documentaire).
Risk_mitigation 7.5 Learnings PD-282/PD-85/PD-63 intégrés. Fencing token absent mais contexte batch + idempotence atténue. Taille manifest non bornée (ZO-01).
Coherence 8.0 Plan↔Spec↔Tests globalement cohérents. Quelques ajouts non spécifiés (retry, codes HTTP) mais raisonnables. Dépendances inter-PD non documentées (DIV-02).

5. Verdict préliminaire

  • Scores : feasibility=8.5, coverage=8.0, risk_mitigation=7.5, coherence=8.0
  • Moyenne : 8.0
  • Score min : 7.5 (risk_mitigation)
  • Règle : Moyenne >= 7, score min >= 6, au moins un score < 8 → RESERVE