Ajoute un logging JSON structure (meme convention que LoggerService cote apps/api) a services/tech-step-intent-service : chaque appel POST /v1/process journalise locale/texte en entree et entites/intent/score en sortie, chaque POST /v1/train journalise les uid entraines et les compteurs resultants. Chatter interne de spaCy mis a WARNING pour ne pas noyer ces lignes. Bug trouve et corrige en verifiant les octets bruts d'un log reel (pas juste son affichage terminal) : l'encodage par defaut de sys.stdout sur Windows produisait de vrais octets UTF-8 invalides pour tout texte accentue journalise (le francais des etapes de recette) — corrige par sys.stdout.reconfigure(encoding="utf-8") au demarrage. LOG_LEVEL configurable (INFO par defaut), documente dans le README du service et .env.example. Verifie : 30/30 pytest (3 nouveaux tests sur le formateur JSON), smoke test HTTP reel confirmant au niveau des octets que les caracteres accentues sont preserves, lint complet du monorepo. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
11 lines
671 B
Text
11 lines
671 B
Text
# Secret partagé attendu sur le header `X-Intent-Service-Secret` de chaque
|
|
# requête (sauf `GET /health`) — doit matcher `INTENT_SERVICE_SECRET` côté
|
|
# apps/api/.env (voir apps/api/src/config/env.ts). Requis, pas de valeur par
|
|
# défaut : `Settings` (intent_service/config.py) refuse de démarrer sans.
|
|
INTENT_SERVICE_SECRET=changeme-generate-a-real-random-secret-at-least-32-chars
|
|
|
|
# Optionnel — niveau du logging JSON structuré (intent_service/logging_config.py).
|
|
# INFO par défaut : chaque appel /v1/process et /v1/train journalise son
|
|
# input (locale/texte, entrées d'entraînement) et son output (entités,
|
|
# intent, score) à ce niveau.
|
|
# LOG_LEVEL=INFO
|