Aller au contenu

PD-250 — Rapport de confrontation — Gate 3 (v4)

Date : 2026-02-25 Story : PD-250 — Job destruction définitive et bordereau Iteration : v4

1. Sources confrontées

  • Spécification : PD-250-specification.md (v4)
  • Tests & Validation : PD-250-tests.md (v4)

2. Convergences

  • Éligibilité stricte et fail-closed alignés : destruction uniquement après convergence DB+S3+legal_lock et blocage si prérequis probatoires KO (Spec INV-250-01/03, §5.1/5.4, Tests TC-250-01..05).
  • Traçabilité/audit alignés : lien documentId/batchId/bordereauId, non-silence des erreurs, et couverture de réconciliation (INV-250-05/10, ERR-250-05/07, Tests TC-250-09/14/16).
  • Bordereau et minimisation RGPD alignés : unicité par batch, format probatoire, exclusion PII directes (INV-250-04/07, §3/§5.2, Tests TC-250-08/11).
  • Idempotence et transitions interdites alignées : non-retraitement DESTROYED + rejet des transitions inverses (INV-250-08/11, Tests TC-250-12/13/15).
  • Contraintes techniques BullMQ et sécurité endpoint admin alignées (INV-250-13/14/15, Tests TC-250-18/19/20/21).
  • SLA contractuels bien repris dans les tests (INV-250-16, Spec §10.3, Tests TC-250-26/27/28).

3. Divergences

DIV-01 — Qualification eIDAS : test automatisé vs contrôle opérationnel

  • Spec : HYP-250-07 positionne la qualification eIDAS comme hypothèse de conformité bloquante en mise en production.
  • Tests : TC-250-08 demande vérification « certificat TSP qualifié eIDAS », mais §3 Scénarios non testables indique que cette vérification n'est pas automatisable.
  • Impact : ambiguïté sur la preuve attendue en gate (preuve technique automatisée vs preuve documentaire d'exploitation).

DIV-02 — destructionExecutionSla : FAILED vs PARTIAL_FAILED avant 1er document

  • Spec : §5.5 précise que si le SLA est dépassé avant toute destruction, le batch passe FAILED.
  • Tests : TC-250-27 associe le dépassement de destructionExecutionSla à PARTIAL_FAILED (matrice CA-250-16 ne distingue pas ce sous-cas).
  • Impact : risque de verdict contradictoire (implémentation conforme à FAILED, tests attendant PARTIAL_FAILED).

4. Zones d'ombre

  • parentBatchId obligatoire en reprise (§5.9) sans test explicite dédié.
  • Restriction consommation événements batch_result aux rôles ADMIN|SYSTEM (§5.10) non couverte par tests.
  • Règle fine clockSkewTolerance (DB/S3/legal_lock mais pas TSA) non testée explicitement.
  • Cas N=0 préavis émis avant run destruction (§5.8) : ordre strict inter-jobs non vérifié.
  • Couvertures "Complète" dans matrice malgré échantillonnage pour bornes de configuration.

5. Recommandation

Rework nécessaire — divergences à résoudre avant de continuer.