Loading
Documents : espace d'animation séparé, et suppression
Deux espaces documentaires par exercice, distingués par une colonne `audience` sur Document plutôt que par deux modèles : « Joueurs » est ce que la cellule consulte, « Animation » est le classeur privé de l'équipe (trame, notes, contacts). PLAYERS est la valeur par défaut, donc tout document existant — kits compris — reste visible des joueurs. Les kits ne renseignent pas l'audience et n'avaient pas à être touchés. Le cloisonnement ne repose PAS sur l'interface : les trois routes joueur (liste, document, fichier) imposent PLAYERS côté serveur. Connaître l'identifiant d'un document d'animation ne suffit donc pas à le lire. Et un document d'animation ne déclenche aucune notification temps réel vers les joueurs. Suppression : la route n'existait pas du tout, ce n'était pas un défaut d'interface. Ajoutée côté animation avec confirmation, diffusion `document:deleted` pour que les espaces ouverts se rafraîchissent, et retrait de la sélection courante si c'était le document affiché. Limite connue, antérieure à ce lot : supprimer un document ne supprime pas le fichier téléversé sur le disque. La suppression d'un exercice ou d'un tenant a le même comportement. Un balayage des fichiers orphelins mériterait d'être traité pour de bon, y compris au regard du droit à l'effacement annoncé dans SECURITY.md. Une migration à appliquer (enum + colonne + index). Non compilé ni exécuté (pas de toolchain Node dans l'environnement utilisé). Co-Authored-By: Claude (RCA)