# Diagnostic baseline v0.101 — 19 février 2026 **Objectif** : État des lieux avant stabilisation v0.101. --- ## Backend (`go test ./... -short`) ### Résultat initial - **2 échecs** dans `internal/handlers/webhook_handlers_test.go` : - `TestWebhookHandler_RegisterWebhook_InvalidURL` : attendu 400, obtenu 500 - `TestWebhookHandler_RegisterWebhook_NoEvents` : attendu 400, obtenu 201 ### Cause - Le handler utilisait `binding` (Gin) alors que `BindAndValidateJSON` s'appuie sur le validateur centralisé qui lit le tag `validate`. - Les champs `url` et `events` n'étaient pas validés. ### Correctif appliqué - Remplacement de `binding:"required,url"` et `binding:"required,min=1"` par `validate:"required,url"` et `validate:"required,min=1"` dans `webhook_handlers.go`. --- ## Frontend — Lint (`npm run lint`) ### Problèmes initiaux 1. **eslint-plugin-storybook** : package manquant → config ESLint modifiée (plugin désactivé). 2. **dist_verification/** : fichiers build lintés → ajouté aux ignores. 3. **.storybook/preview.tsx** : `React` inutilisé, `handlers: handlers` → corrigé. ### Correctifs appliqués - `eslint.config.js` : retrait du plugin storybook, ajout de `dist_verification/` et `storybook-static/` aux ignores. - `.storybook/preview.tsx` : suppression de l'import React, utilisation du shorthand `handlers`. ### État résiduel (résolu 19/02) - 0 erreur lint atteint via : ignores (e2e, scripts, playwright-report, generated), globals, override stories, corrections empty catch, PlayerExpanded, TrackHistory.test. --- ## Frontend — Tests (`npm test -- --run`) À valider après corrections. --- ## Storybook audit (`npm run test:storybook`) Nécessite : `npm run build-storybook` puis serveur sur port 6007. À exécuter en Phase 3. --- ## E2E (auth, smoke, playlists, search) À valider en Phase 4 avec backend et infra démarrés.