Entités: - entities-overview.md → vue-ensemble.md États (Lifecycles): - user-account-lifecycle.md → compte-utilisateur.md - content-lifecycle.md → contenu.md - session-lifecycle.md → session.md - report-lifecycle.md → signalement.md - export-lifecycle.md → export-donnees.md - parental-consent-lifecycle.md → consentement-parental.md - account-deletion-lifecycle.md → suppression-compte.md - breach-incident-lifecycle.md → incident-breach.md Séquences: - authentication-flow.md → authentification.md - token-refresh.md → refresh-token.md (terme technique conservé) - content-moderation.md → moderation-contenu.md - content-report.md → signalement.md
45 lines
1.2 KiB
Markdown
45 lines
1.2 KiB
Markdown
# Séquence - Modération de contenu
|
|
|
|
## Diagramme
|
|
|
|
```mermaid
|
|
sequenceDiagram
|
|
participant C as Créateur
|
|
participant API as Backend API
|
|
participant DB as PostgreSQL
|
|
participant Q as Queue
|
|
participant M as Modérateur
|
|
participant N as Notification
|
|
|
|
C->>API: POST /contents (3 premiers contenus)
|
|
API->>DB: INSERT content (status=pending_review)
|
|
API->>Q: Ajout file modération
|
|
API-->>C: Contenu soumis
|
|
|
|
Q->>M: Notification nouveau contenu
|
|
M->>API: GET /moderation/contents/pending
|
|
API-->>M: Liste contenus à modérer
|
|
|
|
M->>M: Écoute + vérification
|
|
|
|
alt Validation
|
|
M->>API: POST /moderation/approve/{id}
|
|
API->>DB: UPDATE status=published
|
|
API->>N: Email + push créateur
|
|
N-->>C: Contenu publié ✓
|
|
else Rejet
|
|
M->>API: POST /moderation/reject/{id} (motif)
|
|
API->>DB: UPDATE status=rejected
|
|
API->>DB: INSERT strike (si grave)
|
|
API->>N: Email créateur (motif)
|
|
N-->>C: Contenu rejeté + motif
|
|
end
|
|
```
|
|
|
|
## Légende
|
|
|
|
**Modération préalable** : 3 premiers contenus uniquement
|
|
**Après validation** : Publication directe (modération a posteriori via signalements)
|
|
**Délai** : 48h maximum
|
|
**Strike** : +1 si violation grave
|