Aller au contenu

PD-13 — Acceptabilité


📚 Navigation User Story | Document | | | ---------- | -- | | 📋 [Spécification](PD-13-specification.md) | | | 🛠️ [Plan d'implémentation](PD-13-plan.md) | | | ✅ **Critères d'acceptation** | *(ce document)* | | 📝 [Retour d'expérience](PD-13-rex.md) | | [← Retour à backend-core](../PD-186-epic.md) · [↑ Index User Story](index.md)

Objectif

Vérifier que l’implémentation est conforme à la spécification, respecte l’ensemble des invariants ProbatioVault et ne présente aucune incohérence ou oubli critique.


Périmètre de vérification

La revue d’acceptabilité vérifie explicitement :

  • la conformité stricte à la spécification fonctionnelle
  • le respect de tous les invariants applicables
  • la couverture des scénarios de test définis
  • l’absence d’incohérences, oublis ou régressions

Écarts identifiés

Chaque écart constaté doit être documenté et classé selon sa gravité.

Classification des écarts

Niveau Définition
BLOQUANT Violation d’un invariant, faille de sécurité, non-conformité majeure à la spec
MAJEUR Fonction incomplète, comportement non conforme mais sans rupture de sécurité
MINEUR Détail, dette acceptable, amélioration non critique

Détail des écarts

ID Description Référence Gravité
E-01 Dockerfile multistage non fonctionnel : la phase builder exécute npm ci --only=production puis npm run build sans dépendances de build (TypeScript, Nest CLI en devDependencies). Le build échoue ou dépend d’artefacts préexistants, en contradiction avec l’exigence d’une image Docker construisible. Spec §5.5 / §7 (Build Docker OK) ; Dockerfile MAJEUR
E-02 Validation des variables d’environnement absente : ConfigurationModule charge les configs sans schéma Joi ou validation stricte, alors que le plan prévoit validation centralisée des env vars pour sécurité/config. Plan Phase 2 (validation env), Spec §5.3 Qualité & sécurité ; src/config/config.module.ts MAJEUR
E-03 Couverture branches < 85% : seuil fixé à 80% (coverageThreshold.global.branches), inférieur à l’exigence de couverture ≥ 85%. Spec §7 Critères d’acceptation (couverture ≥ 85%) ; package.json (Jest config) MAJEUR
E-04 Module jobs incomplet : seul jobs.module.ts existe, sans service ni test, alors que la spec demande chaque module avec module + service + test initial. Spec §6 Modules à créer (service + test par module) ; src/modules/jobs/ MAJEUR
E-05 ADR non initialisé : aucun répertoire/entrée docs/adr/ présent, malgré l’exigence de documentation initiale (ADR) dans la DoD. Spec §7 Critères d’acceptation / Documentation ; arborescence docs/ MINEUR

Conclusion d’acceptabilité

⚠️ ACCEPTÉ AVEC RÉSERVES — écarts MAJEURS/MINEURS documentés (Docker build, validation env, couverture branches, module jobs incomplet, ADR manquant).