Aller au contenu

PD-241 — Dossier de conformité (Étape 3 v2)

Ce dossier est assemblé automatiquement avant la gate PMO CONFORMITY_CHECK. Il constitue la base factuelle sur laquelle le verdict est rendu. Itération v2 : après correction des écarts ECT-01, ECT-02, ECT-03.

Type de gate : CONFORMITY_CHECK

Objectif : Vérifier la complétude et la testabilité de la spécification avant implémentation.

1. Documents de référence

Document Étape Statut
PD-241-besoin.md 0 ✓ Présent
PD-241-specification.md 1 (corrigé) ✓ Présent
PD-241-tests.md 2 ✓ Présent
PD-241-specification-review.md 3.1 v1 ✓ Présent (historique)
PD-241-specification-review-v2.md 3.1 v2 ✓ Présent
PD-241-confrontation-step3-v1.md 3.2 v1 ✓ Présent (historique)
PD-241-confrontation-step3-v2.md 3.2 v2 ✓ Présent
PD-241-verdict-step3-v1.yaml 3.4 v1 ✓ Présent (NON_CONFORME)

2. Historique des corrections

Écart Gravité v1 Statut v2 Correction appliquée
ECT-01 Majeur ✓ Résolu Transmission refresh token définie (body JSON, clé refresh_token)
ECT-02 Majeur ✓ Résolu Alignement ERR-106 ↔ ERR-241 clarifié dans §2
ECT-03 Majeur ✓ Résolu Statuts HTTP ajoutés dans §6 (401, 502, 500)
ECT-04 Mineur Maintenu TC-NEG-03 suppose idempotence non spécifiée
ECT-05 Mineur Maintenu TC-NEG-02 suppose code auth/invalid_token non défini

3. Hypothèses déclarées

Extraites de PD-241-specification.md §9 :

ID Hypothèse Impact si faux
H-241-01 Keycloak Admin API permet l'invalidation des sessions CA-241-02 non atteignable
H-241-02 Le backend reçoit le refresh token lorsque présent CA-241-03 non atteignable
H-241-03 L'artefact PD-106 prouve l'effacement local CA-241-06 non démontrable côté backend

4. Preuves de conformité

4.1 Invariants ↔ Tests

Invariant Test(s) couvrant Couvert ?
INV-241-01 : JWT requis TC-ERR-01
INV-241-02 : Invalidation session Keycloak TC-NOM-01
INV-241-03 : Invalidation refresh token TC-NOM-02 ✓ (mécanisme défini)
INV-241-04 : Format erreur TC-ERR-03
INV-241-05 : Erreur explicite échec Keycloak TC-ERR-02 ✓ (statut HTTP défini)
INV-241-06 : Effacement local (hors périmètre) N/A N/A (explicitement hors périmètre)

4.2 Critères d'acceptation ↔ Observables

Critère Observable Vérifié ?
CA-241-01 : Refus sans JWT 401 Unauthorized
CA-241-02 : Session Keycloak invalidée Réutilisation refusée
CA-241-03 : Refresh token invalidé Réutilisation refusée
CA-241-04 : Erreur explicite échec Keycloak 502 + ERR-241-LOGOUT-FAILED
CA-241-05 : Format erreur respecté Inspection JSON
CA-241-06 : Effacement local (hors périmètre) Preuve PD-106 N/A

5. Points ouverts résiduels (mineurs)

ID Type Description Traitement recommandé
ECT-04 Incohérence Spec↔Tests TC-NEG-03 suppose idempotence Accepter comme test exploratoire
ECT-05 Incohérence Spec↔Tests TC-NEG-02 suppose code auth/invalid_token Adapter observable pendant implémentation
ZO-01 Zone d'ombre Format réponse succès non défini Définir pendant implémentation (ex: {success: true})

6. Rapport de confrontation v2

  • Voir : PD-241-confrontation-step3-v2.md
  • 8 convergences confirmées (CVG-01 à CVG-08)
  • 2 divergences mineures (DIV-01, DIV-02)
  • Recommandation confrontation : Procéder

7. Recommandation pré-verdict

  • GO — conformité vérifiée, aucun point bloquant
  • Les 3 écarts majeurs ont été résolus
  • Tous les invariants sauf INV-241-06 (hors périmètre) sont couverts par des tests
  • Les écarts mineurs peuvent être traités durant l'implémentation
  • RESERVE — conformité partielle, conditions à satisfaire
  • NON_CONFORME — écarts bloquants identifiés
  • ESCALADE — décision humaine requise

Dossier assemblé par Claude Orchestrateur — 2026-02-07