Files
khadhroony-bot3/ks-config
2026-08-10 02:44:24 +02:00
..
2026-08-10 02:44:24 +02:00
2026-08-10 02:44:24 +02:00
2026-08-09 19:34:08 +02:00
2026-08-10 02:44:24 +02:00
2026-08-10 02:44:24 +02:00
2026-08-10 02:44:24 +02:00
2026-08-10 02:44:24 +02:00

ks-config

ks-config fournit les contrats de configuration généralistes Khadhroony Solana, les chargeurs de documents spécialisés et la résolution des compositions utilisées par les binaires.

Responsabilités

  • charger l'environnement du workspace et résoudre les placeholders ${KS_*} / ${KB_*} ;
  • valider les documents transport, listeners et composition contre leurs schémas sous config/schemas/ ;
  • fournir les types partagés d'endpoints, listeners et profils runtime ;
  • résoudre les références d'une composition vers des profils transport/listeners ;
  • reconstruire temporairement AppConfig/ProfileConfig pour les consommateurs existants ;
  • rester indépendant de la liste des applications et workers futurs.

Composition

Le desktop possède config/kb-app-demo-desktop.default.config.json. Le CLI des scénarios possède config/ks-pipeline-demo-scenarios.default.config.json.

Une composition choisit :

  • les documents partagés à charger ;
  • le profil logging ;
  • le profil transport ;
  • le profil listeners ;
  • temporairement les sections encore non séparées.

Un futur worker pourra donc ajouter son propre <binary>.default.config.json sans créer une branche spécifique dans ks-config.

Documents spécialisés actuels

  • config/transport.config.json / config/schemas/transport.config.schema.json ;
  • config/listeners.config.json / config/schemas/listeners.config.schema.json ;
  • config/logging.config.json reste possédé par ks-logging ;
  • config/schemas/resolved.app.config.schema.json décrit uniquement le contrat runtime transitoire.

Les anciens config/app.config.json et config/example.app.config.json ne sont plus des fichiers runtime.

API publique principale

  • read_composed_app_config_with_environment ;
  • parse_composition_json, composition_profile, active_composition_profile ;
  • read_transport_json_file_with_environment, transport_profile ;
  • read_listeners_json_file_with_environment, listeners_profile ;
  • compose_app_config ;
  • load_workspace_environment, resolve_environment_placeholders ;
  • AppConfig, ProfileConfig pendant la phase de compatibilité.

Frontières

ks-logging dépend de ks-config pour les helpers d'environnement, mais ks-config ne possède aucun type logging runtime.

ks-onchain-transport peut consommer directement TransportProfileConfig. Un worker n'a donc pas besoin d'un profil applicatif complet pour construire ses pools réseau.

Les sections database/data, wallet, execution et demo restent transitoires dans la composition jusqu'au split suivant.

Documents