3.3 KiB
Delta 0.0.3-pre.001-fix.004
Base requise
0.0.3-pre.001-fix.003.
Objectif
Formaliser les dernières décisions de nomenclature et d'extensibilité :
- utiliser
ksp-<domain>-apiplutôt queksp-<domain>-api-lib; - séparer contrats publics et implémentations officielles ;
- séparer strictement APIs workers et jobs ;
- retenir
ksp-job-backfillpour l'acquisition historique à la demande ; - normaliser les notifications de données indépendamment du producteur ;
- confirmer PostgreSQL comme implémentation de référence dans
ksp-store-lib; - confirmer l'absence de pipeline/scenario monolithique ;
- confirmer Trading Intelligence avant la couche/application de trading opérationnelle.
Version Cargo
Aucune modification de Cargo.toml.
Ce correctif est exclusivement documentaire. workspace.package.version reste :
0.0.3-pre.1
Fichiers ajoutés
deltas/0.0.3/pre.001-fix.004.md
Fichiers modifiés
README.mdROADMAP.mddocs/architecture/003-COMPONENT_CONTRACTS.mddocs/rules/RULES_KSP.mddocs/IDEAS.mddocs/plans/001-V0_0_3_PLAN.mdprompts/001-V0_1_X_START_PROMPT.md
Fichiers supprimés
Aucun.
Décisions ajoutées
Nomenclature des APIs
Les crates de contrats publics extensibles utilisent :
ksp-<domain>-api
Elles restent techniquement des bibliothèques Rust mais n'utilisent pas le suffixe -lib, réservé par défaut aux bibliothèques d'implémentation.
Premiers couples :
ksp-program-api / ksp-program-lib
ksp-materializer-api / ksp-materializer-lib
ksp-store-api / ksp-store-lib
Un unique ksp-api-lib monolithique est rejeté.
Store
ksp-store-api porte les contrats backend-agnostic.
ksp-store-lib contient PostgreSQL comme implémentation officielle de référence.
Workers et jobs
Les contrats communs sont strictement séparés :
ksp-worker-api
ksp-job-api
Aucune API universelle worker+job n'est prévue.
ksp-worker-control-lib reste candidat pour l'implémentation de contrôle des workers uniquement.
ksp-job-backfill est retenu comme candidat du backfill historique à la demande.
D'autres jobs pourront apparaître pour metadata, quotes ou autres travaux ponctuels.
Notifications de données
Une notification de donnée décrit la donnée disponible, pas son producteur.
Le même type de donnée utilise le même contrat de notification qu'il provienne d'un worker, d'un job ou d'une autre source.
ksp-store-api est le propriétaire candidat de ces contrats lorsque la notification concerne une donnée persistée.
Le contrat de notification reste séparé du mécanisme de transport.
Pipelines
Pas de ksp-pipeline-lib monolithique. Les pipelines sont introduits séparément à la demande avec un périmètre concret.
Scénarios
Pas de ksp-scenarios-lib monolithique. Les scénarios sont séparés en crates ksp-scenario-<domain>-lib.
Trading
Trading Intelligence est introduit avant la couche/application de trading opérationnelle.
Validations
Correctif documentaire uniquement :
- présence des en-têtes
file:/version:vérifiée lors de la génération ; - aucune commande Cargo requise ;
- aucune modification fonctionnelle ou runtime.