# Khadhroony Bot3 — Checklist de clôture de la migration > **Périmètre :** clôturer la migration de `khadhroony-bot2` vers `khadhroony-bot3`, stabiliser `kb-app-demo-desktop` et valider l’intégration des crates consolidées. > > **Base de suivi :** `0.1.0-pre.055` et correctifs suivants. > > **Règle d’utilisation :** cocher chaque case uniquement après validation locale explicite. Les sous-cases constituent les critères d’acceptation de la tâche parente. --- ## 0. État validé à ce jour - [x] Les fenêtres historiques principales ont été portées dans `kb-app-demo-desktop`. - [x] Les décodeurs, modèles, matérialiseurs et exécuteurs sont consommés depuis `kb-lib`. - [x] `kb-store-core` et `kb-store-pg` ont été fusionnés dans `kb-store`. - [x] `kb-program-ids` est une dépendance explicite du desktop. - [x] `kb-pipeline-demo-scenarios` est une dépendance explicite du desktop. - [x] Le pool WebSocket n’est plus initialisé au démarrage de l’application. - [x] Le pool WebSocket est créé paresseusement à l’ouverture/utilisation de `demo_ws`. - [x] La session WebSocket survit à la fermeture de la fenêtre `demo_ws`. - [x] La réouverture de `demo_ws` récupère l’état de la session existante. - [x] La clé `HELIUS_API_KEY` chargée depuis `.env` permet une connexion Helius réelle. - [x] Les fenêtres dynamiques sont déclarées dans `vite.config.ts` et `capabilities/default.json`, sans être ajoutées à `tauri.conf.json`. - [x] La permission de logging est attribuée aux fenêtres dynamiques. - [x] Les balises HTML mal imbriquées qui rechargeaient `main.html` ont été corrigées. - [x] Les routes de fichiers de logs consolidées produisent une arborescence cohérente. - [x] L’audit Rust global est propre sur la base testée : - `General Rust rule audit: clean` - `Rust export completeness audit: 0 candidate(s)` - `Khadhroony workspace rule audit: clean` --- ## 1. Corriger immédiatement les deux afficheurs non JSON ### 1.1 Fenêtre HTTP JSON-RPC - [ ] Remplacer le `@andypf/json-viewer` du bloc **Résultat** par un `