Aller au contenu

PD-80 — 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

  • Spécification : PD-80 — Scellement probatoire prioritaire en moins d'une heure (Étape 1)
  • Tests contractuels : PD-80 — Scénarios de tests contractuels (Étape 2)

2. Convergences

  • Le périmètre fonctionnel urgent (auto mineur + manuel éligible) est aligné entre la spec (§2, §5.5, §5.6) et les tests (TC-NOM-01, TC-NOM-02).
  • Les invariants critiques sont couverts et référencés de façon cohérente (INV-80-01 à INV-80-11) dans la matrice de couverture et les scénarios dédiés.
  • Le contrat de machine d'états fermée (transitions listées uniquement, terminaux bloquants) est cohérent entre spec (§5.4, CA-14) et tests (TC-ERR-09, TC-ERR-10, TC-INV-01).
  • Le comportement fail-soft en indisponibilité TSA/blockchain avec retries 1/5/15/30 est convergent (spec §5.2, INV-80-06, §6 ; tests TC-ERR-05, TC-ERR-06, TC-NR-04).
  • Le contrat quotas/rate-limit et codes d'erreur associés (403, 429) est convergent (spec §5.2, §6, CA-07, CA-08 ; tests TC-ERR-02, TC-ERR-03, TC-NR-03).
  • Les obligations de notification terminale (SEALED / FAILED_TIMEOUT) sont convergentes (spec INV-80-08, §6 ; tests TC-NOM-05, TC-NOM-06, TC-ERR-07, TC-NR-05).
  • Les exigences crypto at-rest (INV-80-09 / CA-15) sont convergentes et explicitement testées (TC-NOM-09, TC-INV-09, TC-NR-06).
  • Les métriques minimales obligatoires sont alignées (spec CA-12 ; tests TC-NOM-07, TC-NR-07).
  • La non-starvation via pondération 5:1 est convergente (spec INV-80-11, CA-13 ; tests TC-NOM-08, TC-NR-08).
  • Les deux documents confirment explicitement des réserves majeures déjà connues (fenêtre P95, fallback push, escalade, schéma proof package).

3. Divergences

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

  • DIV-01 : Bornes effectives du mini-batch urgent incohérentes entre paramètres et attentes de test
  • Source A (spécification) : §5.2 fixe batch_size_min par défaut à 5 (min 1), tout en posant CA-04 à 1..20.
  • Source B (tests) : TC-NOM-04 valide systématiquement des lots 1..20 sans distinguer la valeur par défaut opérationnelle.
  • Impact : ambiguïté de conformité en exécution (un lot de taille 1..4 peut être conforme au CA mais non conforme à une config laissée au défaut 5).

  • DIV-02 : Référence épique non alignée entre documents

  • Source A (spécification) : section Références indique "Epic : Référence épique non fournie".
  • Source B (tests) : section 1 Références indique "Epic : EPIC-XX".
  • Impact : traçabilité documentaire non stabilisée pour la gate (risque d'association au mauvais périmètre épique).

4. Zones d'ombre

  • Fenêtre de calcul du P95 non contractualisée (1h glissante / 24h / 7j), bloquant une vérification SLA non ambiguë.
  • Politique d'escalade opérationnelle non définie (destinataires, criticité, délai d'acquittement), malgré obligation d'escalade en FAILED_TIMEOUT.
  • Fallback contractuel du canal push non défini pour comptes sans device enregistré.
  • Format canonique et versionnage du proof package non définis (schéma JSON/ZIP), limitant la validation stricte inter-systèmes.
  • Référentiel de seuils SLO/alerting pour priority_queue_depth non défini.
  • Politique de rétention des artefacts en échec FAILED_TIMEOUT non définie.
  • Confirmation finale du périmètre repo d'implémentation (backend seul vs backend + app pour déclenchement manuel) non tranché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