# language: fr

@moderation @community
Fonctionnalité: Modération communautaire - Badges et récompenses
  En tant que plateforme
  Je veux gamifier les signalements pertinents
  Afin d'améliorer la qualité des signalements et réduire la charge modérateurs

  # 19. Modération Communautaire - Badges et Récompenses

  Contexte:
    Étant donné que le système de modération communautaire est actif

  # 19.1 - Système de badges

  Scénario: Trois niveaux de badges disponibles
    Étant donné que je consulte le système de badges
    Quand je vois les badges disponibles
    Alors 3 niveaux de badges existent:
      | badge | nom                  | critères                           | avantages                                |
      | 🥉    | Contributeur Bronze  | 5 validés + 70% pertinence         | Signalements prioritaires (+10 points)   |
      | 🥈    | Contributeur Argent  | 20 validés + 80% pertinence        | +20 points + Badge visible profil        |
      | 🥇    | Contributeur Or      | 50 validés + 90% pertinence        | +30 points + Badge + Réduction Premium   |
    Et les badges valorisent la qualité plutôt que la quantité

  Scénario: Règles d'éligibilité aux badges
    Étant donné que je veux obtenir un badge
    Quand je consulte les règles d'éligibilité
    Alors les critères suivants s'appliquent:
      | règle                                            | valeur |
      | Minimum signalements envoyés pour éligibilité    | 10     |
      | Signalements "En cours" comptent dans le calcul  | non    |
      | Signalements rejetés font baisser le taux        | oui    |
      | Période de calcul (glissante)                    | 6 mois |
    Et seuls les 6 derniers mois sont pris en compte

  Scénario: Calcul du taux de pertinence
    Étant donné que j'ai envoyé 20 signalements
    Et que 16 ont été validés par les modérateurs
    Et que 4 ont été rejetés
    Quand le système calcule mon taux de pertinence
    Alors la formule appliquée est "Signalements validés / Total signalements × 100"
    Et mon taux est de 80% (16 / 20 × 100)
    Et ce taux détermine mon éligibilité aux badges

  Scénario: Obtention du badge Bronze
    Étant donné que j'ai 10 signalements envoyés
    Et que 7 signalements ont été validés
    Et que mon taux de pertinence est de 70%
    Quand le système évalue mon éligibilité
    Alors j'obtiens le badge 🥉 Contributeur Bronze
    Et je reçois une notification:
      """
      🎉 Félicitations ! Vous êtes désormais Contributeur Bronze.
      Merci de rendre RoadWave meilleur !
      """
    Et mes futurs signalements gagnent +10 points de priorité

  Scénario: Obtention du badge Argent
    Étant donné que j'ai déjà le badge Bronze
    Et que j'ai 25 signalements envoyés
    Et que 20 signalements ont été validés
    Et que mon taux de pertinence est de 80%
    Et que 30 jours se sont écoulés depuis l'obtention du badge Bronze
    Quand le système évalue mon éligibilité
    Alors j'obtiens le badge 🥈 Contributeur Argent
    Et je reçois une notification:
      """
      🎉 Impressionnant ! Badge Contributeur Argent obtenu.
      Votre engagement fait la différence !
      """
    Et le badge est visible sur mon profil public
    Et mes futurs signalements gagnent +20 points de priorité

  Scénario: Obtention du badge Or
    Étant donné que j'ai déjà le badge Argent
    Et que j'ai 60 signalements envoyés
    Et que 54 signalements ont été validés
    Et que mon taux de pertinence est de 90%
    Et que 60 jours se sont écoulés depuis l'obtention du badge Argent
    Quand le système évalue mon éligibilité
    Alors j'obtiens le badge 🥇 Contributeur Or
    Et je reçois une notification:
      """
      🎉 Exceptionnel ! Vous êtes Contributeur Or.
      La communauté vous remercie pour votre aide précieuse !
      """
    Et je bénéficie d'une réduction Premium -50% pendant 3 mois
    Et mes futurs signalements gagnent +30 points de priorité

  Scénario: Délai minimum entre niveaux de badges
    Étant donné que j'ai obtenu le badge Bronze il y a 15 jours
    Et que je remplis les critères pour le badge Argent
    Quand le système évalue mon éligibilité
    Alors je ne peux pas encore obtenir le badge Argent
    Et je dois attendre 15 jours supplémentaires (30 jours minimum)
    Et cela évite la montée en badge trop rapide (anti-farming)

  # 19.1.3 - Découverte du système

  Scénario: Modal d'information au premier signalement
    Étant donné que je viens d'envoyer mon tout premier signalement
    Et que le toast de confirmation standard s'est affiché
    Quand exactement 2 secondes se sont écoulées
    Alors une modal d'information s'affiche automatiquement
    Et la modal explique le système de badges et récompenses
    Et la modal contient le titre "🎯 Bravo ! Vous contribuez à une communauté plus saine"
    Et la modal contient le message suivant:
      """
      En signalant ce contenu, vous participez activement à améliorer
      l'expérience de tous les utilisateurs RoadWave.

      Vos contributions de qualité sont valorisées et récompensées :

      🥉 Bronze : 5 signalements validés
         → Signalements prioritaires (+10 points)

      🥈 Argent : 20 signalements validés
         → Badge visible + priorité accrue (+20 points)

      🥇 Or : 50 signalements validés
         → Réduction Premium -50% pendant 3 mois

      💡 Votre taux de pertinence compte !
      Formule : Signalements validés ÷ Total × 100

      Continuez à nous aider, chaque signalement pertinent compte ! 🙏
      """
    Et la modal contient un bouton "En savoir plus" qui redirige vers la page dédiée badges
    Et la modal contient un bouton "J'ai compris" qui ferme la modal
    Et la modal ne se réaffiche jamais (flag "badge_modal_seen" en base de données)
    Et le délai de 2 secondes permet de laisser l'utilisateur lire le toast de confirmation d'abord

  # 19.1.4 - Affichage badges et statistiques

  Scénario: Statistiques personnelles visibles
    Étant donné que j'ai un badge Bronze
    Quand je consulte "Profil > Mes signalements"
    Alors je vois mes statistiques de modération:
      """
      📊 Vos statistiques de modération
      Signalements envoyés : 27
      Validés : 23 ✅
      Rejetés : 4 ❌
      Taux de pertinence : 85%

      Badge actuel : 🥉 Contributeur Bronze
      Prochain palier : 🥈 Contributeur Argent (17 signalements validés restants)
      """
    Et je vois ma progression vers le prochain badge

  Scénario: Toast après validation de signalement
    Étant donné que j'ai un badge Bronze (3/5 signalements validés)
    Et que j'envoie un nouveau signalement
    Quand le modérateur valide mon signalement
    Alors je reçois un toast:
      """
      ✅ Bravo ! Votre signalement a aidé la communauté.
      Progression : 4/5 pour badge Bronze 🥉
      """
    Et je vois ma progression vers le badge suivant

  Scénario: Toast après rejet de signalement
    Étant donné que j'ai un taux de pertinence de 65%
    Et que j'envoie un nouveau signalement
    Quand le modérateur rejette mon signalement
    Alors je reçois un toast:
      """
      ❌ Signalement non retenu.
      Taux de pertinence : 60%.
      Continuez vos efforts !
      """
    Et je vois l'impact sur mon taux de pertinence

  # 19.2 - Score de fiabilité

  Scénario: Calcul du score de fiabilité
    Étant donné que j'ai 15 signalements validés
    Et que j'ai 3 signalements rejetés
    Et que j'ai le badge Or actif
    Quand le système calcule mon score de fiabilité
    Alors la formule appliquée est:
      """
      Score fiabilité = min(100, (Validés × 10 - Rejetés × 5 + Bonus_Or × 20))
      """
    Et mon score est: min(100, (15 × 10 - 3 × 5 + 1 × 20)) = 100 (plafonné)
    Et ce score est utilisé dans l'algorithme de priorisation

  Scénario: Utilisation du score dans la priorisation
    Étant donné que j'ai un score de fiabilité de 85/100
    Et qu'un autre utilisateur a un score de 30/100
    Quand nous signalons des contenus similaires
    Alors mon signalement a un meilleur score de priorité
    Et mon signalement est traité en premier
    Et la formule de priorité inclut:
      """
      Priorité = (Score_IA × 0.7) + (Signalements_cumulés × 0.2) + (Fiabilité_signaleur × 0.1)
      """
    Et la fiabilité est normalisée : 85/100 = 0.85

  # 19.3 - Statut "Utilisateur de confiance"

  Scénario: Obtention automatique du statut de confiance
    Étant donné que j'obtiens le badge Argent
    Quand mon statut est mis à jour
    Alors je deviens automatiquement "Utilisateur de confiance"
    Et mes signalements sont traités en priorité (même score IA)
    Et je reçois des notifications sous 12h (au lieu de 24-48h)
    Et le badge "Utilisateur de confiance" s'affiche sur mon profil

  Scénario: Révocation du statut de confiance
    Étant donné que je suis "Utilisateur de confiance"
    Et que je perds mon badge Argent après audit trimestriel
    Quand mon statut est réévalué
    Alors le statut "Utilisateur de confiance" est révoqué
    Et je reviens au statut normal
    Et aucune sanction supplémentaire n'est appliquée

  # 19.4 - Réduction Premium pour badge Or

  Scénario: Notification de réduction Premium au badge Or
    Étant donné que j'obtiens le badge Contributeur Or
    Quand la notification est envoyée
    Alors je reçois un email + push + in-app:
      """
      🎉 Exceptionnel ! Vous avez obtenu le badge Contributeur Or

      Vous faites partie des meilleurs contributeurs de RoadWave.
      Grâce à votre engagement et votre vigilance, vous aidez
      des milliers d'utilisateurs à profiter d'une expérience audio de qualité.

      La communauté vous remercie ! 🙏

      En reconnaissance de votre aide précieuse, vous bénéficiez de :

      ✨ 3 mois d'abonnement Premium à -50%
      → 2.49€/mois au lieu de 4.99€

      [Profiter de l'offre]

      Cette offre est valable pendant 30 jours.
      """
    Et l'offre est valable pendant 30 jours

  Scénario: Activation de la réduction Premium Or
    Étant donné que j'ai obtenu le badge Or
    Et que j'ai reçu l'offre Premium -50%
    Quand je clique sur "Profiter de l'offre" dans les 30 jours
    Alors je souscris à Premium à 2.49€/mois
    Et la réduction est valable pour 3 mois
    Et après 3 mois, le renouvellement passe à 4.99€/mois
    Et l'offre n'est pas cumulable avec l'offre annuelle

  Scénario: Expiration de l'offre Premium après 30 jours
    Étant donné que j'ai obtenu le badge Or il y a 31 jours
    Et que je n'ai pas activé l'offre Premium -50%
    Quand j'essaie d'activer l'offre
    Alors l'offre a expiré
    Et je vois le message "Votre offre Premium -50% a expiré"
    Et mon badge Or est conservé (seule l'offre expire)
    Et je ne peux plus bénéficier de la réduction

  Scénario: Rappels avant expiration de l'offre
    Étant donné que j'ai obtenu le badge Or
    Et que je n'ai pas encore activé l'offre Premium
    Quand il reste 7 jours avant l'expiration
    Alors je reçois un email + push:
      """
      Il vous reste 7 jours pour profiter de votre réduction Premium -50%
      """
    Et quand il reste 1 jour, je reçois un dernier rappel:
      """
      Dernière chance ! Votre réduction Premium -50% expire demain
      """

  Scénario: Perte du badge Or pendant l'abonnement Premium
    Étant donné que j'ai le badge Or et l'abonnement Premium -50% actif
    Et que je perds le badge Or après un audit trimestriel
    Quand mon abonnement arrive à échéance
    Alors l'abonnement en cours reste actif jusqu'à sa fin normale
    Mais le renouvellement se fait à prix normal 4.99€/mois
    Et je ne peux pas réobtenir l'offre -50% même si je récupère le badge Or

  # 19.5 - Anti-abus

  Scénario: Limite de 10 signalements par 24h
    Étant donné que j'ai déjà envoyé 10 signalements aujourd'hui
    Quand j'essaie d'envoyer un 11ème signalement
    Alors le signalement est automatiquement rejeté
    Et je vois le message:
      """
      Limite quotidienne atteinte (10 signalements/24h).
      Réessayez demain.
      """
    Et une alerte modérateur automatique est déclenchée

  Scénario: Détection de signalement massif suspect
    Étant donné que j'ai envoyé 35 signalements cette semaine
    Quand l'audit automatique hebdomadaire s'exécute
    Alors mon compte est détecté comme suspect (>30/semaine)
    Et une enquête manuelle modérateur est déclenchée
    Et le modérateur peut révoquer mon badge si abus confirmé

  Scénario: Patterns suspects détectés
    Étant donné que le système analyse mes patterns de signalement
    Quand des comportements suspects sont identifiés:
      | pattern                                       | seuil       |
      | Signalement massif                            | >30/semaine |
      | Taux de pertinence très faible                | <50%        |
      | Tous signalements rejetés sur 7 jours         | 100% rejet  |
      | Signalements ciblant toujours même créateur   | Harcèlement |
    Alors une enquête manuelle est déclenchée
    Et le modérateur examine les signalements en détail

  Scénario: Audit trimestriel automatique des badges
    Étant donné que le système effectue l'audit trimestriel
    Quand mon badge est audité
    Alors le système recalcule mon taux de pertinence sur 6 mois glissants
    Et vérifie les critères:
      | badge  | taux minimum |
      | Bronze | 70%          |
      | Argent | 80%          |
      | Or     | 90%          |
    Et si mon taux est insuffisant, mon badge est révoqué

  Scénario: Email de prévention 7 jours avant audit
    Étant donné que l'audit trimestriel arrive dans 7 jours
    Et que mon taux de pertinence est de 78%
    Et que j'ai un badge Argent (minimum 80% requis)
    Quand le système envoie les notifications préventives
    Alors je reçois un email:
      """
      Votre badge Contributeur Argent sera audité dans 7 jours.
      Taux de pertinence actuel : 78%
      Minimum requis : 80%

      Continuez à signaler du contenu pertinent pour conserver votre badge !
      """
    Et je suis informé à l'avance pour améliorer mes signalements

  Scénario: Résultat d'audit - Badge conservé
    Étant donné que l'audit trimestriel vient d'être effectué
    Et que mon taux de pertinence est de 85%
    Et que j'ai un badge Argent (minimum 80% requis)
    Quand je reçois le résultat
    Alors je reçois un email: "Badge conservé ✓"
    Et mon badge reste actif pour 3 mois supplémentaires

  Scénario: Résultat d'audit - Badge révoqué
    Étant donné que l'audit trimestriel vient d'être effectué
    Et que mon taux de pertinence est de 75%
    Et que j'ai un badge Argent (minimum 80% requis)
    Quand je reçois le résultat
    Alors je reçois un email: "Badge révoqué ✗"
    Et mon badge Argent est révoqué immédiatement
    Mais je peux réobtenir un badge ultérieurement (pas de ban)

  Scénario: Sanctions pour abus détecté - Mineur
    Étant donné que j'ai envoyé >10 signalements/jour pendant 1 jour
    Quand l'abus mineur est détecté
    Alors je reçois un avertissement
    Et ma limite est réduite à 5 signalements/jour pendant 7 jours
    Et je reçois une notification explicative

  Scénario: Sanctions pour abus détecté - Modéré
    Étant donné que j'ai envoyé >30 signalements/semaine
    Et que mon taux de pertinence est <50%
    Quand l'abus modéré est confirmé
    Alors tous mes badges sont révoqués
    Et je suis interdit de signalement pendant 30 jours
    Et je reçois une notification de sanction

  Scénario: Sanctions pour abus détecté - Grave
    Étant donné que j'ai participé à un farming coordonné de signalements
    Quand l'abus grave est confirmé par modérateur
    Alors je reçois un ban permanent de la fonctionnalité signalement
    Et tous mes badges sont révoqués définitivement
    Et il n'y a pas de recours possible pour farming confirmé

  # ROI et justification

  Scénario: ROI positif de la modération communautaire
    Étant donné que 10 utilisateurs Or sont actifs
    Quand on calcule le ROI
    Alors chaque utilisateur Or économise 5-10h de modération/mois
    Et cela représente 75-150€ économisés par utilisateur (taux 15€/h)
    Et le total est de 750-1500€ économisés/mois
    Et le coût des réductions Premium est maximum 200€/mois (50 utilisateurs Or)
    Et le ROI est positif dès 2-3 utilisateurs Or actifs

  Scénario: Coût total du système
    Étant donné que le système de modération communautaire est en place
    Quand on calcule le coût total
    Alors en phase MVP, le coût est de 0€
    Et en phase Post-MVP avec réductions Premium, le coût est de 0-200€/mois
    Et le système est entièrement automatique (0€ développement continu)
    Et le ROI est largement positif
