Aller au contenu

PD-82 — Plan Review (Gate 5 AMBIGUITY)

Écarts identifiés

Type : Faisabilité Référence : Dépendances + Checklist pre-implémentation + Phases 1-3 Description : Les dépendances critiques (PD-41 activatePRE, PD-31 nouveaux types d'événements, registre autorités, service de vérification de certificats, endpoint TSA) sont listées mais restent au statut checklist sans point de contrôle bloquant avant le démarrage des tâches agents. Impact : Une exécution autonome peut démarrer sur des prérequis absents, produisant des livrables non exécutables ou bloqués tardivement. Gravité : Bloquant

Type : Faisabilité Référence : Dépendances (activatePRE(delegationId), AuthAuditWriterService.write(), OidcJwtValidationService) + CC-82-03/05/06 Description : Les interfaces externes sont supposées mais non spécifiées (signature d'entrée/sortie, erreurs, timeouts, contrats de retour), alors qu'elles conditionnent les services cœur et l'API. Impact : Risque élevé d'incompatibilité d'intégration inter-modules et d'échec des tests d'intégration/e2e. Gravité : Majeur

Type : Faisabilité Référence : Décisions techniques (RFC 3161 + TSR) + Structure module + Entités définies Description : Le plan impose RFC 3161/TSR mais ne définit ni composant dédié de client TSA ni stockage explicite du jeton TSR dans le modèle de données. Impact : L'exigence d'horodatage probatoire peut être non implémentable de bout en bout avec preuve persistée. Gravité : Majeur

Type : Couverture Référence : Invariants INV-82-11 (horodatage probatoire) / INV-82-09,10 (preuves crypto) + ValidationRecord Description : Les champs validatedAt, signature, certificateChain sont prévus, mais la preuve d'horodatage RFC 3161 (TSR) n'apparaît pas explicitement dans les données persistées. Impact : Couverture partielle des invariants probatoires; difficulté à démontrer la validité cryptographique ex post. Gravité : Majeur

Type : Couverture Référence : CA-82-01 à CA-82-10 ("testables avec observables") + CC-82-08 + Tâches 8-10 Description : Le plan ne fournit pas de matrice de traçabilité test->CA->observable; les tests sont décrits par niveau (unit/integration/e2e) sans correspondance explicite par critère. Impact : Impossible de vérifier formellement que chaque CA est couvert par un test observable unique et vérifiable. Gravité : Majeur

Type : Couverture Référence : CC-82-07 (TTL Scheduler INV-82-02,03 -> CA-82-03) + Tâches 8-10 Description : Les tests explicitement listés ne mentionnent pas de scénario de bord temporel (expiration exacte à 168h UTC, transitions à la frontière, non-réactivation post-expiration). Impact : Risque de non-couverture des comportements temporels critiques liés au TTL. Gravité : Majeur

Type : Risque Référence : Risques identifiés #1 (PD-41 non idempotent) + Dépendances PD-41 + CC-82-03 Description : Le risque d'idempotence est noté mais dépend d'un comportement amont non garanti; la mitigation mentionne une clé d'idempotence sans contrat d'interface confirmé côté PD-41. Impact : Double activation possible en production, compromettant l'invariant de validation stricte et l'intégrité du workflow. Gravité : Bloquant

Type : Risque Référence : Risques identifiés #3/#4 (TSA indisponible, timeout vérification signature) + Phase 2 Description : Les mitigations (TSA externe, async retry) ne sont pas reliées à des mécanismes de persistance/compensation explicites (état intermédiaire, reprise après crash, poison messages). Impact : Risque de pertes de preuve ou d'états incohérents en cas de panne partielle. Gravité : Majeur

Type : Risque Référence : Entités définies (certificateChain, eidasLevel, revoked) + INV-82-10 (révocation) Description : Le plan ne trace pas explicitement la stratégie de fraîcheur de révocation (moment de contrôle, périodicité, preuve de vérification) malgré l'invariant de révocation. Impact : Acceptation possible de certificats révoqués selon la fenêtre temporelle de vérification. Gravité : Majeur

Type : Cohérence Référence : Module structure (__tests__/ (3 fichiers)) + Séquence d'implémentation (Tâches 8,9,10) Description : La structure cible annonce 3 fichiers de tests, tandis que le plan sépare trois lots de tests distincts (unit, integration, e2e) avec périmètres multiples; la granularité cible est ambiguë. Impact : Ambiguïté de découpage pour agents autonomes, avec risque de chevauchements ou trous de couverture. Gravité : Mineur

Type : Cohérence Référence : Migration SQL (append-only trigger uniquement sur validation_record) + invariant append-only (résumé spec) Description : Le plan n'explicite pas le périmètre exact de l'append-only vis-à-vis de dual_validation_request (table d'état mutable) vs journal de validation. Impact : Ambiguïté d'interprétation de l'invariant append-only et risque d'écart de conformité selon l'implémentation agent. Gravité : Majeur