Files
roadwave/features/api/recommendation/contenu-politique.feature
jpgiannetti 37c62206ad feat(bdd): réorganiser features en catégories api/ui/e2e et créer ADR-024
Résolution des incohérences #10, #11, et #12 de l'analyse d'architecture.

## Phase 1 : Réorganisation Features BDD (Point #10 - RÉSOLU)

- Créer structure features/{api,ui,e2e}
- Déplacer 83 features en 3 catégories via git mv (historique préservé)
  - features/api/ : 53 features (tests API backend)
  - features/ui/ : 22 features (tests UI mobile)
  - features/e2e/ : 8 features (tests end-to-end)

Domaines déplacés :
- API : authentication, recommendation, rgpd-compliance, content-creation,
  moderation, monetisation, premium, radio-live, publicites
- UI : audio-guides, navigation, interest-gauges, mode-offline,
  partage, profil, recherche
- E2E : abonnements, error-handling

## Phase 2 : Mise à jour Documentation

### ADR-007 - Tests BDD
- Ajouter section "Convention de Catégorisation des Features"
- Documenter règles api/ui/e2e avec exemples concrets
- Spécifier step definitions (backend Go, mobile Dart)

### ADR-024 - Stratégie CI/CD Monorepo (NOUVEAU)
- Créer ADR dédié pour stratégie CI/CD avec path filters
- Architecture workflows séparés (backend.yml, mobile.yml, shared.yml)
- Configuration path filters détaillée avec exemples YAML
- Matrice de déclenchement et optimisations (~70% gain temps CI)
- Plan d'implémentation (~2h, reporté jusqu'au développement)

### ADR-016 - Organisation Monorepo
- Simplifier en retirant section CI/CD détaillée
- Ajouter référence vers ADR-024 pour stratégie CI/CD

### INCONSISTENCIES-ANALYSIS.md
- Point #10 (Tests BDD synchronisés) :  RÉSOLU
  - Catégorisation features implémentée
  - ADR-007 mis à jour avec convention complète
- Point #11 (70/30 Split paiements) :  ANNULÉ (faux problème)
  - ADR-009 et Règle 18 parfaitement cohérents
  - Documentation exhaustive existante (formule, SQL, comparaisons)
- Point #12 (Monorepo path filters) : ⏸️ DOCUMENTÉ
  - Architecture CI/CD complète dans ADR-024
  - Implémentation reportée (projet en phase documentation)
- Métriques mises à jour :
  - MODERATE : 6/9 traités (4 résolus + 1 annulé + 1 documenté)
  - ADR à jour : 100% (19/19 avec ADR-024)

## Phase 3 : Validation

- Structure features validée (api/ui/e2e, aucun répertoire restant)
- Historique Git préservé (git mv, renommages détectés)
- 83 features total (API: 53, UI: 22, E2E: 8)

Closes: Point #10 (résolu), Point #11 (annulé), Point #12 (documenté)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-01 11:31:41 +01:00

101 lines
4.5 KiB
Gherkin

# language: fr
Fonctionnalité: Gestion du contenu politique (MVP simplifié)
En tant qu'utilisateur
Je veux pouvoir filtrer le contenu politique
Afin de contrôler mon exposition à ce type de contenu
Contexte:
Étant donné que l'API RoadWave est disponible
Scénario: Créateur tagge son contenu comme "Politique"
Étant donné que je suis un créateur connecté
Quand je publie un contenu sur un débat politique
Et que je sélectionne le tag "Politique"
Alors le contenu est enregistré avec le tag "Politique"
Et aucune classification gauche/droite n'est demandée (MVP)
Scénario: Tag "Politique" au même niveau que les autres tags
Étant donné que je crée un contenu
Quand je consulte la liste des tags disponibles
Alors je vois les tags suivants au même niveau:
| tag |
| Économie |
| Sport |
| Culture |
| Politique |
| Automobile |
| Voyage |
| Musique |
Scénario: Par défaut, tous les contenus politiques sont visibles
Étant donné que je suis un nouvel utilisateur
Et que je n'ai pas modifié les paramètres de contenu politique
Quand je demande des recommandations
Alors les contenus tagués "Politique" sont inclus normalement
Et aucun filtrage n'est appliqué
Scénario: Activer le filtrage "Masquer contenu politique"
Étant donné que je suis connecté
Quand j'active l'option "Masquer contenu politique" dans les paramètres
Alors tous les contenus tagués "Politique" sont exclus de mes recommandations
Et je vois le message "Contenu politique masqué"
Scénario: Filtrage politique actif - aucun contenu politique recommandé
Étant donné que j'ai activé "Masquer contenu politique"
Et qu'il existe 100 contenus dont 20 tagués "Politique"
Quand je demande 50 recommandations
Alors je reçois 50 contenus parmi les 80 non-politiques
Et 0% de contenus politiques sont proposés
Scénario: Désactiver le filtrage "Masquer contenu politique"
Étant donné que j'ai activé "Masquer contenu politique"
Quand je désactive cette option dans les paramètres
Alors les contenus politiques sont à nouveau inclus dans mes recommandations
Et le filtrage est levé immédiatement
Scénario: Mode Kids filtre automatiquement le contenu politique
Étant donné que je suis un utilisateur de 14 ans
Et que le mode Kids est activé
Quand je demande des recommandations
Alors tous les contenus tagués "Politique" sont automatiquement exclus
Et ce indépendamment du paramètre "Masquer contenu politique"
Scénario: Statistiques créateur sur contenu politique
Étant donné que je suis un créateur
Et que j'ai publié 20 contenus dont 5 tagués "Politique"
Quand je consulte mes statistiques
Alors je vois le nombre d'utilisateurs ayant masqué le contenu politique
Et le taux d'engagement comparé aux autres tags
Scénario: Recherche avec tag "Politique"
Étant donné que je recherche du contenu
Quand je filtre par tag "Politique"
Alors seuls les contenus tagués "Politique" sont affichés
Et ce même si j'ai activé "Masquer contenu politique" (recherche explicite)
Scénario: Partage de contenu politique avec filtre actif
Étant donné que j'ai activé "Masquer contenu politique"
Et qu'un ami me partage un lien vers un contenu tagué "Politique"
Quand j'ouvre le lien
Alors je peux accéder au contenu (partage explicite)
Et je vois un avertissement "Ce contenu est tagué Politique"
Scénario: Pas de classification gauche/droite en MVP
Étant donné que je suis un créateur
Quand je publie un contenu tagué "Politique"
Alors aucune option de classification idéologique n'est proposée
Et je ne peux pas indiquer "Gauche", "Droite", "Centre", etc.
Scénario: Pas d'équilibrage imposé en MVP
Étant donné qu'un utilisateur écoute majoritairement du contenu politique de gauche
Quand l'algorithme génère des recommandations
Alors aucun équilibrage droite/gauche n'est appliqué
Et les recommandations suivent l'algorithme standard (intérêts, géo, engagement)
Scénario: Notification post-MVP pour classification avancée
Étant donné que RoadWave passe en phase post-MVP
Et que la classification politique avancée est activée
Quand je me connecte
Alors je reçois une notification m'informant des nouvelles options
Et je peux configurer mes préférences d'équilibrage politique