v0.3.10-pre.008

This commit is contained in:
2026-09-08 06:43:02 +02:00
parent ab87fd23cd
commit 510adcb49b
21 changed files with 790 additions and 195 deletions

View File

@@ -1,5 +1,5 @@
<!-- file: docs/architecture/003-COMPONENT_CONTRACTS.md -->
<!-- version: 15 -->
<!-- version: 16 -->
# Contrats initiaux des composants KSP
@@ -137,24 +137,24 @@ La chaîne durable est :
```text
D1 RAW
-> D2 CORE
-> D3 DECODE
-> D4 SPECIALIZED
-> D2 STRUCTURAL
-> D3 DECODED
-> D4 DOMAIN
```
### RAW
Acquisition replayable + provenance, sans décodage Program.
### CORE
### STRUCTURAL
Normalisation générique Solana, sans décodage Program.
### DECODE
### DECODED
Interprétation Program/protocole puis matérialisation générique/journal durable.
### SPECIALIZED
### DOMAIN
Projections queryables de domaine : token, metadata, pools, trades, OHLC, routes, etc.
@@ -166,7 +166,7 @@ La première Store release est RAW-only ; les couches suivantes sont ajoutées q
## Materializer
`ksp-materializer-api`/`ksp-materializer-lib` sont introduits avec le premier besoin DECODE réel, pas avant.
`ksp-materializer-api`/`ksp-materializer-lib` sont introduits avec le premier besoin DECODED réel, pas avant.
Program et Materializer restent indépendants du backend Store ; les composants de composition convertissent leurs outputs vers les DTO persistants.
@@ -174,9 +174,9 @@ Program et Materializer restent indépendants du backend Store ; les composants
`ksp-worker-api` est la lifecycle API des services continus.
RAW et CORE peuvent recevoir leurs workers à la fin de leur couche respective.
RAW et STRUCTURAL peuvent recevoir leurs workers à la fin de leur couche respective.
Les workers DECODE/SPECIALIZED sont introduits avec les groupes Program réels, afin de ne pas créer une orchestration générique vide avant les processors.
Les workers DECODED/DOMAIN sont introduits avec les groupes Program réels, afin de ne pas créer une orchestration générique vide avant les processors.
## Jobs
@@ -184,7 +184,7 @@ Les workers DECODE/SPECIALIZED sont introduits avec les groupes Program réels,
Le premier job concret est `ksp-job-backfill-lib`. Il couvre un backfill historique `RawTransaction` : quatre scopes bornés, découverte/hydratation Transport observée, conversion RAW v1, persistance atomique par `ksp-store-lib`, concurrence bornée, frontier/checkpoint contigus caller-owned, annulation coopérative et snapshots complets sûrs. Il ne dépend ni de Config, ni d'un backend Store concret, ni d'un Worker.
Les jobs de replay suivants pourront suivre les frontières durables ouvertes : RAW -> CORE, CORE -> DECODE, DECODE -> SPECIALIZED. Ils ne sont pas forcés d'adopter le contrat métier du backfill RAW ; seuls les contrats vraiment communs appartiennent à `ksp-job-api`.
Les jobs de replay suivants pourront suivre les frontières durables ouvertes : RAW -> STRUCTURAL, STRUCTURAL -> DECODED, DECODED -> DOMAIN. Ils ne sont pas forcés d'adopter le contrat métier du backfill RAW ; seuls les contrats vraiment communs appartiennent à `ksp-job-api`.
Aucune `ksp-job-control-lib` n'est créée sans duplication concrète.
@@ -206,7 +206,7 @@ ksp-app-wallet-desk
ksp-app-solprices-desk
ksp-app-backfill-desk
ksp-app-store-desk
CORE tooling
STRUCTURAL tooling
ksp-app-market-desk
```
@@ -218,7 +218,7 @@ Une application globale reste future.
## Progression verticale Program
À partir de DECODE :
À partir de DECODED :
```text
wire -> decode -> materialize -> specialized -> prepare -> policy -> execute -> scenario