-- #migration 2026_10_22_001
-- Signalement d'un message ou d'un membre (CDC n° 16 et 17, § 7.5) et suspension de la messagerie d'un membre par la modération.
--  - reports.target_type accepte maintenant « message » (target_id = identifiant du message) et « member » (target_id = 0, le membre est reported_user_id).
--    Le signalement d'un message garde une COPIE du message et d'un contexte limite (moderation_context_messages) : elle survit a la suppression par l'auteur.
--  - users.messaging_suspended_until : tant que cette date (UTC) n'est pas passee, le membre peut LIRE sa messagerie mais pas ecrire ni demarrer de conversation.
ALTER TABLE users ADD COLUMN messaging_suspended_until DATETIME NULL;
-- Les nouvelles actions de modération ont des noms plus longs (« report_unsuspend_messaging », 26 caractères) que l'ancienne colonne ne le permettait (24) : sans cela, lever une suspension échouait (erreur serveur).
ALTER TABLE moderation_audit MODIFY action VARCHAR(40) NOT NULL;
