PD-80 — Dossier de conformité Gate 5 (v1)¶
1. Contexte¶
- Story : PD-80 — Implémenter scellement instantané < 1h
- Gate : 5 — AMBIGUITY
- Itération : v1
- Date : 2026-03-12
- P1 (review) : Claude (claude -p) — dérogation Art. II (prompt 112KB > 30KB)
- P2 (confrontation) : Claude (claude -p) — même dérogation
- Score Gate 3 : RESERVE (8.875/10)
2. Écarts identifiés¶
2.1 BLOQUANTS (0)¶
Aucun.
2.2 MAJEURS (4)¶
| ID | Type | Source | Description |
|---|---|---|---|
| ECT-01 | AMB | Review + Confront DIV-01 | Anti-starvation INV-80-11 : le mécanisme limiter BullMQ ne fait pas de weighted fair queuing cross-queue. Le ratio 5:1 entre queues séparées n'est pas décrit concrètement |
| ECT-02 | AMB | Review | DEK post-commit : generateAndWrapDek() appelé après COMMIT — fenêtre crash sans DEK |
| ECT-03 | AMB | Review | P95 sliding window : prom-client Histogram ne supporte pas nativement fenêtre 24h + N≥100 + INSUFFICIENT_DATA |
| ECT-04 | DIV | Confront DIV-04 | Proof package assembly (spec §5.5 étape 6) : aucun composant dans le plan pour sla_proof_max |
2.3 MINEURS (5)¶
| ID | Type | Source | Description |
|---|---|---|---|
| ECT-05 | AMB | Review | Statut dépendances inter-PD non formalisé |
| ECT-06 | AMB | Review | Framework de test non spécifié (Jest vs Vitest) |
| ECT-07 | AMB | Review | Compatibilité ESM/CJS non tranchée |
| ECT-08 | DIV | Confront DIV-02 | Interaction batch_size_min vs batch_time_max flush |
| ECT-09 | DIV | Confront DIV-03 | DEK post-commit doublon avec ECT-02 (confirmé par confrontation) |
3. Scoring v1¶
Base 10, déductions :
| Critère | Déductions | Score |
|---|---|---|
| feasibility | -1 (ECT-01 anti-starvation) -1 (ECT-02 DEK) -0.25 (ECT-05) = -2.25 | 7.75 |
| coverage | -1 (ECT-04 proof assembly) -0.25 (ECT-06) -0.25 (ECT-07) = -1.5 | 8.5 |
| risk_mitigation | -1 (ECT-03 P95 infra) -0.25 (ECT-08) -0.25 (ECT-09) = -1.5 | 8.5 |
| coherence | 0 | 10 |
Moyenne v1 : (7.75 + 8.5 + 8.5 + 10) / 4 = 8.6875
4. Verdict¶
- Moyenne 8.6875 >= 7 ✅
- Score minimum : feasibility 7.75 >= 6 ✅
- Tous les scores >= 8 ? feasibility 7.75 < 8 → non GO
- Mais moyenne >= 7 et tous >= 6 → RESERVE
Verdict : RESERVE (feasibility 7.75 < 8)
Les 4 MAJEURs sont des ambiguïtés d'implémentation qui seront résolues directement lors de l'étape 6 (agents de code) : - ECT-01 : le weighted scheduling sera implémenté comme un consumer partagé avec compteur local (pas limiter) - ECT-02 : DEK sera générée DANS la transaction, pas post-commit - ECT-03 : calcul P95 custom sur table matérialisée, pas prom-client natif - ECT-04 : composant proof-package sera ajouté à la décomposition