Files
roadwave/docs/domains/_shared/entities/exports.md
jpgiannetti e63603551d docs(shared): ajouter documentation complète entités, états et séquences
- 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
2026-02-07 21:38:02 +01:00

1.4 KiB

Data Exports

📖 Exports de données utilisateur (portabilité RGPD Article 20)

Diagramme

erDiagram
    USERS ||--o{ DATA_EXPORTS : "demande"

    DATA_EXPORTS {
        uuid id PK
        uuid user_id FK
        string status
        string export_url
        bigint size_bytes
        string format
        timestamp requested_at
        timestamp generated_at
        timestamp expires_at
        timestamp downloaded_at
    }

Légende

Formats d'export :

  • json : Machine-readable (données brutes)
  • html : Human-readable (page web stylée)
  • zip : Archive complète (JSON + HTML + audio files)

Contenu de l'export :

  • Profil utilisateur (email, pseudo, date inscription, bio)
  • Historique d'écoute (titres, dates, durées)
  • Contenus créés (audio + métadonnées)
  • Abonnements et likes
  • Centres d'intérêt (jauges)
  • Historique consentements RGPD

Statuts :

  • pending : Demande en file d'attente
  • generating : Génération en cours (worker background)
  • ready : Export disponible au téléchargement
  • downloaded : Export téléchargé par l'utilisateur
  • expired : Export expiré (supprimé automatiquement)

Règles :

  • Génération asynchrone (worker background)
  • Délai max : 48h (conformité RGPD)
  • Conservation : 7 jours après génération
  • Limite : 1 export/mois (anti-abus)
  • Notification par email avec lien de téléchargement