From 626385f9b631c472fea00cf624b7f473e746ae2d Mon Sep 17 00:00:00 2001 From: SinuS Von SifriduS Date: Mon, 27 Jul 2026 10:02:26 +0200 Subject: [PATCH] v0.1.0-pre.059 --- KHADHROONY_BOT3_MIGRATION_CLOSURE_TODO.md | 43 +- RULES_SPECIFIC_KHADHROONY.md | 1 + .../frontend/demo_core_extraction.html | 29 +- .../frontend/demo_decode_replay.html | 2 +- .../src/demo_core_extraction.rs | 66 ++- kb-app-demo-desktop/src/demo_sql_common.rs | 55 +-- kb-app-demo-desktop/src/lib.rs | 8 +- kb-app-demo-desktop/src/splash.rs | 4 +- kb-app-demo-desktop/src/tauri.rs | 400 ++++-------------- ...MIGRATION_CONTINUATION_PROMPT_REORDERED.md | 19 + 10 files changed, 219 insertions(+), 408 deletions(-) diff --git a/KHADHROONY_BOT3_MIGRATION_CLOSURE_TODO.md b/KHADHROONY_BOT3_MIGRATION_CLOSURE_TODO.md index f755ea0..a99a571 100644 --- a/KHADHROONY_BOT3_MIGRATION_CLOSURE_TODO.md +++ b/KHADHROONY_BOT3_MIGRATION_CLOSURE_TODO.md @@ -1,5 +1,5 @@ - + # Checklist détaillée de clôture de la migration `khadhroony-bot3` @@ -109,18 +109,19 @@ ### 2.4 Journaux généraux et viewers -- [ ] Vérifier Backfill HTTP. -- [ ] Vérifier Extraction core. +- [x] Vérifier Backfill HTTP en runtime. +- [ ] Vérifier Extraction core en runtime après correction du gabarit pleine largeur. - [ ] Vérifier Exécution Solana Core. - [ ] Vérifier Exécution SPL. - [ ] Vérifier Decode replay. -- [ ] Vérifier HTTP. -- [ ] Vérifier WebSocket. -- [ ] Placer les paramètres dans les accordéons. -- [ ] Placer les journaux et résultats globaux sous les accordéons. +- [x] Vérifier HTTP en runtime. +- [x] Vérifier WebSocket en runtime. +- [x] Placer les paramètres d’Extraction core dans les accordéons. +- [x] Placer les journaux et résultats globaux d’Extraction core sous les accordéons. - [ ] Réserver le viewer JSON au JSON structuré. - [ ] Utiliser des textareas pour texte brut, logs et diagnostics concaténés. -- [ ] Fixer la hauteur de tous les viewers JSON. +- [x] Fixer la hauteur du viewer JSON d’Extraction core. +- [ ] Étendre la vérification des journaux/viewers aux fenêtres Exécution Solana Core, Exécution SPL et Decode replay. ### 2.5 Fenêtres SQL @@ -170,11 +171,27 @@ ## 5.1 Wrappers Tauri - [x] Déplacer la logique complète de `splash_frontend_ready` dans `splash.rs` et conserver un wrapper privé mince dans `tauri.rs`. -- [ ] Inventorier toutes les fonctions `#[tauri::command]` de `tauri.rs`. -- [ ] Déplacer progressivement toute logique métier restante dans son module fonctionnel `pub(crate)`. -- [ ] Vérifier que chaque wrapper Tauri ne fait que l’adaptation des arguments et la délégation. +- [x] Inventorier toutes les fonctions `#[tauri::command]` de `tauri.rs` et mesurer les blocs de 20 lignes ou plus. +- [x] Déplacer options, exécution et annulation d’Extraction core dans `demo_core_extraction.rs`. +- [x] Mutualiser les ouvertures de fenêtres via un helper privé strictement Tauri dans `tauri.rs`. +- [ ] Déplacer progressivement la logique Decode replay, Backfill, SQL replay et Exécution hors de `tauri.rs`. +- [x] Vérifier les wrappers Extraction core et Splash. +- [ ] Vérifier les autres wrappers Tauri après leur migration progressive. - [ ] Ajouter ou conserver les tests unitaires dans les modules fonctionnels, pas dans les wrappers. +## 5.2 Câblage des scénarios Devnet + +- [x] Confirmer que `kb-app-demo-desktop` appelle `kb-pipeline-demo-scenarios` pour System transfer. +- [x] Confirmer le câblage Memo. +- [x] Confirmer le câblage SPL Token classique. +- [x] Confirmer le câblage SPL ATA. +- [x] Confirmer le câblage SPL Token-2022. +- [x] Confirmer que ces workflows ne sont pas dupliqués dans `kb-pipeline`. +- [ ] Vérifier que chaque option HTML correspond à un scénario backend accessible. +- [ ] Vérifier simulation, envoi, progression, résumé et diagnostics en runtime Devnet. +- [ ] Vérifier le replay post-exécution et la matérialisation pour chaque famille. +- [ ] Raccorder ou documenter le workflow `execute_devnet_spl_token_lifecycle`, présent dans la crate mais non exposé par l’application desktop. + ## 6. Cycle de vie WebSocket - [x] Vérifier qu’aucun pool WebSocket n’est créé au démarrage. @@ -324,10 +341,10 @@ - [ ] `cargo check -p kb-lib`. - [ ] `cargo test -p kb-lib`. - [x] `cargo check -p kb-app-demo-desktop`. -- [ ] `cargo test -p kb-app-demo-desktop` (112/113 passaient ; contrat d’ordre de décodeurs corrigé, relance requise). +- [x] `cargo test -p kb-app-demo-desktop` : 115 tests réussis. - [x] `cargo check --workspace`. - [ ] `cargo test --workspace`. -- [ ] `python3 scripts/audit_rust_workspace_rules.py`. +- [x] `python3 scripts/audit_rust_workspace_rules.py` après `pre.058-fix-002`. - [ ] `cargo tauri dev -c kb-app-demo-desktop/tauri.conf.json`. - [ ] `cargo clippy --all-targets` en dernier. diff --git a/RULES_SPECIFIC_KHADHROONY.md b/RULES_SPECIFIC_KHADHROONY.md index d3ffc81..3864fed 100644 --- a/RULES_SPECIFIC_KHADHROONY.md +++ b/RULES_SPECIFIC_KHADHROONY.md @@ -29,6 +29,7 @@ Toute divergence avec une règle générale doit être explicitement documentée - Corriger le type Rust/TS-rs source puis régénérer les bindings ; ne pas considérer une modification manuelle isolée d’un fichier généré comme un correctif durable. - `kb-app-demo-desktop/src/tauri.rs` contient les attributs `#[tauri::command]`, l’enregistrement des commandes et des wrappers privés minces ; la logique complète doit vivre dans le module fonctionnel correspondant sous une fonction `pub(crate)` testable. - Un wrapper Tauri ne doit effectuer que l’adaptation des handles/states/arguments, l’appel de la fonction de module et le retour du résultat ; toute validation métier, orchestration ou construction de payload doit rester hors de `tauri.rs`. +- Les helpers privés de `tauri.rs` sont autorisés lorsqu’ils mutualisent exclusivement une adaptation Tauri, par exemple l’ouverture, l’affichage, le focus ou l’émission vers une fenêtre ; ils ne doivent contenir aucune logique métier, requête SQL ou orchestration de pipeline. ## Règles d'architecture diff --git a/kb-app-demo-desktop/frontend/demo_core_extraction.html b/kb-app-demo-desktop/frontend/demo_core_extraction.html index ebf4ed5..46e1dc0 100644 --- a/kb-app-demo-desktop/frontend/demo_core_extraction.html +++ b/kb-app-demo-desktop/frontend/demo_core_extraction.html @@ -1,5 +1,5 @@ - + @@ -34,14 +34,16 @@
-
-
-
+
+
+

Extraction transactionnelle canonical vers core

Chaque transaction canonique sélectionnée est validée, normalisée dans les tables core et enregistrée dans le ledger de traitement au sein d'une seule transaction PostgreSQL.

+
+

@@ -127,20 +129,27 @@

-
+
+
+

Journal et résultat

-
-

Journal

+
+
+

Journal

+ +
+
+

Résumé JSON

+ +
- -

Résumé JSON

-
+