# language: fr @rgpd @data-retention Fonctionnalité: Durée de conservation des données et purge automatique # 13.6 - 5 ans inactivité → purge automatique (principe de minimisation RGPD) Contexte: Étant donné que le système de purge automatique est actif # Règles de conservation Scénario: Auditeur inactif depuis 5 ans - suppression automatique Étant donné que je suis un auditeur (sans contenu créé) Et que je ne me suis pas connecté depuis le 2020-01-01 Et que la date actuelle est 2025-01-02 (>5 ans) Quand le job de purge automatique s'exécute Alors mon compte est automatiquement supprimé Et toutes mes données personnelles sont effacées Et aucune trace ne subsiste dans la base de données Scénario: Créateur avec contenus actifs - conservation indéfinie Étant donné que je suis un créateur Et que j'ai créé 10 contenus qui reçoivent encore des écoutes Et que je ne me suis pas connecté depuis 6 ans Quand le job de purge automatique s'exécute Alors mon compte n'est pas supprimé Et mes données personnelles sont conservées tant que mes contenus sont écoutés Et mes contenus continuent d'être diffusés normalement Scénario: Créateur inactif sans écoutes - suppression automatique Étant donné que je suis un créateur Et que j'ai créé 5 contenus Et que je ne me suis pas connecté depuis 5 ans (depuis 2020-01-01) Et que mes contenus n'ont reçu aucune écoute depuis 2 ans (depuis 2023-01-01) Et que la date actuelle est 2025-01-02 Quand le job de purge automatique s'exécute Alors mon compte est automatiquement supprimé Et mes contenus sont anonymisés (créateur = "Utilisateur supprimé") Et les fichiers audio restent disponibles mais anonymisés # Notifications avant suppression Scénario: Notifications par email avant purge Étant donné que je suis inactif depuis 4 ans et 9 mois Quand le système détecte que je suis éligible à la purge dans 90 jours Alors je reçois un email avec le sujet "Votre compte RoadWave sera supprimé dans 90 jours" Et l'email contient: """ Bonjour, Votre compte RoadWave n'a pas été utilisé depuis plus de 4 ans. Conformément à notre politique de conservation des données, votre compte sera automatiquement supprimé dans 90 jours si vous ne vous connectez pas. Pour conserver votre compte, il suffit de vous connecter avant le [date limite]. Date de dernière connexion: [date] Date de suppression prévue: [date + 90j] Si vous ne souhaitez pas conserver ce compte, aucune action n'est requise. """ Et un lien de connexion est inclus dans l'email Scénario: Rappels à 90j, 30j et 7j avant suppression Étant donné que je suis éligible à la purge automatique Quand les délais s'écoulent Alors je reçois les emails suivants: | délai | sujet email | | 90 jours | Votre compte sera supprimé dans 90 jours | | 30 jours | Rappel: Votre compte sera supprimé dans 30 jours | | 7 jours | Dernière alerte: suppression dans 7 jours | Et chaque email contient un lien de connexion pour réactiver le compte Et les notifications push sont également envoyées si activées Scénario: Connexion annule la suppression programmée Étant donné que je suis éligible à la purge dans 15 jours Et que j'ai reçu plusieurs emails d'avertissement Quand je me connecte à mon compte Alors la suppression programmée est annulée immédiatement Et le compteur d'inactivité est remis à zéro Et je reçois un email de confirmation: "Votre compte a été réactivé" Et je peux continuer à utiliser l'application normalement # Job de purge automatique Scénario: Exécution quotidienne du job de purge Étant donné que le système est en production Quand on consulte les jobs planifiés Alors un job "purge_inactive_accounts" est configuré Et le job s'exécute tous les jours à 03:00 (heure creuse) Et le job identifie les comptes éligibles à la purge Et le job traite les suppressions automatiques Scénario: Critères d'éligibilité à la purge Étant donné que le job de purge s'exécute Quand le système identifie les comptes éligibles Alors les critères suivants sont appliqués: | type_compte | critères | | Auditeur uniquement | 5 ans sans connexion | | Créateur avec contenus actifs| Jamais (tant qu'écoutes) | | Créateur inactif | 5 ans sans connexion + 2 ans sans écoute | Et seuls les comptes remplissant tous les critères sont supprimés Scénario: Métriques du job de purge Étant donné que le job de purge s'exécute le 2025-01-15 Quand le job se termine Alors un rapport est généré avec: | métrique | exemple | | Comptes analysés | 150 000 | | Comptes éligibles à la purge | 350 | | Auditeurs supprimés | 300 | | Créateurs inactifs supprimés | 50 | | Créateurs conservés (actifs) | 0 | | Erreurs | 0 | | Durée d'exécution | 45s | Et le rapport est loggé pour audit # Contenus conservés après purge Scénario: Contenus de comptes purgés conservés anonymement Étant donné que mon compte créateur est purgé automatiquement Quand la suppression est effective Alors mes contenus créés sont conservés indéfiniment Et les contenus sont anonymisés (créateur = "Utilisateur supprimé") Et les fichiers audio restent sur le CDN Et les statistiques d'écoute sont préservées Et les utilisateurs peuvent toujours écouter mes contenus # Exception: créateurs avec écoutes régulières Scénario: Créateur inactif mais contenus populaires - pas de purge Étant donné que je suis un créateur inactif depuis 6 ans Mais que mes contenus reçoivent 500+ écoutes par mois Quand le job de purge s'exécute Alors mon compte n'est pas supprimé Et je continue de recevoir les emails d'avertissement tous les 6 mois Et mes contenus continuent d'être diffusés Et je peux me reconnecter à tout moment # Définition de "écoute" pour les créateurs Scénario: Qu'est-ce qu'une "écoute" pour le calcul d'inactivité Étant donné que je suis un créateur Quand le système calcule si mes contenus sont "actifs" Alors une "écoute" est comptabilisée si: | condition | comptabilisée | | Écoute complète (>80%) | oui | | Écoute partielle (>30%) | oui | | Skip rapide (<30%) | non | | Écoute par un bot (détecté) | non | Et au moins 1 écoute valide dans les 2 dernières années maintient le compte actif # Principe de minimisation RGPD Scénario: Conformité principe de minimisation Étant donné que le système de purge automatique est en place Quand un auditeur RGPD vérifie la conformité Alors le système respecte le principe de minimisation: | principe | respecté | | Conservation limitée dans le temps | oui | | Suppression automatique après inactivité | oui | | Délai raisonnable (5 ans) | oui | | Notifications préalables | oui | | Exception justifiée (contenus actifs) | oui | Et le délai de 5 ans est conforme aux standards de l'industrie # Reset du compteur d'inactivité Scénario: Actions qui réinitialisent le compteur d'inactivité Étant donné que je suis inactif depuis 4 ans Quand j'effectue l'une des actions suivantes: | action | | Connexion à l'application | | Publication d'un nouveau contenu | | Like d'un contenu | | Abonnement à un créateur | | Modification de mon profil | Alors le compteur d'inactivité est remis à zéro Et la suppression programmée est annulée Et je ne suis plus éligible à la purge pour 5 ans # Logs d'audit Scénario: Traçabilité des suppressions automatiques Étant donné qu'un compte est supprimé automatiquement Quand la suppression est effective Alors un log d'audit est créé avec: | champ | valeur | | user_id | [ID anonymisé] | | account_type | auditeur / créateur | | last_login | 2020-01-15T10:00:00Z | | last_content_listen | 2023-06-01T14:30:00Z | | purge_date | 2025-01-15T03:00:00Z | | notifications_sent | 3 (90j, 30j, 7j) | | reason | 5_years_inactivity | Et le log est conservé 5 ans pour audit RGPD Et l'user_id est pseudonymisé pour anonymat # Cas particuliers Scénario: Compte Premium inactif - pas de privilège spécial Étant donné que je suis un utilisateur Premium Et que je suis inactif depuis 5 ans Quand le job de purge s'exécute Alors mon compte est supprimé comme un compte gratuit Et l'abonnement Premium ne prolonge pas la durée de conservation Et aucun remboursement n'est effectué (compte inactif depuis 5 ans) Scénario: Compte avec signalements de modération - purge différée Étant donné que je suis éligible à la purge Mais que j'ai des signalements de modération en cours Quand le job de purge s'exécute Alors ma purge est différée de 90 jours Et les signalements sont traités en priorité Et si les signalements aboutissent à un ban, le compte est supprimé immédiatement Et si les signalements sont infondés, la purge automatique reprend son cours # Durée de 5 ans - justification Scénario: Pourquoi 5 ans d'inactivité Étant donné que le délai de purge est fixé à 5 ans Quand on justifie ce choix Alors les raisons suivantes sont avancées: | justification | | Standard de l'industrie (Google, Facebook: 2-3 ans) | | Équilibre raisonnable entre minimisation et utilité | | Conforme aux recommandations CNIL | | Laisse une marge de réactivation pour utilisateurs | | Exception pour créateurs = intérêt légitime communauté | # Communication transparente Scénario: Politique de conservation visible dans les CGU Étant donné que je consulte les CGU de RoadWave Quand je lis la section "Conservation des données" Alors la politique de purge automatique est clairement expliquée: """ Conservation des données: - Comptes auditeurs: suppression automatique après 5 ans d'inactivité - Comptes créateurs: suppression après 5 ans d'inactivité + 2 ans sans écoute de leurs contenus - Exception: créateurs dont les contenus sont encore écoutés régulièrement - Notifications: 90j, 30j et 7j avant suppression - Contenus créés: conservés de manière anonyme après suppression du compte """ Et les utilisateurs sont informés dès l'inscription