diff --git a/docs/waves/wave-272.md b/docs/waves/wave-272.md new file mode 100644 index 000000000..73b5fa0ca --- /dev/null +++ b/docs/waves/wave-272.md @@ -0,0 +1,64 @@ +## Wave 272 — Auto-wire dynamique + diag_training_benchmark_wevia + fix UI Option 1 +**Date:** 2026-04-23T19:48:19.905662 +**Status:** ✅ LIVE, zero regression (NR 153/153, L99 314/314) + +### Cause racine (scan exhaustif) +Tableau benchmarks IA dans `wevia-training.html` ligne 2256 affichait la ligne WEVIA +avec `gpqa/swe/math/aime/arena_code = null` (rendu visuel: cellules vides). + +Intentionnel au départ (WEVIA = orchestrateur, hérite du primary actif) mais UX +ambiguë: l'utilisateur voyait "WEVIA pas de score". + +### Gap d'autonomie WEVIA détecté (3 tests langage naturel) +- "pourquoi aucun pourcentage sur la ligne WEVIA" → intent `calculate` (faux positif "pourcentage") +- "diagnostic wevia-training benchmarks" → intent `sovereign_cascade_test` (faux positif "sovereign") +- "analyse cause racine tableau benchmarks" → intent `top_ia_benchmark` (faux positif "benchmark") + +L'existant `auto_wire_ack` est un ACK statique, pas un vrai auto-wire dynamique. + +### Actions livrées + +#### Phase A — Intent diagnostic +- Nouvel intent `diag_training_benchmark_wevia` en position 0 de priority-intents-nl.json +- Trigger: `pourquoi.{0,25}(aucun|pas).{0,15}(pourcentage|percent|score).{0,15}wevia|diag.{0,10}training.{0,20}benchmark|...` +- Exécute `sed -n 2254,2258p` + cause racine + 3 options fix + preuves grep + +#### Phase B — Auto-wire dynamique boucle fermée +Flow E2E validé par test réel: +1. `master add intent X :: triggers :: cmd` → crée stub PENDING_APPROVAL +2. `master list pending` → liste les stubs dormants (2089 découverts) +3. `master activate last` → inject dans priority-intents-nl.json + reload FPM +4. Intent LIVE matchable en chat immédiatement + +Fichiers clés: +- Activator: `/opt/weval-ops/activate-pending-intent.py` (parse PHP stub via regex safe, whitelist security /var/www/html, /opt/wevia-brain, /opt/wevads/vault, backup+validate+reload) +- 4 intents de pilotage ajoutés: `autowire_help`, `list_pending_intents`, `activate_last_pending`, `activate_named_pending` + +**Mine d'or 2089 stubs dormants exposée au chat WEVIA**: +opus_tip_thuggie, opus_tip_mythos, opus_tip_cookies, opus_tip_token_rotation, +opus_tip_recovery_office, opus_tip_selenium_creation, opus_tip_blade, +opus_tip_opus46, opus_tip_deepseek_web, opus_paperclip_diag, opus_qa_selenium_v2... + +#### Phase C — Fix UI Option 1 (doctrines 4 + 14 + UX premium) +- Row WEVIA ligne 2256: `gpqa:null` → `gpqa:72, cascade_inherited:true` (hérité Cerebras primary 0€) +- Fonction display ligne 2707: badge teal `↑ inh` + tooltip "Hérité du primary actif (Cerebras Llama 3.3 70B, 0€)" +- Badge uniquement sur 5 capability (gpqa/swe/math/aime/arena_code), pas sur 0$ natifs + +### Preuves publiques +- https://weval-consulting.com/proofs/wevia-training-option1/v4-01-fullpage.png +- https://weval-consulting.com/proofs/wevia-training-option1/v4-02-wevia-row-zoom.png +- https://weval-consulting.com/proofs/wevia-training-option1/v4-03-full-table.png +- https://weval-consulting.com/proofs/wevia-training-option1/v4-04-tooltip-hover.png +- DOM extract: inh_count=5, tooltip_present=true, cells=["72% inh","55% inh","88% inh","22% inh","1180 inh","0$","0$"] + +### Métriques finales +- NR: 153/153 (100%) ✅ +- L99: 314/314 sur 11 layers (100%) ✅ +- Intents live: 177 (+6 vs 171) +- Stubs pending: 2089 (tous tips 6 mois conservés) + +### Rollback disponible +- `/var/www/html/wevia-training.html.bak-option1-20260423-044527` (pré-fix UI) +- `/var/www/html/wevia-training.html.bak-refine-20260423-045149` (pré-refine) +- `/opt/wevia-brain/priority-intents-nl.json.bak-20260423-043629` (pré-intents) +- Git tag `opus-gold-pre-wave272-diagtraining-0434` diff --git a/proofs/wevia-training-option1/v4-01-fullpage.png b/proofs/wevia-training-option1/v4-01-fullpage.png new file mode 100644 index 000000000..0da79a515 Binary files /dev/null and b/proofs/wevia-training-option1/v4-01-fullpage.png differ diff --git a/proofs/wevia-training-option1/v4-02-wevia-row-zoom.png b/proofs/wevia-training-option1/v4-02-wevia-row-zoom.png new file mode 100644 index 000000000..4ad3d2152 Binary files /dev/null and b/proofs/wevia-training-option1/v4-02-wevia-row-zoom.png differ diff --git a/proofs/wevia-training-option1/v4-03-full-table.png b/proofs/wevia-training-option1/v4-03-full-table.png new file mode 100644 index 000000000..8634fa235 Binary files /dev/null and b/proofs/wevia-training-option1/v4-03-full-table.png differ diff --git a/proofs/wevia-training-option1/v4-04-tooltip-hover.png b/proofs/wevia-training-option1/v4-04-tooltip-hover.png new file mode 100644 index 000000000..92cb0aeae Binary files /dev/null and b/proofs/wevia-training-option1/v4-04-tooltip-hover.png differ diff --git a/proofs/wevia-training-option1/v4-wevia-data.json b/proofs/wevia-training-option1/v4-wevia-data.json new file mode 100644 index 000000000..cc3a35b64 --- /dev/null +++ b/proofs/wevia-training-option1/v4-wevia-data.json @@ -0,0 +1,19 @@ +{ + "cells": [ + "11", + "WEVIA Sovereign Cascade v3", + "WEVAL (you)", + "72%↑ inh", + "55%↑ inh", + "88%↑ inh", + "22%↑ inh", + "1180↑ inh", + "~2500 primary", + "0.05-1.3", + "0$", + "0$", + "🏠 CE SYSTÈME" + ], + "inh_count": 5, + "tooltip_present": true +} \ No newline at end of file