PD-242 — Confrontation Gate 3¶
Confrontation : Analyse croisée des points Review Phase 1 Date : 2026-02-19
Analyse des points identifiés¶
Point 1 — Comportement API user_id inexistant¶
Review Claude : Ambiguïté sur le comportement 404 vs 401 pour user_id inexistant.
Confrontation : - Argument pour maintenir l'écart : La spec API ne définit pas explicitement ce cas. Risque d'énumération réel. - Argument contre : GET /recovery/h_verify/:user_id retourne déjà H_verify. Si user_id inexistant → 404 logique. Mais GET /recovery/envelope nécessite X-H-Verify-Candidate, donc même si 404, l'attaquant ne peut pas progresser sans H_verify valide. - Verdict : FAUX POSITIF — Le design avec H_verify en header protège contre l'énumération. L'ordre des appels (d'abord h_verify, puis envelope avec candidate) rend l'énumération non exploitable.
Point 2 — Hypothèse utilisateur sauvegarde¶
Review Claude : Hypothèse UX hors périmètre technique.
Confrontation : - Argument pour maintenir : C'est bien une hypothèse. - Argument contre : La spec documente explicitement ce risque dans la section "Risques identifiés" avec mitigation (confirmation 24 mots obligatoire). Ce n'est pas un écart mais un risque résiduel accepté. - Verdict : FAUX POSITIF — Risque correctement documenté et mitigé par design (INV-242-09).
Point 3 — TC-VEC-01 et TC-VEC-02 non définis¶
Review Claude : Tests référencés dans la matrice mais non détaillés.
Confrontation : - Argument pour maintenir : Les IDs TC-VEC-01/02 apparaissent dans la matrice (TA-14) mais pas dans les scénarios. - Argument contre : Les vecteurs BIP-39 sont inclus en annexe avec données complètes. Le test est implicite dans TC-BIP-03 qui utilise ces vecteurs. De plus, TC-CRYPTO-02 référence explicitement les vecteurs BIP-39. - Verdict : ÉCART MINEUR CONFIRMÉ — Formaliser TC-VEC-01/02 ou renommer la référence dans la matrice pour pointer vers TC-BIP-03 et TC-CRYPTO-02.
Synthèse confrontation¶
| Point | Verdict initial | Verdict après confrontation |
|---|---|---|
| 1 | Mineur | Annulé (faux positif) |
| 2 | Mineur | Annulé (faux positif) |
| 3 | Mineur | Confirmé (mineur) |
Écarts finaux : 1 mineur (nomenclature tests vecteurs)
Conclusion¶
La confrontation révèle que 2 des 3 points identifiés sont des faux positifs. Le design de l'API avec H_verify protège contre l'énumération, et le risque de non-sauvegarde est correctement mitigé.
Un seul écart mineur subsiste : la nomenclature des tests vecteurs (TC-VEC-*) dans la matrice devrait pointer vers les tests existants ou être formalisée.
Impact sur le scoring : Aucun écart bloquant ou majeur. Le mineur n'affecte pas la testabilité globale.