Aller au contenu

PD-244 — Confrontation Step 5 (Plan)

Confronteur : Claude (orchestrateur) Date : 2026-02-20 Document confronté : PD-244-review-step5.md (ChatGPT)


Méthode de confrontation

Analyse critique de chaque écart identifié par ChatGPT, en vérifiant :

  1. Si l'écart est factuellement présent dans le plan
  2. Si l'écart est justifié au regard de la spécification
  3. Si la gravité proposée est proportionnée

Analyse des écarts

ECT-01 (BLOQUANT proposé) — CONTESTÉ

Claim ChatGPT : "Le plan ne contient aucune tâche explicite de qualification du statut"

Réalité du plan (TASK-4, lignes 68-70) :

"Pour chaque exigence applicable, identifier :

  • Les stories ProbatioVault qui la couvrent (PD-XX)
  • Le statut de couverture (CONFORME, PARTIEL, NON_IMPLEMENTE)"

Verdict : L'écart est NON JUSTIFIÉ. TASK-4 mentionne explicitement l'attribution du statut parmi les valeurs contractuelles. ChatGPT a omis cette lecture.

Action : Écart à RETIRER.


ECT-02 (BLOQUANT proposé) — PARTIELLEMENT JUSTIFIÉ

Claim ChatGPT : "Aucune tâche ne définit/valide formellement le schéma canonique YAML"

Réalité :

  • La spec section 4.2 définit le schéma canonique complet
  • TASK-⅞ disent "Assembler selon le schéma canonique (section 4.2)"
  • Pas de tâche de "validation" distincte, mais la conformité est implicite dans l'assemblage

Verdict : Pour une story documentaire, la génération conforme au schéma équivaut à validation. Cependant, un contrôle explicite (compteurs, lint YAML) renforcerait la testabilité.

Action : Écart à ATTÉNUER de BLOQUANT à MAJEUR.


ECT-03 (BLOQUANT proposé) — CONTESTÉ

Claim ChatGPT : "TASK-6 n'impose pas explicitement un rattachement de remédiation planifiée sous PD-217"

Réalité du plan (TASK-6, lignes 113-127) :

"3. Créer ou référencer une story Jira sous PD-217"

Schéma gap inclut :

epic_parent: "PD-217"

Verdict : L'écart est NON JUSTIFIÉ. Le rattachement à PD-217 est explicite dans la description ET dans le schéma d'exemple.

Action : Écart à RETIRER.


ECT-04 (MAJEUR) — PARTIELLEMENT JUSTIFIÉ

Claim ChatGPT : "Le 'exactement une fois' n'est pas opéré par un mécanisme explicite"

Réalité :

  • TASK-½ extraient section par section, ce qui assure l'unicité structurelle
  • Pas de contrôle de dédoublonnage explicite entre les deux normes (si exigence partagée)

Verdict : L'unicité est structurellement garantie par l'extraction linéaire. Un contrôle d'unicité inter-normes serait pertinent mais non indispensable (normes distinctes = IDs distincts).

Action : Maintenir MAJEUR mais noter que c'est un risque faible.


ECT-05 (MAJEUR) — JUSTIFIÉ

Claim ChatGPT : "Le plan ne définit pas les valeurs autorisées du statut de gap ni la règle de sévérité"

Réalité :

  • TASK-6 référence "section 4.5" mais ne reprend pas la table
  • La spec section 4.3 définit gaps[].status = {PLANNED, IN_PROGRESS, DONE}
  • Le plan pourrait référencer explicitement ces valeurs

Verdict : Écart justifié. Le plan devrait rappeler les valeurs contractuelles.

Action : Maintenir MAJEUR.


ECT-06 (MAJEUR) — PARTIELLEMENT JUSTIFIÉ

Claim ChatGPT : "Le plan ne formalise pas de contrôle de non-divergence YAML→Markdown"

Réalité :

  • TASK-⅞/9 disent "générer fidèlement depuis le YAML"
  • Pour une story documentaire, la génération déterministe (pas de saisie manuelle) garantit la fidélité

Verdict : Un mécanisme de vérification (hash, diff, compteurs) renforcerait la testabilité mais n'est pas bloquant pour un processus entièrement automatisé.

Action : Maintenir MAJEUR mais avec faible impact.


ECT-07 (MAJEUR) — PARTIELLEMENT JUSTIFIÉ

Claim ChatGPT : "La notion de 'preuve vérifiable' n'est pas opérationnalisée"

Réalité (TASK-5, lignes 93-97) :

  • Définit les types de preuves (code, test, doc, ADR, ticket)
  • Pour chaque type, spécifie les attributs (chemin, fonction, section...)

Ce qui manque :

  • evidence_id unique
  • version ou commit_hash

Verdict : Le plan opérationnalise partiellement. Les attributs obligatoires de la spec (section 4.2 : path, locator, verifiable) sont présents.

Action : Atténuer impact, maintenir MAJEUR.


ECT-08 (MAJEUR) — PARTIELLEMENT JUSTIFIÉ

Claim ChatGPT : "TASK-11 ne décrit pas la structure de traçabilité claim→exigence→preuve"

Réalité (TASK-11, lignes 196-205) :

  • "Pour chaque claim, documenter : exigence normative référencée + preuve de couverture"
  • Output : "Section corporate_claims dans les matrices"

Ce qui manque :

  • Structure exacte de l'artefact corporate_claims

Verdict : L'intention est claire, la structure est sous-spécifiée mais dérivable du schéma 4.2.

Action : Maintenir MAJEUR.


ECT-09 (MAJEUR) — PARTIELLEMENT JUSTIFIÉ

Claim ChatGPT : "Pas de mécanisme de contrôle anti-citation normative"

Réalité (TASK-1, ligne 25) :

  • "(paraphrasé, pas de citation verbatim - INV-PD244-08)"

Ce qui manque :

  • Mécanisme de vérification (revue humaine, pattern matching...)

Verdict : La règle est énoncée, la vérification est implicite (revue Gate 8). Pour un audit documentaire, la revue humaine finale est acceptable.

Action : Maintenir MAJEUR mais impact faible.


ECT-10 (MAJEUR proposé) — CONTESTÉ

Claim ChatGPT : "La formule de score est référencée mais non reprise dans le plan"

Réalité (TASK-10, lignes 177-178) :

"Calculer les scores globaux selon la formule (section 4.4) : score = ((CONFORME * 100) + (PARTIEL * 50)) / (total - HORS_PERIMETRE) * 100"

Verdict : L'écart est NON JUSTIFIÉ. La formule est EXPLICITEMENT reprise dans le plan.

Action : Écart à RETIRER.


Synthèse de la confrontation

Écart Gravité ChatGPT Verdict confrontation Action
ECT-01 BLOQUANT Non justifié RETIRER
ECT-02 BLOQUANT Partiellement justifié ATTÉNUER → MAJEUR
ECT-03 BLOQUANT Non justifié RETIRER
ECT-04 MAJEUR Partiellement justifié MAINTENIR
ECT-05 MAJEUR Justifié MAINTENIR
ECT-06 MAJEUR Partiellement justifié MAINTENIR
ECT-07 MAJEUR Partiellement justifié MAINTENIR
ECT-08 MAJEUR Partiellement justifié MAINTENIR
ECT-09 MAJEUR Partiellement justifié MAINTENIR
ECT-10 MAJEUR Non justifié RETIRER

Écarts consolidés après confrontation

ID Gravité Description
ECT-02 MAJEUR Pas de tâche de validation explicite du schéma YAML
ECT-04 MAJEUR Pas de contrôle d'unicité explicite entre inventaire et matrices
ECT-05 MAJEUR Valeurs autorisées de statut/sévérité non reprises
ECT-06 MAJEUR Contrôle de fidélité YAML→MD non formalisé
ECT-07 MAJEUR Attributs preuve vérifiable partiellement spécifiés
ECT-08 MAJEUR Structure corporate_claims sous-spécifiée
ECT-09 MAJEUR Mécanisme anti-citation non explicité

Écarts BLOQUANTS après confrontation : 0 Écarts MAJEURS après confrontation : 7 Écarts MINEURS après confrontation : 0


Analyse d'impact

Les 7 écarts MAJEURS restants sont des précisions manquantes plutôt que des violations de spec. Le plan :

  • Couvre tous les INV/CA (matrice section 5)
  • Référence correctement les sections de spec
  • Définit un workflow cohérent avec dépendances

Les écarts concernent principalement :

  • Opérationnalisation : Comment valider plutôt que quoi valider
  • Références explicites : Reprendre les valeurs contractuelles plutôt que pointer vers la spec

Proposition de verdict confrontation

Verdict : Le plan passe de NON_CONFORME (3 BLOQUANTS + 7 MAJEURS) à RESERVE (0 BLOQUANT + 7 MAJEURS).

Les 3 écarts BLOQUANTS de ChatGPT étaient factuellement incorrects :

  • ECT-01 : Le statut EST attribué dans TASK-4
  • ECT-03 : PD-217 EST explicite dans TASK-6
  • ECT-10 : La formule EST reprise dans TASK-10

Confrontation produite conformément au template Gate 5 — Phase 2.