Aller au contenu

PD-285 — Rapport d'acceptabilité

Date : 2026-03-14 Story : Relever DocumentCategoryConfig maxSize de 100 MB à 500 MB

Phase 1 — Quality Gates automatiques

TypeScript (npx tsc --noEmit)

  • Résultat : OK (0 erreurs)

Tests unitaires

  • Commande : npx jest --testPathPattern="category-config|deposit.controller.integration|deposit-category.security"
  • Résultat : 44 tests passés, 0 échec
  • Suites : 2/2 passées

ESLint

  • Non exécuté (aucun nouveau code applicatif — migration SQL + mocks de test uniquement)

Phase 1.5 — Sonar QG local

Non applicable — aucun nouveau code applicatif. La migration SQL et les modifications de mocks ne sont pas couvertes par Sonar. Les fichiers de documentation PD-252 sont hors périmètre Sonar.

Phase 2 — Revue manuelle

Vérification CA par CA

CA Vérifié Méthode
CA-01 Migration SQL UPDATE ... SET max_size_bytes = 524288000 WHERE category = 'DEFAULT'
CA-02 Migration SQL UPDATE ... SET max_size_bytes = 524288000 WHERE category = 'B2C_EVIDENCE_MINOR'
CA-03 Middleware lit maxSizeBytes depuis DB via resolve(). Valeur post-migration = 524288000. Test TC-NOM-03/04 passe.
CA-04 Service assertSizeAllowed compare à maxSizeBytes = 524288000. Test TC-NOM-05 ERR-79-004 vérifié.
CA-05 44 tests passés. Mocks mis à jour (524288000). Test non-régression 100 MB ajouté.
CA-06 PD-252-besoin.md : "max 500 MB". PD-252-specification.md : tableau paramètres 500 MB.
CA-07 Vérification pipeline cohérence inter-EB à exécuter post-migration en dev.

Fichiers modifiés

Fichier Type de changement
src/database/migrations/1742100000000-PD285-RaiseMaxSize500MB.ts Nouveau — migration SQL UPDATE
src/modules/documents/services/category-config.service.spec.ts Modifié — mocks 524288000, tests borne 500 MB
src/modules/documents/controllers/deposit.controller.integration.spec.ts Modifié — mocks 524288000
src/modules/documents/__tests__/security/deposit-category.security.spec.ts Modifié — mocks et bornes 524288000
ProbatioVault-doc/.../PD-252-besoin.md Modifié — "max 500 MB"
ProbatioVault-doc/.../PD-252-specification.md Modifié — tableau paramètres 500 MB

Code review

  • Migration : UPDATE simple avec clause WHERE restrictive + condition idempotence (max_size_bytes = 104857600). Pas de DDL, pas de risque ALTER TYPE ADD VALUE. down() vide (production safety).
  • Tests : Mocks mis à jour, bornes ajustées, test non-régression ajouté. Aucune logique de test modifiée.
  • Documentation : Amendements mineurs dans PD-252 — valeur 100→500 MB.

Sécurité

  • Aucune nouvelle surface d'attaque
  • Quotas utilisateur inchangés (cumul, concurrence, journalier)
  • Middleware Content-Length toujours actif
  • Pas de nouveau code applicatif = pas de nouveau vecteur

Synthèse

Critère Statut
TypeScript ✅ OK
Tests ✅ 44/44
ESLint N/A (pas de code applicatif)
Sonar N/A (pas de code applicatif)
CA 1-6 ✅ Vérifiés
CA 7 ⏳ Post-migration
Sécurité ✅ Aucun risque

Verdict acceptabilité : CONFORME — prêt pour Gate 8.