# CHANGELOG — Coaster World v1.68.0

## Signalements sociaux
- Nouveau signalement de profil depuis la page publique d'un explorateur connecté.
- Nouveau signalement d'un message dans la discussion privée d'une sortie.
- Motifs disponibles : spam, harcèlement, contenu haineux, contenu inapproprié, usurpation d'identité, comportement dangereux, vie privée et autre.
- Commentaire facultatif jusqu'à 1 500 caractères pour donner du contexte à la modération.
- Protection anti-doublon : un même utilisateur ne peut pas ouvrir plusieurs signalements simultanés pour le même élément.
- Limitation de fréquence sur les routes de signalement.

## Instantané de modération
- Chaque signalement conserve un instantané du contenu au moment où il est envoyé.
- Pour un message de sortie, l'instantané conserve notamment le texte, l'auteur, le groupe, la sortie et la date.
- L'instantané reste consultable par les administrateurs même si le contenu original est ensuite supprimé.
- Les instantanés et notes de modération ne sont jamais exposés publiquement.

## Blocage utilisateur
- Nouveau bouton `Bloquer` depuis le profil public d'un autre explorateur.
- Le blocage supprime automatiquement l'amitié éventuelle et les demandes d'ami en cours dans les deux sens.
- Deux utilisateurs bloqués l'un par rapport à l'autre ne peuvent plus consulter leurs profils publics respectifs ni s'envoyer de demande d'ami.
- Nouvelle section `Utilisateurs bloqués` sur la page Amis avec action `Débloquer`.
- Réutilisation de la table existante `user_blocks` : aucune nouvelle table spécifique au blocage.

## Administration — file de modération
- Nouvelle rubrique `Admin > Modération`.
- File filtrable par statut, type de contenu, motif, utilisateur ou texte de contexte.
- Statuts : Ouvert, En cours, Résolu et Classé sans suite.
- Fiche détaillée avec signalant, utilisateur concerné, motif, contexte et instantané.
- Notes internes de modération et traçabilité de l'administrateur ayant traité le dossier.
- Actions disponibles : aucune infraction, avertissement consigné, suppression d'un message signalé ou suspension d'un compte.
- La suspension automatique d'un compte administrateur est volontairement bloquée.
- Le tableau de bord admin affiche désormais le nombre de signalements actifs.

## Base de données
- Nouvelle table `moderation_reports`.
- Migration Laravel : `database/migrations/2026_08_14_001400_create_moderation_reports_table.php`.
- Alternative phpMyAdmin : `database/migrations/sql/coaster_world_v1.68.0_moderation_reports.sql`.

## Interface
- Intégration responsive ordinateur / tablette / smartphone.
- Compatibilité thèmes clair et sombre.
- Traductions FR / EN / DE / ES / IT pour toute la nouvelle fonctionnalité.

## Vérifications
- Syntaxe PHP vérifiée sur l'ensemble des fichiers PHP / Blade du projet.
- Équilibre des directives Blade contrôlé sur les vues modifiées.
- Routes et noms de routes de la v1.68 contrôlés statiquement.
- JavaScript source et bundle existant validés avec `node --check`.
- Manifest Vite vérifié et nouvel asset CSS v1.68 présent.
- Composer et `vendor/` ne sont pas présents dans l'environnement de génération : les commandes Artisan runtime ne peuvent donc pas être exécutées ici.
