# Carte des crates ## 1. Inventaire | Crate | Type | Responsabilité principale | État documentaire | |------------------------------|------------------------|--------------------------------------------------------------------|------------------------------------------| | `ks-core` | bibliothèque | erreurs, résultat et identité de module partagés | README/TODO/USAGE/CHANGELOG présents | | `ks-config` | bibliothèque | configuration JSON, environnement, validation et profils | migration/restructuration en `0.5.1` | | `ks-lib` | bibliothèque | modèles, décodeurs, exécuteurs et matérialisateurs consolidés | README/TODO/USAGE/CHANGELOG présents | | `ks-logging` | bibliothèque | initialisation du logging et du tracing | README/TODO/USAGE/CHANGELOG présents | | `ks-program-ids` | bibliothèque | registre des programmes et comptes Solana connus | README/TODO/USAGE/CHANGELOG présents | | `ks-pipeline` | bibliothèque | backfill, extraction, replay, stateful, préflight et orchestration | README/TODO/USAGE/CHANGELOG présents | | `ks-pipeline-demo-scenarios` | bibliothèque + binaire | scénarios Devnet réutilisables et CLI | nom `ks-*` actif ; audit `0.5.4` | | `ks-onchain-transport` | bibliothèque | transports RPC HTTP/WebSocket et pools d’endpoints | README/TODO/USAGE/CHANGELOG présents | | `ks-store` | bibliothèque | contrats de stockage et adaptateur PostgreSQL | nom `ks-*` actif ; normalisation `0.5.3` | | `ks-wallet` | bibliothèque | wallet temporaire et frontière de signataire | nom `ks-*` actif ; refonte `0.5.2` | | `kb-app-demo-desktop` | bibliothèque + binaire | application de démonstration Tauri | documentée ; réconciliation en `0.5.4` | La table décrit les noms physiques actifs depuis `0.5.1-pre.002`. La migration a renommé les dix crates généralistes en `ks-core`, `ks-config`, `ks-lib`, `ks-logging`, `ks-program-ids`, `ks-pipeline`, `ks-pipeline-demo-scenarios`, `ks-onchain-transport`, `ks-store` et `ks-wallet`. `kb-app-demo-desktop` conserve son nom parce qu’il appartient au domaine applicatif Bot. Voir [`../decisions/KHADHROONY_SOLANA_NAMESPACE_POLICY.md`](../decisions/KHADHROONY_SOLANA_NAMESPACE_POLICY.md). ## 2. Consolidations principales depuis bot2 La migration a regroupé de nombreuses anciennes crates dans des frontières plus larges : - les modèles et APIs de décodage, matérialisation et exécution ont rejoint `ks-lib` ; - les implémentations de stockage core et PostgreSQL ont rejoint `ks-store` ; - les responsabilités de pipeline ont été réunies dans `ks-pipeline` ; - les transports Solana sont réunis dans `ks-onchain-transport` ; - l’application et sa bibliothèque sont réunies dans `kb-app-demo-desktop` ; - les scénarios réutilisables ont été extraits dans `ks-pipeline-demo-scenarios`. Cette carte n’est pas une table de compatibilité exhaustive des anciennes crates. Les correspondances historiques détaillées seront synthétisées dans la documentation de migration et l’audit d’alignement. ## 3. Crates mixtes ### 3.1 `ks-pipeline-demo-scenarios` - bibliothèque Rust : `ks_pipeline_demo_scenarios` ; - binaire : `ks-pipeline-demo-scenarios-cli` ; - `autobins = false` évite une cible implicite concurrente. ### 3.2 `kb-app-demo-desktop` - bibliothèque Rust : `kb_app_demo_desktop_lib` ; - binaire : `kb-app-demo-desktop` ; - le package reste volontairement unique. ## 4. Relations documentaires Chaque crate dispose de `README.md`, `TODO.md`, `USAGE.md` et `CHANGELOG.md`. Les documents transversaux présents dans `docs/architecture/` évitent de répéter l’architecture complète dans chaque README.