Problème
Le Lot A (GH-24) livre le moteur backend de benchmark (fixtures, engine, scoring, API REST), mais les résultats ne sont consultables que via appels API bruts. Aucune interface visuelle ne permet de comparer les performances des modèles LLM par agent.
Objectif
Livrer un dashboard frontend intégré au SPA existant permettant de :
- Gérer les fixtures de benchmark (liste, détail, création)
- Lancer des runs de benchmark avec sélection de modèles
- Visualiser les résultats : scores par agent, comparaison entre modèles, détail des attempts
- S'intégrer au design system existant (terminal-style, Tailwind v4, JetBrains Mono)
Périmètre (IN)
- Page
BenchmarkPage.tsx : nouvelle page dans le SPA (route /benchmark)
- Entrée navigation : ajout dans le sidebar (
Layout.tsx)
- Client API : méthodes benchmark dans
api/client.ts
- Types TypeScript : interfaces pour fixtures, runs, cases, attempts, scores
- Composants :
- Liste des fixtures avec statut et metadata
- Formulaire de lancement de run (sélection fixture + modèle + agent + scénario)
- Tableau de résultats avec scores V1 par métrique
- Vue comparaison : même fixture, modèles différents (tableau ou chart)
- Détail d'un run avec attempts et scores individuels
Hors périmètre (OUT)
- Modification du backend (Lot A déjà livré)
- Charts avancés (radar, heatmap) — itération future
- Scoring V2 / juge LLM (Lot C)
- Tests E2E Playwright (optionnel, non obligatoire)
Critères d'acceptation
Dépendances
Risques
Problème
Le Lot A (GH-24) livre le moteur backend de benchmark (fixtures, engine, scoring, API REST), mais les résultats ne sont consultables que via appels API bruts. Aucune interface visuelle ne permet de comparer les performances des modèles LLM par agent.
Objectif
Livrer un dashboard frontend intégré au SPA existant permettant de :
Périmètre (IN)
BenchmarkPage.tsx: nouvelle page dans le SPA (route/benchmark)Layout.tsx)api/client.tsHors périmètre (OUT)
Critères d'acceptation
/benchmarkest accessible depuis la navigation latéraleDépendances
/api/v1/benchmark/doit être mergée ou accessible sur la branchefrontend/src/styles/theme.css, composants existants (ExpansionPanel,LoadingIndicators)BacktestsPage.tsxcomme référenceRisques