5.4 KiB
Session Opus5 17avr 18h16 — AUTONOMIE WEVIA FIX + DOCTRINE 82
Contexte
User demande "AUTONOMIE TOTAL PAS SIMULATION" — je teste WEVIA directement via chat sans intervenir, et si elle plante je fix cause racine pour qu'elle réussisse la prochaine fois.
Test autonomie initial
User request : "wevia peux tu lister tous les endpoints opus5 qui sont live sur le serveur"
WEVIA réponse : HALLUCINATION — invente des endpoints inexistants (/opus5/health, /opus5/swagger.json) qui ne sont PAS sur le serveur. Demande même à Yacine de fournir "adresse IP du serveur" comme si elle ne le connaissait pas.
Cause racine : WEVIA répond au feeling LLM (génération texte) au lieu d'utiliser un outil factuel qui scanne le filesystem.
Fix cause racine : Doctrine 82 — Registry endpoint
Livrable 1 : /api/opus5-registry.php (doctrine 82)
Scanne /var/www/html/api/opus5-*.php en live et retourne la liste factuelle :
- 38 endpoints trouvés (filename + url + size + mtime)
- Mode
detail=1: extrait doctrine + description depuis headers PHP - Mode
lite(default) : juste les noms (ultra-rapide) - Cache Redis 1h pour éviter scan répété (wevia:opus5-registry:*)
- Refresh force via
?refresh=1
Livrable 2 : intent list_opus5_endpoints wired via chat
Triggers : liste endpoints opus5, quels sont les opus5, opus5 registry, endpoints dispo
Livrable 3 : Renumérotation doctrines P2 (headers only, GOLD backup)
Mes doctrines P2 avaient les anciens numéros 76-77-78 dans les headers PHP (commits de session précédente n'avaient pas mis à jour les commentaires), incohérent avec le renumérotation 79-80-81 faite dans le wiki/plan pour éviter collision V29 doctrine 73.
Fix : script Python renumérote les headers :
doctrine 76→doctrine 79(ssh-tmux)doctrine 77→doctrine 80(gpu-grid)doctrine 78→doctrine 81(meta-orch v3.1)
GOLD backup créé avant chaque modification :
.gold-pre-docrenum-20260417181652
Zéro logique touchée — juste les numéros de doctrine dans les commentaires.
État registry après renum (validation)
| Doctrine | Endpoint | Source |
|---|---|---|
| 3 | opus5-fix-consent-guard | (ancien) |
| 59 | opus5-fix-kaouther-drafts | (ancien) |
| 68 | opus5-predictive-cache | P0-A Opus5 |
| 69 | opus5-task-stream | P0-B Opus5 |
| 70 | opus5-python-sandbox | P0-C Opus5 |
| 73 | opus5-plugin-store | P1-A Opus5 (⚠️ collision V29 auth) |
| 74 | opus5-n8n-generator | P1-B Opus5 (⚠️ collision V30 wevia-blade-only) |
| 75 | opus5-knowledge-graph | P1-C Opus5 |
| 79 | opus5-ssh-tmux-stream | P2-A Opus5 ✅ renum |
| 80 | opus5-gpu-grid | P2-B Opus5 ✅ renum |
| 81 | opus5-autonomous-orchestrator-v3 | P2-C Opus5 ✅ renum |
| 82 | opus5-registry | NOUVEAU Opus5 |
Note sur les collisions 73-74 :
- Ma doctrine 73 (plugin store, session 1743) ≠ V29 doctrine 73 (auth circular loop)
- Ma doctrine 74 (n8n generator, session 1743) ≠ V30 doctrine 74 (wevia-blade-only)
Ces collisions doivent être résolues dans session future (ne pas renuméroter maintenant car le wiki/plan pointent déjà vers 73-75 pour mon P1).
Retest autonomie WEVIA (6 triggers NL)
| User message | Intent routé | Latence |
|---|---|---|
combien HCPs ethica |
opus-early-guard → DB live 146694 | <100ms |
cache stats |
predictive_cache | 21ms |
plugin list |
plugin_store_list | 21ms |
graph stats |
knowledge_graph_stats | 43ms |
task list |
task_stream_list | 45ms |
liste endpoints opus5 |
list_opus5_endpoints | 19ms |
Autonomie WEVIA : 6/6 PASS — plus d'hallucination, tous les triggers naturels routent vers des tools réels.
Cause racine persistante (non résolue)
WEVIA continue de router vers agents audit 24/24 quand on lui demande "implémente" ou "multi agents". Intent NER décomposition plan non créé cette session (pour session future).
Fichiers créés/modifiés
Nouveau (zéro écrasement logique)
/api/opus5-registry.php(doctrine 82)/api/wired-pending/intent-opus4-list_opus5_endpoints.php
Headers renumérotés (avec GOLD backup)
/api/opus5-ssh-tmux-stream.php(76 → 79, GOLD)/api/opus5-gpu-grid.php(77 → 80, GOLD)/api/opus5-autonomous-orchestrator-v3.php(78 → 81, GOLD)
Redis keys ajoutées
wevia:opus5-registry:lite(TTL 3600s)wevia:opus5-registry:detail(TTL 3600s)
NE PAS écraser (autres Claude)
/api/opus5-registry.php(doctrine 82)- Les 3 GOLDs
.gold-pre-docrenum-* - Redis keys
wevia:opus5-registry:* - Intent
list_opus5_endpoints
Métriques finales
- NR 153/153 ✅
- L99 304/304 ✅
- 38 endpoints opus5 registerés + cachés
- 37 intents wired (was 34)
- Zero régression, suppression, fake data, hardcode, écrasement logique
- UX premium : 19-45ms dispatch pour tous triggers opus5
Progression doctrine totale
Opus5 session 17 avril 2026 : doctrines 3, 59, 68, 69, 70, 73, 74, 75, 79, 80, 81, 82 = 12 doctrines actives
(V29 et V30 ont ajouté doctrine 73 auth et 74 wevia-blade-only qui collisionnent historiquement avec mon P1 — à réconcilier session future)
Prochaine session — cause racine autonomie WEVIA
- Intent
implement_planavec NER décomposition étapes - Dispatch auto vers task-stream async (doctrine 69) pour suivi long
- Classifier action/audit/info dans fast-path-v3 (évite re-route audit 24 agents)