Aller au contenu

PD-264 — Dossier de conformité (Gate 3 — CONFORMITY_CHECK v3)

Documents de référence

  • Spécification : PD-264-specification.md (v3 — corrections v2+v3)
  • Tests : PD-264-tests.md (v3 — 19 TC)
  • Review (Phase 1) : PD-264-specification-review.md (v3 — Claude)
  • Confrontation (Phase 2) : PD-264-confrontation-step3.md (v3 — ChatGPT)

Bilan corrections v2→v3

Écart v2 Correction v3 Statut
#5 BLOQ (atomicité scope) INV-264-13 scope borné DB + post-commit async + réconciliation PD-55 CORRIGÉ
#1 MAJ (nullabilité DDL) NOT NULL DDL + migration VARCHAR(64)→BYTEA documentée CORRIGÉ
#3 MAJ (garde automate) Garde d'entrée formalisée §3 + TC-264-01 mis à jour CORRIGÉ
#6 MAJ (CSPRNG observable) TC-264-08 : analyse statique + runtime taille + Chi² CORRIGÉ
#7 MAJ (immutabilité vecteur) TC-264-09 : UPDATE SQL direct + trigger PD-55 CORRIGÉ
#9 MAJ (escalade timing) Procédure rerun + escalade + bloquant Gate 8 CORRIGÉ
#11 MAJ (NR exhaustivité) Justification 3 interfaces + 2 propriétés transversales CORRIGÉ

7/7 écarts bloquants/majeurs v2 : RÉSOLUS.


Synthèse des écarts v3

Écarts BLOQUANTS (0)

Aucun.

Écarts MAJEURS (3)

# Type Réf. Description
R01 AMB §5 Migration VARCHAR(64)→BYTEA : stratégie données PD-55 existantes non contractualisée
R02 DIV §5/Tests Migration DDL sans scénario de test dédié
R03 HYP §9, TC-264-09/19 Trigger/worker PD-55 potentiellement incompatibles post-migration type colonne

Note : Les 3 majeurs forment un cluster unique (migration DDL). Ils relèvent de la stratégie d'implémentation, pas d'un trou fonctionnel de la spec. Adressables au plan (étape 4).

Écarts MINEURS (8)

# Type Réf. Description
R04 AMB §5 CHECK constraint "recommandée" vs obligation fail-closed
R05 DIV §8, TC-264-07 Verdict ESCALADE non binaire en CI
R06 AMB §3, TC-264-11 État REJECTED transitoire vs persisté
R07 NT TC-264-17 Dépendance TSA externe sans SLA
R08 AMB §3 Timeout REQUEST_EMITTED hors périmètre mais automate incomplet
R09 DIV TC-264-08 Chi² orphelin — exigence sans invariant
R10 DIV INV-264-06/13 Lecture isolée potentiellement contradictoire
R11 DIV INV-264-09 Mock tautologique ; TC-264-17 non mappé à INV-264-09

Scoring (4 critères CONFORMITY_CHECK)

Completeness (complétude)

  • Tous les écarts majeurs v1 et v2 sont résolus
  • Les 3 majeurs résiduels (R01-R03) portent sur la migration DDL — une question d'implémentation, pas de complétude fonctionnelle
  • Le périmètre fonctionnel nonce (génération, validation, rejet, unicité, interop, atomicité, automate, CSPRNG) est complet
  • 13 INV + 12 CA couvrent exhaustivement le domaine
  • Score : 10 - 3×0.5 (majeurs d'implémentation, pas de trous fonctionnels) - 2×0.25 (R04, R09 mineurs impactant complétude) = 8.0

Testability (testabilité)

  • Protocole statistique timing v2+v3 complet avec escalade
  • Observables CSPRNG définis (statique + runtime + Chi²)
  • TC-264-09 vecteur d'attaque explicité
  • 19 TC + matrice INV/CA exhaustive
  • R02 (pas de TC migration) impacte testabilité = -0.75
  • R05 (ESCALADE non binaire CI) = -0.25, R07 (TSA SLA) = -0.25, R11 (mock tautologique) = -0.25
  • Score : 10 - 1×0.75 - 3×0.25 = 8.5

Clarity (clarté)

  • v3 a résolu les ambiguïtés majeures restantes (garde automate, DDL, atomicité scope)
  • Mineurs restants : R04 (recommandé vs obligatoire), R06 (REJECTED transitoire), R08 (timeout hors périmètre), R10 (INV-264-06/13 lecture isolée)
  • Score : 10 - 4×0.25 = 9.0

Traceability (traçabilité)

  • Matrice INV/CA→TC complète avec INV-264-12/13
  • Justification exhaustivité NR ajoutée
  • R09 (Chi² orphelin) et R11 (TC-264-17 non mappé INV-264-09) = mineurs traçabilité
  • Score : 10 - 2×0.25 = 9.5

Scores finaux

Critère Score v1 Score v2 Score v3 Delta v2→v3
completeness 6.0 7.0 8.0 +1.0
testability 6.5 7.5 8.5 +1.0
clarity 7.5 8.0 9.0 +1.0
traceability 8.25 8.5 9.5 +1.0
Moyenne 7.06 7.75 8.75 +1.0

Confrontation

La confrontation (Phase 2) confirme la convergence totale spec↔tests. Aucune divergence factuelle. Les zones d'ombre identifiées (migration données historiques, naming SQL, stabilisation CI timing, archivage probatoire) recoupent les constats R01-R03 et les mineurs R04-R11.


Délibération

Les corrections v3 ont apporté une amélioration uniforme (+1.0 sur chaque critère). Tous les scores >= 8.0. Les 3 majeurs résiduels forment un cluster thématique unique (migration DDL) adressable en étape 4 (plan). Les 8 mineurs sont des questions de précision opérationnelle non bloquantes.

Recommandation : Verdict GO — tous les critères >= 8.0, moyenne 8.75/10.