feat(tech-steps): détecte les températures dans les étapes #19
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/temperature-metadata"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Stacked sur #18 (
feat/merge-admin-into-web) — le seul fichier commun estapps/web/src/locales/fr/translation.json. À retarget surmainune fois #18 mergée.3ᵉ type de métadonnée de clause, à côté des ingrédients et des ustensiles (
StepTechStepView.ingredients/.utensils) : la température manquait alors qu'elle est omniprésente dans les recettes FR.Couverture : °C (« 180°C », « 200 degrés », °F converti+arrondi), thermostat / gas mark (« th. 6 », « thermostat 7 »), intensité qualitative (« feu doux/moyen/vif/fort » →
low/medium/high).services/tech-step-intent-servicetemperature_extraction.py:extract_temperatures(text, locale), pur, à base de regex — indépendant du modèle spaCy et de l'entraînement (extrait même pour une locale pas encore entraînée).ProcessResult/ProcessResponsegagnenttemperatures— ajout additif au contrat,EntityPayloadinchangé. Liste à part desentitiescar une température porte des champs structurés (celsius/gas_mark/qualitative). Clégas_marken snake_case sur le fil.test_temperature_extraction.py(10 cas) ;test_routes_process.py— les 2 assertions d'égalité stricte gagnent"temperatures": [], +1 nouveau cas. 15/15 verts (test_temperature_extraction+test_routes_process).apps/apiIntentServiceTemperaturedansintent-service-client.ts(mappegas_mark→gasMarkà la frontière).TechStepMatch.temperatures: chaque température rattachée à la clause dont le span la contient — même règle que les ustensiles (matchTechStepSpans).model StepTechStepTemperature— aucune FK (la valeur structurée est la donnée) ; migration manuelle20260829120000_step_tech_step_temperature(cascade via leTRUNCATEdestep_tech_step, comme_ingredient/_utensil— rien à ajouter àreset-db.ts).recipe.service.ts(recipeInclude+toStepTechStepViews), include de séquence fraîche du service de correction,sources.service.ts(aperçu d'import) les fait transiter. Nouveau cas dansrecipe.test.ts.packages/sharedStepTechStepTemperatureView+temperaturessurStepTechStepView.apps/websplitDescriptionSegmentsenrobesplitDescriptionByTechStepset redécoupe les runs non-keyword autour des spans de température — la logique technique intriquée (bien couverte par tests) reste intacte.?? []tolère une payload d'avanttemperatures(corrige une régression : les fixtures Cypress mockées n'ont pas le champ).StepDescription: surlignage.step-temperature(accent Vermillion,--low/--highvarient juste l'épaisseur du soulignement) + Tooltip viatemperatureLabel. i18nrecipes.temperature.{celsius,gasMark,qualitative.*}.Vérification
biome checkpropre ;tsc -b(web + api) ;pnpm -r build6/6.webe2e : 102/103 (l'unique échec = flake pré-existantrecipe-form.feature, identique àmain) ; 49/49 composants.pnpm --filter api test(Postgres :5433 +tech-step-intent-servicerequis) non lancé ici — à faire avant merge.🤖 Generated with Claude Code
a04d796167to189df73b4ctemperaturesaux fixtures StepTechStepView command line instructions
Checkout
From your project repository, check out a new branch and test the changes.Merge
Merge the changes and update on Forgejo.Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.