# Smoke Test v0.981 — Bug Bash Checklist **Objectif** : Valider les 5 flux critiques du bug bash v0.981 Beta sur l'environnement staging. --- ## Prérequis - [ ] Staging déployé selon [STAGING_DEPLOYMENT.md](STAGING_DEPLOYMENT.md) - [ ] `GET /api/v1/health/deep` retourne 200 avec status healthy - [ ] Frontend accessible (page de login affichée) - [ ] Tokens JWT disponibles pour les tests authentifiés --- ## 1. Flux Auth ### 1.1 Register - [ ] `POST /api/v1/auth/register` avec email, password, username → 201 - [ ] Email de vérification reçu (si configuré) ### 1.2 Login - [ ] `POST /api/v1/auth/login` avec credentials valides → 200, tokens retournés - [ ] Token JWT valide pour les requêtes protégées ### 1.3 2FA (setup / verify / disable) - [ ] Setup 2FA : activer TOTP → QR code ou secret affiché - [ ] Verify 2FA : `POST /api/v1/auth/login/2fa` avec code → 200 - [ ] Disable 2FA : désactiver (route appropriée) → succès ### 1.4 OAuth - [ ] OAuth Google : initier flow → callback → compte lié - [ ] OAuth GitHub : initier flow → callback → compte lié ### 1.5 Logout et sessions - [ ] `POST /api/v1/auth/logout` → session révoquée - [ ] Token refresh : `POST /api/v1/auth/refresh` → nouveau token - [ ] Session list : lister sessions actives - [ ] Session revoke : révoquer une session ### 1.6 Password reset - [ ] Demander reset : email envoyé - [ ] Compléter reset avec token → nouveau mot de passe actif ### 1.7 Account deletion - [ ] `DELETE /api/v1/users/me` (ou équivalent) → compte supprimé - [ ] Tentative de login avec email supprimé → 401 **Exemples curl** : ```bash # Register curl -s -X POST http://localhost:8080/api/v1/auth/register \ -H "Content-Type: application/json" \ -d '{"email":"test@example.com","password":"SecurePass123!","username":"testuser"}' | jq . # Login curl -s -X POST http://localhost:8080/api/v1/auth/login \ -H "Content-Type: application/json" \ -d '{"email":"test@example.com","password":"SecurePass123!"}' | jq . ``` --- ## 2. Flux Commerce ### 2.1 Browse marketplace - [ ] `GET /api/v1/marketplace/products` → liste paginée - [ ] Recherche et filtres fonctionnent ### 2.2 Cart et checkout - [ ] Add to cart : ajouter produit au panier - [ ] Promo code : appliquer code promo → réduction affichée - [ ] Checkout : initier paiement Hyperswitch (sandbox) - [ ] Order confirmation : après paiement simulé → commande créée ### 2.3 Post-achat - [ ] Download : télécharger le fichier acheté - [ ] Review : laisser une évaluation - [ ] Refund : demander remboursement (si applicable) ### 2.4 Seller - [ ] Seller dashboard : voir ventes, statistiques - [ ] Transfers : voir les virements versés --- ## 3. Flux Média ### 3.1 Upload et transcodage - [ ] Upload track : upload fichier audio → track créé - [ ] Transcode HLS : transcodage lancé → segments HLS disponibles - [ ] Playback : lecture du track en streaming ### 3.2 Queue et playlists - [ ] Queue : ajouter à la file, réordonner, supprimer - [ ] Playlist create : créer une playlist - [ ] Playlist share : partager un lien - [ ] Playlist collab : collaborer (si applicable) ### 3.3 Recherche et analytics - [ ] Search : recherche tracks, artists, albums - [ ] Analytics : vues, écoutes (dashboard créateur) ### 3.4 Cloud storage - [ ] Cloud upload : upload fichier vers cloud - [ ] Version : gestion des versions - [ ] Share : partage de fichier cloud --- ## 4. Flux Social ### 4.1 Feed - [ ] Create post : créer une publication - [ ] Like : liker un post - [ ] Comment : commenter un post ### 4.2 Relations - [ ] Follow : suivre un utilisateur - [ ] Block : bloquer un utilisateur ### 4.3 Groupes - [ ] Group create : créer un groupe - [ ] Group join : rejoindre un groupe - [ ] Group leave : quitter un groupe ### 4.4 Notifications - [ ] Liste des notifications affichée - [ ] Marquer comme lu ### 4.5 Chat - [ ] Envoyer un message - [ ] Réception en temps réel (WebSocket) - [ ] Historique des conversations --- ## 5. WebRTC Beta ### 5.1 Badge et UX - [ ] Badge "Beta" visible sur le bouton d'appel (CallButton) - [ ] Tooltip "Fonctionne mieux sur le même réseau local" affiché ### 5.2 Appel audio en LAN - [ ] Initier un appel audio entre deux clients sur le même réseau - [ ] Signalisation (Offer/Answer/ICE) fonctionne - [ ] Audio bidirectionnel établi (ou message d'échec attendu si NAT) --- ## 6. Vérifications techniques ### 6.1 Health ```bash curl -s http://localhost:8080/api/v1/health | jq . curl -s http://localhost:8080/api/v1/health/deep | jq . ``` ### 6.2 Stream server ```bash curl -s http://localhost:3001/health | jq . ``` ### 6.3 Frontend - [ ] Page login s'affiche sans erreur console - [ ] Navigation vers dashboard après login --- ## Suivi des bugs Documenter tout bug trouvé dans [BUG_BASH_V0981.md](BUG_BASH_V0981.md) avec : flux, description, sévérité (P1/P2/P3), statut.