Aller au contenu

PD-295 — 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-295-specification.md (spécification canonique contractuelle)
  • PD-295-tests.md (scénarios de tests contractuels)

2. Convergences

  • Les deux documents sont alignés sur le périmètre B1..B5 et l’objectif de non-régression/fail-closed (Spec §1, §2 ; Tests §2, §6).
  • Le contrat B5 est cohérent des deux côtés : cardinalité fixe 5/3/3, trace signée écrite avant retour, bloc vide si échec de trace (Spec INV-295-10/11, §5.6, CA-295-07/08 ; Tests TC-NOM-08, TC-ERR-13).
  • Le dispositif HMAC canonique (JCS RFC 8785 + exclusion du champ signature + vecteurs V1..V3) est convergent (Spec INV-295-06/07/08, §5.14, CA-295-05 ; Tests TC-NOM-06, TC-ERR-11, TC-ERR-12).
  • Les règles de purge et rétention sont alignées : suppression multi-artefacts + frontière stricte date > retention_until (Spec INV-295-04/05, §5.3, §5.8 ; Tests TC-NOM-04, TC-NOM-05, TC-ERR-16).
  • Les deux machines à états (learning.scope, clarification.lifecycle_state) et le rejet des transitions interdites sont cohérents (Spec §5.9, INV-295-LS-01..12, INV-295-CL-01..08 ; Tests TC-NOM-11/12/13/14, TC-ERR-15, TC-NEG-07).
  • Les contrôles de concurrence/distribué sont alignés (lock 30s, stale >60s, idempotence, rate-limit, clearing MEMORY_DEGRADED/MEMORY_HEALTHY) (Spec INV-295-14, §5.12 ; Tests TC-NOM-15, TC-NOM-16, TC-ERR-06/07/08/09, TC-NEG-13).
  • La contrainte Gate 8 méta sur l’existence/exécutabilité des scripts measure-cs1..4.sh est alignée (Spec INV-295-16, CA-295-15 ; Tests TC-NOM-17, TC-ERR-17).
  • L’absence de migration DDL SQL est convergente (Spec §5.10, CA-295-20 ; Tests TC-NOM-19, TC-NR-08).

3. Divergences

⚠️ Les conflits ne doivent JAMAIS être lissés. Chaque divergence est rendue visible.

  • DIV-01 : Référence Epic incohérente/non stabilisée.
    Source A (spécification) : Références = « Epic : non fourni (à compléter) » + Q-295-01 « Valeur Epic finale (placeholder actuel) ».
    Source B (tests) : §1 Références = « Epic : EPIC-XX ».
    Impact : traçabilité PMO/JIRA non univoque au moment de la gate.

  • DIV-02 : Statut de testabilité contradictoire pour les critères calendaires post-merge.
    Source A (spécification) : §7 présente CA-295-16..19 dans les « Critères d’acceptation (testables) ».
    Source B (tests) : §2 déclare CA-295-16..19 couverts « Oui » (TC-NOM-18-A/B/C/D), mais §9 indique CA-295-16 « non testable avant échéance calendaire » et §10 conclut « Testable partiellement ».
    Impact : ambiguïté sur ce qui peut être déclaré conforme immédiatement à la gate vs en suivi différé.

  • DIV-03 : Paramètres à la fois contractuellement figés et encore « à valider ».
    Source A (spécification) : D-295-03 fixe l’enum project ; §5.12 fixe le clearing à « 2 cycles conformes » ; mais §10.2 maintient Q-295-03 (« liste officielle exhaustive à valider ») et Q-295-04 (« confirmation du seuil 2 cycles conformes »).
    Source B (tests) : ces paramètres sont traités comme figés et testables (TC-ERR-03 pour enum project, TC-NOM-16 pour clearing 2 cycles, matrice §2 en couverture « Oui »).
    Impact : risque de valider des tests sur des règles encore ouvertes côté spécification.

  • DIV-04 : Invariant non négociable vs preuve de conformité partielle.
    Source A (spécification) : INV-295-02 est classé « non négociable ».
    Source B (tests) : matrice §2 et §5 indiquent couverture « Partielle (NON TESTABLE sans sonde mémoire) » pour INV-295-02 ; verdict global §10 = « Testable partiellement ».
    Impact : absence de preuve complète d’un invariant contractuel critique dans la campagne standard.

4. Zones d'ombre

  • Le chemin final de livraison reste non figé (Q-295-02) et n’est pas résolu dans le plan de tests.
  • Le bloc d’orchestration {{LEARNINGS}} est signalé manquant (Q-295-06) sans scénario de validation associé.
  • Les règles légales exactes de détection PII (notamment « adresse postale explicite ») ne sont pas formalisées opérationnellement (Q-295-05) ; les tests confirment l’ambiguïté mais ne la ferment pas (§9).
  • Le mode opératoire d’instrumentation exigé pour prouver INV-295-02 (sonde mémoire QA) n’est pas cadré (ownership, fréquence, preuve attendue hors test ponctuel).
  • La gouvernance de validation des critères temporels CA-295-16..19 (jalons, autorité de validation, usage gate vs post-gate) n’est pas explicitée.

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