batchCooking/apps/web/cypress/e2e
Nicolas 53d415fddb feat(tech-steps): fiabilise la detection des tech steps (corpus + LLM + corrections utilisateur)
Une seule feature livree en une seule PR, en 5 phases :

- Phase 1 : enrichit le corpus NLP (tech-step-training-data.ts) et ajoute
  un harness d'evaluation (precision/rappel/F1) avec un jeu de test etiquete
  - la premiere metrique objective de qualite pour ce classifieur.
- Phase 2 : schema Prisma (StepTechStepCorrection, TechStepTrainingSuggestion)
  + endpoints utilisateur (POST/GET corrections, ouverts a tout viewer, pas
  seulement l'auteur) + endpoints internes /internal/tech-steps/* proteges
  par secret partage (requireInternalWorker).
- Phase 3 : UI de highlight/correction cote web (selection de texte ->
  association a une technique, ou clic sur un highlight existant pour le
  corriger/supprimer) - verifiee via Cypress (component + e2e, en Chrome
  reel).
- Phase 4 : worker LLM autonome (services/tech-step-llm-worker, hors du
  monorepo pnpm comme experiments/llm-tech-step-poc) qui audite les clauses
  a faible confiance et transforme les corrections utilisateur en
  suggestions d'entrainement, sans jamais toucher le chemin interactif.
- Phase 5 : script retrain-tech-steps.ts (gate de regression F1 + backfill)
  et list-pending-training-suggestions.ts pour la revue humaine avant
  application au corpus.

Verification effectuee cette session : tsc/biome sur l'ensemble du repo,
build complet (pnpm build), suite Cypress complete (component 39/39, e2e
75/76 - le seul echec est preexistant et sans rapport, cote
recipe-form.feature/ingredient-picker), tests unitaires du worker (6/6) et
son install/typecheck reels contre node-llama-cpp. Les tests Mocha
d'apps/api (Phases 1 et 2) n'ont pas pu etre executes dans cette session
(pas de Postgres local disponible) - a lancer avant merge.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-22 09:48:02 +02:00
..
account.cy.ts refactor: sépare les tests Cypress en parcours utilisateur / layout / composants (#25) 2026-08-19 14:31:17 +02:00
account.feature refactor: sépare les tests Cypress en parcours utilisateur / layout / composants (#25) 2026-08-19 14:31:17 +02:00
account.ts refactor: sépare les tests Cypress en parcours utilisateur / layout / composants (#25) 2026-08-19 14:31:17 +02:00
auth.feature refactor: sépare les tests Cypress en parcours utilisateur / layout / composants (#25) 2026-08-19 14:31:17 +02:00
auth.ts refactor: sépare les tests Cypress en parcours utilisateur / layout / composants (#25) 2026-08-19 14:31:17 +02:00
household-settings.cy.ts refactor: sépare les tests Cypress en parcours utilisateur / layout / composants (#25) 2026-08-19 14:31:17 +02:00
household-settings.feature fix(recipes): la source générique JSON-LD n'apparaît plus comme source 2026-08-20 15:10:51 +02:00
household-settings.ts refactor: sépare les tests Cypress en parcours utilisateur / layout / composants (#25) 2026-08-19 14:31:17 +02:00
layout.cy.ts fix(e2e): update layout test for settings-page's dropped max-width 2026-08-19 22:01:22 +02:00
onboarding.feature fix(recipes): synchronise les sources en base au démarrage de l'image de prod 2026-08-20 13:48:29 +02:00
onboarding.ts refactor: sépare les tests Cypress en parcours utilisateur / layout / composants (#25) 2026-08-19 14:31:17 +02:00
planning-page.cy.ts fix(ci): corrige lint/tests cassés par la migration portions 2026-08-19 14:56:50 +02:00
planning.feature feat(planning): le picker prévisualise avant de confirmer, formulaire de revue intégré 2026-08-21 00:05:17 +02:00
planning.ts feat(planning): le picker prévisualise avant de confirmer, formulaire de revue intégré 2026-08-21 00:05:17 +02:00
preferences.cy.ts refactor: sépare les tests Cypress en parcours utilisateur / layout / composants (#25) 2026-08-19 14:31:17 +02:00
preferences.feature refactor: sépare les tests Cypress en parcours utilisateur / layout / composants (#25) 2026-08-19 14:31:17 +02:00
preferences.ts refactor: sépare les tests Cypress en parcours utilisateur / layout / composants (#25) 2026-08-19 14:31:17 +02:00
recipe-form.feature fix: corrige les bugs ouverts du repo (import TheMealDB, sidebar mobile) + doc (#59) 2026-08-21 12:16:22 +02:00
recipe-form.ts feat(recipes): écran de revue et finalisation de l'import (étape 3/4) 2026-08-20 16:56:06 +02:00
recipe-sources.feature fix(recipes): retire l'import manuel, le planning importe seul 2026-08-20 21:14:10 +02:00
recipe-sources.ts fix(recipes): retire l'import manuel, le planning importe seul 2026-08-20 21:14:10 +02:00
recipes.cy.ts fix: corrige les bugs ouverts du repo (import TheMealDB, sidebar mobile) + doc (#59) 2026-08-21 12:16:22 +02:00
recipes.feature feat(tech-steps): fiabilise la detection des tech steps (corpus + LLM + corrections utilisateur) 2026-08-22 09:48:02 +02:00
recipes.ts feat(tech-steps): fiabilise la detection des tech steps (corpus + LLM + corrections utilisateur) 2026-08-22 09:48:02 +02:00
sidebar.cy.ts refactor: sépare les tests Cypress en parcours utilisateur / layout / composants (#25) 2026-08-19 14:31:17 +02:00
smoke.cy.ts Centralize error handling + code quality pass (comments, SCSS theming) (#7) 2026-08-16 18:40:53 +02:00
user-preferences.cy.ts refactor: sépare les tests Cypress en parcours utilisateur / layout / composants (#25) 2026-08-19 14:31:17 +02:00
user-preferences.feature refactor: sépare les tests Cypress en parcours utilisateur / layout / composants (#25) 2026-08-19 14:31:17 +02:00
user-preferences.ts refactor: sépare les tests Cypress en parcours utilisateur / layout / composants (#25) 2026-08-19 14:31:17 +02:00