Aller au contenu

RGPD — /mydata

Octavius respecte les articles 15, 17 et 20 du Règlement Général sur la Protection des Données (UE).

Toute personne peut à tout moment :

  • Article 15 — accéder à ses données : /mydata view
  • Article 17 — demander leur effacement : /mydata delete
  • Article 20 — exporter dans un format réutilisable : /mydata export

Accessible à TOUS

Le groupe /mydata n'a aucune permission requise. C'est un droit, pas une faveur admin. N'importe quel membre du serveur peut l'utiliser.

Commandes

/mydata view

Affiche un embed lisible avec :

  • XP par serveur (level + total messages)
  • Tickets de support dont tu es propriétaire
  • Messages écrits dans les tickets (nombre)
  • Commandes custom que tu as créées
  • Compte dashboard web (username + email + via_oauth)

/mydata export

Génère un JSON complet (octavius-mydata-{user_id}.json) envoyé en DM éphémère. Format auto-versionné (format_version=1.0). Conforme à l'art. 20 RGPD (droit à la portabilité).

/mydata delete <confirmation:SUPPRIMER>

⚠️ Action irréversible. Pour confirmer, tape exactement SUPPRIMER (en majuscules) dans le champ confirmation.

Stratégie de suppression équilibrée (RGPD + traçabilité support) :

Donnée Action
XP cross-guild Suppression complète
Tickets owned Anonymisation : subject → [anonymisé RGPD], owner_id → 0
Messages clients dans tickets Supprimés
Réponses dev dans tes tickets Conservées (traçabilité support)
Commandes custom créées Conservées, created_by → NULL
Audit log modération Conservé 90j puis anonymisé auto

L'historique support reste exploitable par le staff (pour comprendre les patterns) mais sans aucune trace d'identité te concernant.

Purge automatique

Une tâche périodique tourne toutes les 24h :

  • Tickets fermés : supprimés au-delà de 180 jours (cascade FK ticket_messages + cleanup transcripts HTML)
  • Audit log modération : anonymisé au-delà de 90 jours (actor_id / target_id / reason mis à NULL, mais action + timestamp + guild conservés pour stats agrégées)

Compte dashboard web

Le compte web (username + password OAuth Discord) n'est pas supprimé par /mydata delete. Pour le supprimer :

  1. Connecte-toi au dashboard
  2. Section Compte > Supprimer mon compte
  3. Confirme

Le compte est alors effacé de accounts.json + table PG accounts.

Tenant isolation

Toutes les commandes RGPD respectent l'isolation multi-tenant : tu ne vois que tes propres données, sur les serveurs où tu es membre. Voir Phase 2.1 Audit tenant isolation pour les détails techniques.