{
  "schema_version": "1.0",
  "id": "pub-c128d98b524dfee2",
  "project_id": "pipeline-socle",
  "mission_id": null,
  "title": "Optimisation mesurée : rapport de goulots + baseline + banc de concurrence (K=4 tenu)",
  "summary": "1) BASELINE MESURÉE (réelles≠estimées, taille d'échantillon indiquée) : routeur 7 j = 19 appels, local 84,6 %, succès 94,7 %, coût cloud total 0,00097 USD, 0 escalade (n petit, volume micro-tâches). Latences locales production : 6,9 s moy qwen3:8b / 1,5 s qwen3:0.6b (n=11). CPU : 8 vCPU 31 GiB, load 0.14, 28 GiB dispo — sous-utilisé massivement. Missions n=27 : médiane 19 min, max 2,54 h ; sessions n=17 : médiane 42 min. Publications : 62 le 2026-10-22. Banc fixe existant (eval/dataset.jsonl, n≈8/catégorie) : qwen3:8b 20-25 tok/s, extraction 1,4-2,8 s, codegen 9-11 s OK. NOUVEAU banc concurrence (commit cffdfb4 routeur) : classification 8 prompts — séq 614 ms moy / K2 891 ms / K4 1192 ms p95 1,55 s, RAM plate → concurrence 4 tenue (policy limite à 2, jamais testée avant). 2) GOULOTS RANGÉS PAR CONTRIBUTION MESURÉE : #1 temps sériel des sessions agents (nuage, hors routeur — médiane session 42 min, le VPS reste idle pendant) ; #2 files : 21/27 missions = gap (fin sans preuve) — qualité comptable, pas débit ; #3 latence inférence locale (6,9 s lourd/0,6 s léger, CPU) ; #4 registre de tâches quasi inutilisé (1 tâche COMPLETED) → tout « scheduler » additionnel N'A PAS d'effet mesurable au débit réel : non construit, conformément à la consigne. #5 aucun doublon d'appel modèle mesuré (19 appels distincts, dédups arbitrages/publications actives). 3) CHANGEMENTS : aucun changement de policy ni d'architecture (n trop petit, la consigne l'interdit) ; ajout du banc répétable + résultats ; fix shadow=1 et boucle fermée llm_calls (missions précédentes) donnent la jauge qualité↔débît manquante. 4) RECOMMANDATIONS PRIORISÉES : (a) activer la boucle fermée — quelques jours de llm_calls (basculer shadow=false des 2 pilotes webui quand vous le décidez) pour qualifier code_generation local avant toute borne ; (b) mesurer qwen3:8b à K=2/4 (même banc, --model via task summarize) avant d'élever la concurrency 2 ; (c) corriger unclassified (1 appel cloud → refus facturé 0,00085 USD, n=1 → seulement surveillé) ; (d) fermer le processus résiduel [chemin-interne] (PID 144491, tournant depuis 09:26 — diagnostic d'une autre session, je n'y touche pas sans accord). 5) ROLLBACK : git revert cffdfb4 (routeur) — aucun service modifié. 6) NEXT : matrice catégorie×qualité×coût établie sur les datasets des deux bancs après fenêtre de mesure llm_calls.",
  "body": "",
  "status": "published",
  "report_type": "final_report",
  "published_at": "2026-10-22T13:23:45Z",
  "updated_at": "2026-10-22T13:23:45Z",
  "revision": 1,
  "authoring_agent": "pipeline-socle",
  "tags": [],
  "public_url": "/rapports/pub-c128d98b524dfee2",
  "markdown_url": "/public/reports/pub-c128d98b524dfee2.md",
  "json_url": "/public/reports/pub-c128d98b524dfee2.json",
  "content_hash": "sha256:b6a5f7b1569bbb64b677f8d6c0ac7fdec0f737be944e809c1474beef499efaea",
  "artifacts": []
}