Visual audit captures for all major pages (desktop, tablet, mobile). Add run-audit.sh and generate_page_fix_prompts.sh helper scripts. Add prompt templates directory. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
6.9 KiB
ok maintenant il faut dresser une liste exhaustive de toutes les erreurs qui existent dans la page "Lancer un stream" (/live/go-live). Il faut tester chaque fonctionnalité une par une avec le MCP Playwright pour simuler un utilisateur réel.
Comptes de test :
┌───────────┬───────────────────┬──────────────┐ │ Rôle │ Email │ Mot de passe │ ├───────────┼───────────────────┼──────────────┤ │ admin │ admin@veza.music │ Admin123! │ ├───────────┼───────────────────┼──────────────┤ │ creator │ artist@veza.music │ Artist123! │ ├───────────┼───────────────────┼──────────────┤ │ user │ user@veza.music │ User123! │ ├───────────┼───────────────────┼──────────────┤ │ moderator │ mod@veza.music │ Mod123! │ ├───────────┼───────────────────┼──────────────┤ │ user_new │ new@veza.music │ New123! │ └───────────┴───────────────────┴──────────────┘ Domaine : veza.fr
Comptes à utiliser pour cette page : creator, admin
─── INSTRUCTIONS ───
-
AUDIT EXHAUSTIF avec Playwright MCP :
Pour la page /live/go-live ("Lancer un stream"), teste systématiquement :
a) CHARGEMENT & RENDU
- La page se charge sans erreur (pas de crash, pas de blank screen)
- Pas d'erreurs dans la console navigateur (JS errors, failed network requests)
- Tous les éléments visuels attendus sont présents et visibles
- Le layout est correct (pas d'overflow, pas d'éléments qui se chevauchent)
b) FONCTIONNALITÉS SPÉCIFIQUES À CETTE PAGE
- Formulaire de configuration stream (titre, description, catégorie)
- Prévisualisation caméra/micro
- Bouton Go Live
- Vérification permissions (role creator/admin requis)
- Utilisateur standard → redirect ou message d'erreur
- Configuration RTMP/HLS si affichée
c) RÉSEAU & API - Tous les appels API réussissent (pas de 4xx/5xx inattendus) - Les données affichées correspondent aux réponses API - Gestion correcte du loading state - Gestion correcte des erreurs réseau
d) SÉCURITÉ - Pas de fuite d'informations sensibles (tokens, emails dans l'URL, clés API) - Les données d'un autre utilisateur ne sont pas accessibles - Les actions protégées nécessitent bien l'authentification - CSRF / XSS : vérifier les inputs utilisateur - Vérifier que les rôles non-autorisés reçoivent bien un 403 ou redirect
e) ACCESSIBILITÉ (a11y) - Tous les éléments interactifs ont un accessible name descriptif (pas juste "Checkbox" ou "Button") - Les labels sont associés aux inputs - Le focus order est logique (Tab navigation) - Les aria-labels/aria-describedby sont présents et pertinents - Contraste suffisant sur les textes
f) INTERNATIONALISATION (i18n) - Pas de mélange de langues (tout FR ou tout EN, pas les deux) - Les traductions sont complètes (pas de clés i18n brutes affichées)
g) RESPONSIVE - Tester en viewport mobile (375px), tablet (768px), desktop (1280px) - Pas d'éléments qui débordent - Navigation mobile fonctionnelle
-
FORMAT DU RAPPORT :
Produis un rapport structuré exactement comme suit :
Rapport exhaustif des erreurs — Page Lancer un stream (/live/go-live) Testé avec le(s) compte(s) : creator, admin Date : [date du test] ─── ERREURS CRITIQUES (bloquantes) BUG #1 — [Titre court] - Sévérité: CRITIQUE - Section: [section de la page] - Repro: [étapes de reproduction] - Erreur: [description technique] - Source: [fichier:ligne si identifiable] - Impact: [impact utilisateur] ─── ERREURS HAUTES ... ─── ERREURS MOYENNES ... ─── ERREURS FAIBLES ... ─── RÉSUMÉ ┌────────────────────────────┬─────────┬──────────────┐ │ Catégorie │ Nombre │ Sévérité max │ ├────────────────────────────┼─────────┼──────────────┤ │ ... │ ... │ ... │ └────────────────────────────┴─────────┴──────────────┘ -
CORRECTION DES BUGS :
Après avoir dressé la liste, corrige TOUS les problèmes trouvés pour que la page soit entièrement fonctionnelle. Pour chaque fix :
- Identifie le fichier source exact
- Applique le correctif
- Vérifie avec Playwright que le bug est résolu
-
TRANSFORMATION EN TESTS E2E :
Transforme toute la suite de vérification que tu viens de faire pour la page /live/go-live en suite de tests Playwright que tu peux ajouter directement à ceux existants dans veza-e2e/.
Spécifications des tests :
- Fichier : veza-e2e/tests/live-go-live.spec.ts
- Framework : Playwright Test (@playwright/test)
- Pattern : Page Object Model si la page est complexe
- Chaque bug trouvé ET corrigé = au moins 1 test de non-régression
- Chaque fonctionnalité testée manuellement = 1 test automatisé
- Tests organisés par describe() : "Chargement", "Fonctionnalités", "Sécurité", "a11y", "i18n"
- Les tests doivent être indépendants (setup/teardown propre)
- Utiliser les test accounts définis ci-dessus pour l'auth dans les fixtures
Structure attendue :
import { test, expect } from '@playwright/test'; test.describe('Lancer un stream (/live/go-live)', () => { test.describe('Chargement & Rendu', () => { test('la page se charge sans erreur', async ({ page }) => { // ... }); }); test.describe('Fonctionnalités', () => { // Un test par fonctionnalité }); test.describe('Sécurité', () => { // Tests de sécurité }); test.describe('Accessibilité', () => { // Tests a11y }); test.describe('Régression', () => { // Un test par bug corrigé }); });Assure-toi que les nouveaux tests s'intègrent avec la config Playwright existante et ne dupliquent pas des tests déjà présents.