veza/docs/archive/v0-history/SMOKE_TEST_V0981.md
senke 0e7097ed1b chore(cleanup): J1 — purge 220MB debris, archive session docs (complete)
First-attempt commit 3a5c6e184 only captured the .gitignore change; the
pre-commit hook silently dropped the 343 staged moves/deletes during
lint-staged's "no matching task" path. This commit re-applies the intended
J1 content on top of bec75f143 (which was pushed in parallel).

Uses --no-verify because:
- J1 only touches .md/.json/.log/.png/binaries — zero code that would
  benefit from lint-staged, typecheck, or vitest
- The hook demonstrated it corrupts pure-rename commits in this repo
- Explicitly authorized by user for this one commit

Changes (343 total: 169 deletions + 174 renames):

Binaries purged (~167 MB):
- veza-backend-api/{server,modern-server,encrypt_oauth_tokens,seed,seed-v2}

Generated reports purged:
- 9 apps/web/lint_report*.json (~32 MB)
- 8 apps/web/tsc_*.{log,txt} + ts_*.log (TS error snapshots)
- 3 apps/web/storybook_*.json (1375+ stored errors)
- apps/web/{build_errors*,build_output,final_errors}.txt
- 70 veza-backend-api/coverage*.out + coverage_groups/ (~4 MB)
- 3 veza-backend-api/internal/handlers/*.bak

Root cleanup:
- 54 audit-*.png (visual regression baselines, ~11 MB)
- 9 stale MVP-era scripts (Jan 27, hardcoded v0.101):
  start_{iteration,mvp,recovery}.sh,
  test_{mvp_endpoints,protected_endpoints,user_journey}.sh,
  validate_v0101.sh, verify_logs_setup.sh, gen_hash.py

Session docs archived (not deleted — preserved under docs/archive/):
- 78 apps/web/*.md     → docs/archive/frontend-sessions-2026/
- 43 veza-backend-api/*.md → docs/archive/backend-sessions-2026/
- 53 docs/{RETROSPECTIVE_V,SMOKE_TEST_V,PLAN_V0_,V0_*_RELEASE_SCOPE,
          AUDIT_,PLAN_ACTION_AUDIT,REMEDIATION_PROGRESS}*.md
                        → docs/archive/v0-history/

README.md and CONTRIBUTING.md preserved in apps/web/ and veza-backend-api/.

Note: The .gitignore rules preventing recurrence were already pushed in
3a5c6e184 and remain in place — this commit does not modify .gitignore.

Refs: AUDIT_REPORT.md §11
2026-04-14 17:12:03 +02:00

172 lines
4.8 KiB
Markdown

# 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.