Files
khadhroony-bot3/docs/validation/V0_5_1_FOUNDATION_VALIDATION_REPORT.md
2026-08-10 11:44:47 +02:00

5.6 KiB
Raw Blame History

Validation de fondation — clôture 0.5.1

Périmètre

La version 0.5.1 ferme la première restructuration de fondation décidée pendant 0.5.0 : namespaces Khadhroony Solana, configuration composable, séparation source/runtime/public et réduction de la surface TS-RS aux applications.

Elle ne modifie volontairement ni le préfixe SQL historique kb_sol_*, ni la structure fonctionnelle profonde de ks-wallet, ni la couverture protocolaire Solana/DEX.

Namespace et ownership

La cible validée est :

  • dix bibliothèques Solana généralistes sous ks-* / ks_* ;
  • kb-app-demo-desktop conservé dans le domaine applicatif Bot ;
  • identités techniques actives sous ks-lib-decoder.*, ks-lib-executor.* et ks-lib-materializer.* ;
  • variables Solana sous KS_*, avec KS_SECRET_*, KS_PUBLIC_* et internes ;
  • KB_* réservé aux contrats réellement possédés par une application Bot.

Le workspace, le dépôt et le répertoire racine restent volontairement nommés khadhroony-bot3.

Configuration composable

La configuration source est répartie entre :

config/
├── kb-app-demo-desktop.default.config.json
├── logging.config.json
├── transport.config.json
├── listeners.config.json
├── store.config.json
├── wallet.config.json
├── execution.config.json
├── exemples/
└── schemas/

Les documents spécialisés possèdent leurs defaults et profils indépendants. La composition dun binaire sélectionne les documents et profils quil consomme sans obliger ks-config à connaître la structure métier de lapplication.

logs_directory et wallets_directory sont globaux à leurs domaines respectifs. Les autorisations denvoi appartiennent à la politique dexécution. Les defaults de reconnexion WebSocket appartiennent au transport et peuvent être surchargés par endpoint.

Frontières de sensibilité

La classification appliquée est :

Secret > Internal > Public

Elle sapplique aussi aux valeurs composées après substitution des placeholders denvironnement.

Les contrats source/runtime susceptibles de contenir des valeurs résolues sensibles restent backend-only et ne dérivent ni serde::Serialize ni Debug par défaut.

Les snapshots de transport exposables ne transportent plus les URLs résolues. Les erreurs HTTP/WS et de validation ne recopient plus les valeurs rejetées, les corps HTTP distants ni les messages JSON-RPC distants susceptibles de réinjecter un credential.

Tauri et TS-RS

ks-config et ks-lib ne produisent plus de bindings TS-RS.

Les contrats TypeScript/Tauri appartiennent à lapplication consommatrice. kb-app-demo-desktop construit explicitement ses DTO publics et diagnostiques et ne retourne plus directement les contrats runtime ks-*.

Les canaris desktop et transport vérifient notamment :

  • absence dURL RPC/WS résolue dans les payloads ;
  • absence de DSN PostgreSQL ;
  • absence de chemin wallet/SQLite dans les payloads fonctionnels ;
  • absence de secret canari dans les projections publiques/diagnostiques ;
  • Debug sanitisé pour les clients/sessions transport.

Validation opérateur du 10 août 2026

Après 0.5.1-pre.008-delta-fix-003, lopérateur a validé :

  • cargo fmt --all ;
  • cargo check --workspace ;
  • cargo clippy --all-targets sans warning ;
  • python3 scripts/audit_rust_workspace_rules.py avec audit Rust général propre, export completeness à zéro candidat et audit Khadhroony propre ;
  • cargo test --workspace ;
  • cargo tauri dev -c kb-app-demo-desktop/tauri.conf.json avec chargement de la composition et initialisation des transports/store.

Les principales cibles unitaires observées après le dernier correctif comprennent :

  • kb-app-demo-desktop : 165 tests ;
  • ks-config : 31 tests, plus 2 tests dAPI externe ;
  • ks-core : 2 tests ;
  • ks-lib : 606 tests, plus 9 tests dintégration/API externe ;
  • ks-logging : 25 tests ;
  • ks-onchain-transport : 124 tests ;
  • ks-pipeline : 109 tests, plus 3 tests dAPI externe Metadata ;
  • ks-pipeline-demo-scenarios : 105 tests bibliothèque, 1 test CLI et 1 test dAPI externe ;
  • ks-program-ids : 6 tests ;
  • ks-store : 84 tests ;
  • ks-wallet : 6 tests.

Validation finale de pre.009

0.5.1-pre.009 ne doit introduire aucun nouveau comportement fonctionnel. Après application du delta de clôture, la campagne standard doit être rejouée :

cargo fmt --all
cargo check --workspace
cargo clippy --all-targets
python3 scripts/audit_rust_workspace_rules.py
cargo test --workspace

Avant publication finale de 0.5.1, le build desktop de release est recommandé afin de vérifier également TypeScript/Vite par la chaîne Tauri :

cargo tauri build -c kb-app-demo-desktop/tauri.conf.json

Ce rapport ne prétend pas que ce build de release a déjà été exécuté pour 0.5.1.

Reports

  • restructuration fonctionnelle profonde du wallet : 0.5.2 ;
  • migration kb_sol_* vers k_sol_* et normalisation temporelle/provenance : 0.5.3 ;
  • centralisation finale des scénarios et audit des exécuteurs : 0.5.4 ;
  • nouvelle qualification réseau ElGamal uniquement si une possibilité technique nouvelle apparaît.

Traçabilité

Le plan temporaire 0.5.1 et le prompt de session 030 sont archivés sous olddocs/archivekbot3/. Les décisions durables restent dans le ROADMAP, les guides, les règles et la politique de namespace active.

Statut

Fondation fonctionnelle 0.5.1 prête pour la validation finale de la prerelease de clôture.