Feature #28
Updated by Redmine Admin about 2 months ago
## Spec — Gestion des SOUPs dans Pipeliner ### Approche (4 plans = unités de découpe) 1. Trivy → Dependency-Track : SBOM Trivy à chaque build preprod → DTracker (lié image signée), règles IEC 62304 / PCI DSS, faux positifs/relances côté omdev. 2. Aggregator (read-plane, unique source) : client DTracker + endpoint `/api/projects/{key}/soups`, cache 6h, format client, champs sensibles masqués. 3. Backend Pipeliner : proxy `owned_project` mince n'appelant QUE l'aggregator + garde `_normalize_` (dégradé → 200 enveloppe vide, jamais 500). 4. Frontend : module « SOUPs Management » sur modèle Security Ops (vue d'ensemble risque/camembert/courbe 30j via TimeSeriesChart/top3, tableau filtrable, rapports IEC62304/PCI DSS/générique PDF+Excel). ### Garde-fous - Aggregator = seule source ; jamais d'appel direct Trivy/DTracker depuis le dashboard. - Faux positifs/relances jamais côté client (test). - Wrapper recharts unique `TimeSeriesChart` ; i18n via en.ts. Validé PO (approuvé). Découpé en 5 sous-tâches : #41 → #42 → #43 → #44 → #45 (chaîne linéaire). conversation:24