diff --git a/wiki/session-V97-zero-dormant-registry.md b/wiki/session-V97-zero-dormant-registry.md new file mode 100644 index 000000000..387b07a22 --- /dev/null +++ b/wiki/session-V97-zero-dormant-registry.md @@ -0,0 +1,84 @@ +# V97 - Zero Dormant Registry - 2026-04-21 + +## Objectif +Activer 258 tools read-only safe dans `wevia-tool-registry.json` pour passage +autonomie WEVIA Master de **0.2%** → **41.3%** exec-able. + +## Root Cause (Doctrine 0) +Le flag `exec:true` servait d'indicateur conventionnel pour les 627 tools du +registry. 626 restaient "dormants" (exec:false) par héritage historique, +même si techniquement exécutables via Dynamic Resolver. + +## Classification risk (audit automatisé) + +| Catégorie | Count | Action V97 | +|---|---|---| +| DANGER (destructif) | 12 | ❌ Keep exec:false (jamais auto) | +| Write (mutation) | 102 | ❌ Keep exec:false (validation humaine) | +| No-cmd (metadata) | 254 | ⊘ N/A (pas de commande) | +| Read-only (safe) | 258 + 1 | ✅ exec:true activé | +| **TOTAL exec-able** | **259** | 41.3% | + +### Patterns DANGER (jamais auto) +```regex +\brm\b | \bdelete\b | \bdrop\s+(table|database) +chattr.*-i | \bkill\b | \bshutdown\b | \breboot\b +format.*dev | dd\s+if= | mkfs | fdisk +sudo\s+systemctl\s+(stop|disable) +``` + +### Patterns Write (skip - audit humain requis) +```regex +\binsert\s+into\b | \bupdate\s+set\b +sudo\s+(cp|mv|chattr\s+-i|systemctl\s+(start|restart)) +>\s*/ | tee\s+/ +``` + +### Read-only safe (activés 258) +Tout le reste : `curl -s`, `grep`, `cat` read-only, `ls`, `jq`, +`python3 read-only`, psql SELECT, etc. + +## Tests live validation (doctrine 14) + +| Test | Engine | Résultat | +|---|---|---| +| multiagent orchestrate | Orchestrator/* (11 agents) | 11/11 EXEC RÉEL | +| reconcile | Orchestrator/reconcile | PORTS=73 DOCKER=19 DISK=79% | +| providers | Orchestrator/providers | 13/13 UP (Cerebras/Groq/Gemini/...) | +| ethica hcp stats | FastPath/fast-path | 161,730 HCPs (+20K depuis snapshot) | +| engagement kpi | Resolver/v83_engagement_kpi | DAU=51 MAU=129 (V96 fix persiste) | + +## Métriques V97 +- **L99 NonReg post:** 153/153 PASS | 0 FAIL | 100% | 56.4s (TS 20260421_002030) +- **V83 Business KPI:** 100% completeness +- **Tool registry exec ratio:** 0.2% → **41.3%** (x206 autonomie) +- **Commit:** `678f7f44c` +- **Push gitea:** ✅ +- **Push github:** ✅ + +## GOLD vault +- `/opt/wevads/vault/wevia-tool-registry.json.GOLD-V97-20260421-001951` (180KB) + +## Script +- `/tmp/activate-readonly.py` (idempotent, re-runnable safe) + +## Doctrines appliquées +- Doctrine 0: Zero dormant capabilities → 258 tools activés +- Doctrine 1: GOLD snapshot avant modification +- Doctrine 2: Zero écrasement (flag change only) +- Doctrine 3: Zero suppression +- Doctrine 4: Zero régression (L99 153/153 pre/post) +- Doctrine 12: Classification risk par regex (pas à l'œil) +- Doctrine 14: Test-driven live (4 tests multi-agent avant/après) +- Doctrine 16: Script idempotent Python +- Doctrine 60: UX premium (Master multi-agent streaming SSE) +- Doctrine 95: Traçabilité wiki + vault Obsidian +- Doctrine 100: Commit release atomique + +## Next V98 pending +- [ ] Auth cookie persistence Playwright pour tests E2E authentiques +- [ ] Auditer 9 orphans TREE.all_pages (pages sans backlink) +- [ ] Bridge S95 PMTA CSV → S204 (Emails 30d=0 baseline depuis 1 fév) +- [ ] Campagne NPS auto Pharma Cloud (tables prêtes, sondage pas envoyé) +- [ ] Huawei Cloud billing dispute resolution +- [ ] Vistex lead protection addendum Section 6.c.i