- Entités: 7 nouveaux schémas (sessions, devices, consents, location-history, interest-gauges, reports, exports) - États: 5 diagrammes lifecycles (compte, contenu, session, signalement, export) - Séquences: 6 flows (auth, refresh token, modération, signalement, export, suppression) - Renommage: modele-global.md → entities-overview.md - MkDocs: organisation hiérarchique par catégories Format concis: diagrammes Mermaid + règles essentielles uniquement
1.2 KiB
1.2 KiB
Séquence - Export de données RGPD
Diagramme
sequenceDiagram
participant U as Utilisateur
participant API as Backend API
participant DB as PostgreSQL
participant W as Worker
participant S as OVH Storage
participant E as Email
U->>API: POST /exports (demande)
API->>DB: Vérification limite (1/mois)
API->>DB: INSERT export (status=pending)
API->>W: Job asynchrone
API-->>U: Export en préparation
W->>DB: Collecte données (profil, écoutes, contenus...)
W->>W: Génération JSON + HTML
loop Contenus audio
W->>DB: SELECT audio_url
W->>W: Copie fichier
end
W->>W: Création ZIP
W->>S: Upload fichier
S-->>W: URL signée (7j)
W->>DB: UPDATE export (status=ready, url, size)
W->>E: Email avec lien download
E-->>U: Export prêt (expire 7j)
U->>S: GET /export-signed-url
S-->>U: Téléchargement ZIP
Note over DB: Job quotidien
DB->>S: DELETE exports expirés (> 7j)
Légende
Conformité RGPD : Délai max 48h (Article 20) Format : ZIP (JSON machine-readable + HTML human-readable + audio) Limite : 1 export/mois Expiration : 7 jours calendaires Sécurité : URL signée unique