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 risqueALTER 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.