PD-52 — Dossier de Conformité Gate 5¶
Story : PD-52 — Setup connexion Ethereum L2 (Polygon/Arbitrum) Epic : PD-187 — BLOCKCHAIN Gate : 5 — AMBIGUITY (Review Plan d'implémentation) Date : 2026-02-12 Itération : v1
1. Documents audités¶
| Document | Version | Date |
|---|---|---|
| PD-52-specification.md | v2 | 2026-02-12 |
| PD-52-tests.md | v1 | 2026-02-12 |
| PD-52-plan.md | v1 | 2026-02-12 |
| PD-52-code-contracts.yaml | v1 | 2026-02-12 |
2. Artefacts de gate produits¶
| Artefact | Description |
|---|---|
| PD-52-plan-review.md | Review initiale (15 écarts identifiés) |
| PD-52-confrontation-step5.md | Contre-audit (12 écarts actifs, 3 révoqués) |
| PD-52-dossier-conformite-step5.md | Ce document |
| PD-52-verdict-step5-v1.yaml | Verdict PMO structuré |
3. Synthèse des écarts après confrontation¶
Écarts bloquants (0)¶
Aucun. Les 4 écarts initialement classés BLOQUANT ont été réduits : - ECT-PLAN-01 : Réduit à MAJEUR (cohérent avec H-52-07) - ECT-PLAN-06 : Réduit à MAJEUR (manque de détail, pas d'impossibilité) - ECT-PLAN-07 : Réduit à MAJEUR (manque d'explicitation) - ECT-PLAN-13 : Révoqué (confirmations présent dans CC-52-01)
Écarts majeurs (10)¶
| ID | Description | Impact |
|---|---|---|
| ECT-PLAN-01 | S1/S3 en stub sans comportement explicite | Ambiguïté sur le comportement des stubs |
| ECT-PLAN-03 | INV-52-11 couverture partielle (propagation erreurs) | Traçabilité incomplète |
| ECT-PLAN-04 | Mesure écart gas non formalisée | CA-52-05 non démontrable |
| ECT-PLAN-05 | Audit secrets non planifié | CA-52-09 non démontrable |
| ECT-PLAN-06 | Test 10/10 non détaillé | Granularité insuffisante |
| ECT-PLAN-07 | Point d'observabilité SLA non explicité | CA-52-07 difficile à prouver |
| ECT-PLAN-08 | Précondition wallet fundé implicite | Dépendance environnement |
| ECT-PLAN-09 | Préconditions infrastructure implicites | Reproductibilité compromise |
| ECT-PLAN-12 | Composants sans code contract | Complétude contractuelle |
| ECT-PLAN-15 | Artefact couverture non formalisé | CA-52-12 non prouvable |
Écarts mineurs (2)¶
| ID | Description |
|---|---|
| ECT-PLAN-10 | Risque corrélation métadonnées (timestamp seul) |
| ECT-PLAN-14 | MAINNET_FORBIDDEN en double (défense en profondeur) |
Écarts révoqués (3)¶
| ID | Raison de révocation |
|---|---|
| ECT-PLAN-02 | /health/bc = abréviation visuelle du diagramme |
| ECT-PLAN-11 | TRANSACTION_ABANDONED est le 15ème code dérivé de ERR-52-08 |
| ECT-PLAN-13 | NetworkConfig.confirmations présent dans CC-52-01 |
4. Couverture des invariants¶
| Invariant | Couverture plan | Code contract | Statut |
|---|---|---|---|
| INV-52-01 | T-04, T-05 | CC-52-04 | ✅ OK |
| INV-52-02 | T-04, T-14 | CC-52-03, CC-52-09 | ✅ OK |
| INV-52-03 | T-09, T-10, T-11, T-13 | CC-52-05, CC-52-06 | ✅ OK |
| INV-52-04 | T-12 | CC-52-07 | ✅ OK |
| INV-52-05 | T-12 | CC-52-07 | ✅ OK |
| INV-52-06 | T-05 | CC-52-04 | ✅ OK |
| INV-52-07 | T-05, T-06 | CC-52-04 | ✅ OK |
| INV-52-08 | T-14 | CC-52-09 | ✅ OK |
| INV-52-09 | T-17 | CC-52-12 | ✅ OK |
| INV-52-10 | T-18, T-19 | CC-52-13, CC-52-14 | ✅ OK |
| INV-52-11 | T-03 | CC-52-02 | ⚠️ Partiel (ECT-PLAN-03) |
| INV-52-12 | T-20..T-23 | CC-52-15..CC-52-19 | ⚠️ Partiel (ECT-PLAN-15) |
| INV-52-13 | T-01, T-17 | CC-52-01 | ✅ OK |
5. Couverture des codes d'erreur¶
| Code erreur | Tâche | Code contract | Statut |
|---|---|---|---|
| RPC_PRIMARY_FAILED | T-05 | CC-52-04 | ✅ |
| RPC_UNAVAILABLE | T-05 | CC-52-04 | ✅ |
| CUSTODY_MODE_MISSING | T-12 | CC-52-07 | ✅ |
| CUSTODY_MODE_INVALID | T-12 | CC-52-07 | ✅ |
| CUSTODY_MODE_AMBIGUOUS | T-12 | CC-52-07 | ✅ |
| CUSTODY_MODE_UNKNOWN | T-12 | CC-52-07 | ✅ |
| SIGNATURE_VERIFICATION_FAILED | T-13 | CC-52-08 | ✅ |
| INSUFFICIENT_FUNDS | T-16 | CC-52-11 | ✅ |
| GAS_PRICE_CEILING_EXCEEDED | T-15, T-16 | CC-52-10, CC-52-11 | ✅ |
| TRANSACTION_REORG | T-17 | CC-52-12 | ✅ |
| TRANSACTION_ABANDONED | T-17 | CC-52-12 | ✅ |
| SECRET_LEAK_DETECTED | T-20 | CC-52-16 | ✅ |
| RPC_INVALID_ENDPOINT | T-05 | CC-52-04 | ✅ |
| MAINNET_FORBIDDEN | T-04, T-14 | CC-52-03, CC-52-09 | ✅ |
| PAYLOAD_VALIDATION_FAILED | T-14 | CC-52-09 | ✅ |
6. Points forts du plan¶
- Architecture modulaire : Séparation claire (RPC, Custody, Wallet, Transaction, Health)
- Pattern Strategy : Extensibilité des modes de custody
- Code contracts détaillés : Interfaces TypeScript complètes
- Matrice de couverture : Mapping explicite invariants → tâches
- Décisions architecturales documentées : DA-01 à DA-05 justifiées
7. Pattern d'écarts identifié¶
Les écarts majeurs sont des manques d'explicitation, pas des violations de spec.
Le plan couvre les exigences fonctionnelles mais manque de précisions sur : - Les points d'observabilité pour la vérification des SLA - Les préconditions d'environnement (infrastructure, funding) - Les artefacts de preuve (rapports de couverture, audits)
Ce pattern est caractéristique d'un plan technique solide mais insuffisamment documenté pour l'auditabilité externe.
8. Recommandation pré-verdict¶
Le plan peut être accepté sous RESERVE avec les corrections suivantes :
- Ajouter une section "Préconditions d'environnement" (résout ECT-PLAN-08, ECT-PLAN-09)
- Expliciter le comportement des stubs S1/S3 (résout ECT-PLAN-01)
- Ajouter une tâche T-24 "Audit de secrets" (résout ECT-PLAN-05)
- Compléter les code contracts manquants (résout ECT-PLAN-12)
Ces corrections n'impactent pas l'architecture et peuvent être faites rapidement.
Verdict préliminaire¶
RESERVE — 0 bloquant, 10 majeurs, 2 mineurs
Le plan est solide et conforme à la spécification. Les écarts identifiés sont des améliorations de documentation, pas des modifications architecturales.