PD-84 — Rapport de confrontation (Étape Pré-gate)¶
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-84-specification.md— version 1.2.0 (2026-02-23), document de spécification fonctionnelle et contractuelle.PD-84-tests.md— version 1.2.0 (2026-02-23), cahier de tests (matrice de couverture, scénarios, verdict de testabilité).
2. Convergences¶
- Quotas FREE alignés: maximum 3 dossiers
ACTIVEet 100 documents scellés par dossier actif (Spec 2.1, 3.3, F-84-01/04 ; Tests TC-01 à TC-04, TC-LIM-01/02). - Refus explicites de dépassement quota alignés sur les codes métier
QUOTA_FOLDER_LIMIT_REACHEDetQUOTA_DOCUMENT_LIMIT_REACHED(Spec CA-84-02/04, 7.2 ; Tests TC-02, TC-04). - Verrouillage export en FREE convergent: exports composite/archive refusés avec
PREMIUM_REQUIRED, UI avec contrôle visible grisé + texte "Disponible en Premium" + CTA (Spec F-84-08/09/10, CA-84-05/06, 7.3 ; Tests TC-05, TC-06). - Clôture dossier convergente: transition
ACTIVE -> CLOSED_READ_ONLY, conservation des preuves, libération d'un slot actif, idempotence 2e clôture en409+FOLDER_ALREADY_CLOSED(Spec 3.2.1, CA-84-07, 7.1/7.2 ; Tests TC-07, TC-17, TC-LIM-03). - Isolement des quotas entre comptes convergent (mineur/représentant légal), sans contamination des compteurs (Spec F-84-16, CA-84-09 ; Tests TC-09).
- Universalité du plan FREE sans distinction d'âge convergente (Spec F-84-15, INV-84-09 ; Tests TC-15).
- Transition FREE -> PREMIUM testable via stub convergente, avec auto-déverrouillage des capacités sur dossiers existants (Spec 3.2.3, F-84-17, CA-84-10 ; Tests TC-10, TC-10-bis, TC-SLA-01).
- SLA de propagation convergent: objectif
p95 < 5s, borne absolue<= 30s, émission/audit dePLAN_STATE_INCONSISTENTsi dépassement (Spec 3.2.2, 9 ; Tests TC-SLA-01). - Exigences de concurrence atomique et déterminisme convergentes via tests de course répétés 30 fois (Spec 3.4 ; Tests TC-LIM-01/02).
- Rejet de catégorie invalide convergent avec code
INVALID_FOLDER_CATEGORY(Spec F-84-19, 7.1/7.2 ; Tests TC-16). - Équivalence algorithmique FREE/PREMIUM sur scellement convergente (Spec 8.3, CA-84-11 ; Tests TC-11, TC-SEC-01).
- Auditabilité convergente sur refus quota, clôture, changement de plan, et export refusé en FREE (Spec F-84-18, 8.2 ; Tests TC-13).
3. Divergences¶
⚠️ Les conflits ne doivent JAMAIS être lissés. Chaque divergence est rendue visible.
- DIV-01 : Le test TC-18 valide une transition
PREMIUM -> FREEnon spécifiée contractuellement dans PD-84. - Source A (specification) : la transition explicitement définie et outillée est
FREE -> PREMIUMviaPUT /account/planpayload minimal{ "plan_type": "PREMIUM" }(Spec 3.2.3, 7.1). - Source B (tests) : TC-18 étape 4 exécute explicitement
PREMIUM -> FREEviaPUT /account/plan, puis attend capabilities àfalse. -
Impact : extension implicite du périmètre fonctionnel côté tests; risque de verdict contradictoire (implémentation conforme à la spec mais non conforme à TC-18).
-
DIV-02 : Couverture revendiquée ECT-03/ECT-07 (quotas PREMIUM levés) non alignée avec les scénarios cités.
- Source A (specification) : en PREMIUM, aucune borne supérieure de quota n'est appliquée par PD-84 (Spec 2.3, 3.3).
- Source B (tests) : section 8 (traçabilité) affirme "ECT-03/ECT-07 | TC-09 (PREMIUM quotas levés)", alors que TC-09 ne met en jeu que deux comptes FREE (
U_MINOR_A,U_GUARDIAN_B) et teste l'indépendance inter-comptes, pas l'absence de limite PREMIUM. -
Impact : faux sentiment de couverture d'une exigence contractuelle structurante; risque de gate validée sans preuve de non-limitation PREMIUM.
-
DIV-03 : Référence de scénario incohérente pour CA-84-08 révisé.
- Source A (specification) : CA-84-08 révisé porte sur dossier
CLOSED_READ_ONLY(ajout refusé) et verrou export; note de périmètre API explicite (Spec 6). - Source B (tests) : section 6 indique "Couvert par TC-12 (révisé périmètre API)", alors que TC-12 traite l'absence de reset mensuel; le test opérationnel pertinent est TC-08 (et partiellement TC-05 pour export FREE).
-
Impact : traçabilité CA -> TC ambiguë, audit de couverture potentiellement contestable en gate.
-
DIV-04 : Niveau d'exigence sur le message de quota document.
- Source A (specification) : contrat de message minimal exact pour quota document: "Passez en Premium pour des dossiers illimités" (Spec 7.3).
- Source B (tests) : TC-04 n'impose qu'un "message fonctionnel indique disponibilité Premium" sans vérification de la chaîne contractuelle exacte.
- Impact : conformité textuelle contractuelle non objectivée par les tests; risque d'écart UX/copy non détecté.
4. Zones d'ombre¶
- Aucun test explicite du garde-fou production de
PUT /account/plan(ENABLE_PLAN_STUB=true, endpoint non exposé publiquement en prod) alors que c'est normatif (Spec 3.2.3). - Aucun test du comportement "audit log indisponible" avec non-blocage métier + mise en file/retry asynchrone (Spec SEC-84-03).
- Les statuts HTTP normatifs (
422pour quotas/capacités, etc.) sont spécifiés, mais la majorité des scénarios vérifie surtout les codes métier; la conformité HTTP reste peu démontrée. - La spécification laisse ouverte la question de paramétrabilité runtime du SLA (Spec 9.1) et le cahier de tests ne la ferme pas.
- Le périmètre exact de vérification de
PLAN_STATE_INCONSISTENTen audit est présent sur le principe (TC-SLA-01) mais sans cas de test forcé d'expiration >30s décrit pas-à-pas (injection de délai, oracle de détection). - Les obligations RGPD renforcées (Spec SEC-84-04) restent majoritairement hors protocole testable détaillé; la couverture est annoncée partielle côté API.
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