docs: record the decision to keep choral-permission and permissions-template
Inutilisés (aucune référence, 0 ligne) mais conservés sciemment le 27/07/2026 comme fondation d'un modèle de permissions plus riche. Tableau des content-types mis à jour après la suppression de conversation et direct-message. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -35,22 +35,31 @@ config/ # server, database, plugins, middlewares, cron-tasks
|
|||||||
|
|
||||||
## Content-types
|
## Content-types
|
||||||
|
|
||||||
Vue par domaine (34 au total, liste exhaustive dans `src/api/`) :
|
Vue par domaine (32 au total, liste exhaustive dans `src/api/`) :
|
||||||
|
|
||||||
| Domaine | Content-types |
|
| Domaine | Content-types |
|
||||||
|---|---|
|
|---|---|
|
||||||
| Chorale | `choral`, `choral-membership`, `choral-permission`, `permissions-template` |
|
| Chorale | `choral`, `choral-membership`, `choral-permission` ⚠️, `permissions-template` ⚠️ |
|
||||||
| Social (offre gratuite) | `post`, `post-ownership`, `comment`, `activity`, `report` |
|
| Social (offre gratuite) | `post`, `post-ownership`, `comment`, `activity`, `report` |
|
||||||
| Groupes | `group`, `group-membership` |
|
| Groupes | `group`, `group-membership` |
|
||||||
| Événements | `event`, `event-relationship` |
|
| Événements | `event`, `event-relationship` |
|
||||||
| Boards (kanban) | `board`, `board-list`, `board-card` |
|
| Boards (kanban) | `board`, `board-list`, `board-card` |
|
||||||
| Messagerie — **trois systèmes distincts**, inventaire détaillé dans `../CLAUDE.md` | générale : `chat-conversation`, `chat-conversation-member`, `chat-message` · chorale : `channel`, `message` · legacy (tombe avec `choral-old`) : `conversation`, `direct-message` |
|
| Messagerie — **deux systèmes distincts**, inventaire détaillé dans `../CLAUDE.md` | générale : `chat-conversation`, `chat-conversation-member`, `chat-message` · chorale : `channel`, `message` |
|
||||||
| Notifications | `notification`, `announcement`, `invite` |
|
| Notifications | `notification`, `announcement`, `invite` |
|
||||||
| Paiement | `order` (Stripe — ⚠️ route custom `auth: false` dans `src/api/order/routes/order.ts`, webhook) |
|
| Paiement | `order` (Stripe — ⚠️ route custom `auth: false` dans `src/api/order/routes/order.ts`, webhook) |
|
||||||
| Contenu / divers | `page`, `legal-page`, `ad`, `contact`, `contact-meta`, `form-template`, `mails` |
|
| Contenu / divers | `page`, `legal-page`, `ad`, `contact`, `contact-meta`, `form-template`, `mails` |
|
||||||
|
|
||||||
<!-- Tableau détaillé (champs sensibles, accès par rôle) à compléter après export des permissions. -->
|
<!-- Tableau détaillé (champs sensibles, accès par rôle) à compléter après export des permissions. -->
|
||||||
|
|
||||||
|
⚠️ `choral-permission` et `permissions-template` sont **inutilisés** : aucune
|
||||||
|
référence dans le back ni le front, 0 ligne en base. La gestion des permissions
|
||||||
|
passe en réalité par le composant `permissions` de `choral-membership`,
|
||||||
|
`permission_exceptions`, et `choral.available_roles` — c'est là que
|
||||||
|
`updatePermissionsTemplatesAction` écrit. **Décision du 27/07/2026 : on les
|
||||||
|
conserve**, comme fondation d'un modèle de permissions plus riche. Ne pas les
|
||||||
|
proposer à la suppression sans une nouvelle décision. Leurs permissions
|
||||||
|
`permissions-template.create/delete` restent accordées pour rien.
|
||||||
|
|
||||||
## Sécurité — règles NON NÉGOCIABLES
|
## Sécurité — règles NON NÉGOCIABLES
|
||||||
|
|
||||||
- Aucune route custom en `auth: false` sans justification écrite en commentaire
|
- Aucune route custom en `auth: false` sans justification écrite en commentaire
|
||||||
|
|||||||
Reference in New Issue
Block a user