v0.3.10-pre.008
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/architecture/002-LAYERS_AND_DEPENDENCIES.md -->
|
||||
<!-- version: 11 -->
|
||||
<!-- version: 12 -->
|
||||
|
||||
# Couches et dépendances KSP
|
||||
|
||||
@@ -26,7 +26,7 @@ Les niveaux architecturaux N1–N4 décrivent les familles de composants du proj
|
||||
### N3 — Données, jobs, workers et processing
|
||||
|
||||
- `ksp-store-api` / `ksp-store-lib` ;
|
||||
- `ksp-materializer-api` / implementations lorsque DECODE s'ouvre ;
|
||||
- `ksp-materializer-api` / implementations lorsque DECODED s'ouvre ;
|
||||
- `ksp-job-api`, `ksp-job-backfill-lib` puis les jobs concrets introduits par les couches ;
|
||||
- `ksp-worker-api` et workers ;
|
||||
- processors/pipelines spécialisés réellement réutilisés.
|
||||
@@ -45,32 +45,32 @@ La chaîne de données canonique est :
|
||||
|
||||
```text
|
||||
D1 RAW
|
||||
-> D2 CORE
|
||||
-> D3 DECODE
|
||||
-> D4 SPECIALIZED
|
||||
-> D2 STRUCTURAL
|
||||
-> D3 DECODED
|
||||
-> D4 DOMAIN
|
||||
```
|
||||
|
||||
Aliases fonctionnels :
|
||||
|
||||
```text
|
||||
RAW -> CORE -> DECODE -> SPECIALIZED
|
||||
RAW -> STRUCTURAL -> DECODED -> DOMAIN
|
||||
```
|
||||
|
||||
RAW et CORE sont indépendants du décodage Program.
|
||||
RAW et STRUCTURAL sont indépendants du décodage Program.
|
||||
|
||||
CORE est une normalisation générique de Solana : structure des blocs, transactions, messages, comptes, instructions/CPI brutes, logs/meta et relations fondamentales.
|
||||
STRUCTURAL est une normalisation générique de Solana : structure des blocs, transactions, messages, comptes, instructions/CPI brutes, logs/meta et relations fondamentales.
|
||||
|
||||
Le premier decoder Program intervient seulement à `CORE -> DECODE`.
|
||||
Le premier decoder Program intervient seulement à `STRUCTURAL -> DECODED`.
|
||||
|
||||
## Progression par couche
|
||||
|
||||
### RAW et CORE
|
||||
### RAW et STRUCTURAL
|
||||
|
||||
Ces deux couches sont construites horizontalement.
|
||||
|
||||
À la fin de chaque couche, KSP ajoute les composants d'exploitation nécessaires : persistence, replay/backfill, worker/service et application de contrôle lorsque utiles.
|
||||
|
||||
### DECODE et SPECIALIZED
|
||||
### DECODED et DOMAIN
|
||||
|
||||
À partir du décodage, KSP progresse verticalement par groupe fonctionnel :
|
||||
|
||||
@@ -134,7 +134,7 @@ Les applications Tauri restent minces :
|
||||
- instrumentation frontend ;
|
||||
- aucun déplacement de logique de transport, Wallet, Config, Program, Store ou Materializer dans Tauri.
|
||||
|
||||
Des applications spécialisées sont ajoutées au fur et à mesure pour valider les couches : Config Desk, Wallet Desk, `ksp-app-solprices-desk`, `ksp-app-backfill-desk`, `ksp-app-store-desk`, CORE tooling puis Market Desk. `ksp-app-solprices-desk` reste une HID mince : elle consomme l’inventaire, les observations, les états et les opérations génériques de `ksp-offchain-transport-lib` sans connaître les providers, leurs endpoints, leurs credentials ni leurs limites. `ksp-app-backfill-desk` compose Config, Transport HTTP, Store et `ksp-job-backfill-lib` sans absorber découverte, retry/rate-limit, persistance ou checkpoint ; son frontend ne reçoit que des DTOs sûrs et le checkpoint de reprise reste Rust-only. `ksp-app-store-desk` compose Config, Logging et `ksp-store-lib` pour une inspection RAW read-only : il n'accède ni au backend physique ni au SQL et sépare la pagination random-access de l'interface de la pagination cursor/keyset réservée aux consumers machine.
|
||||
Des applications spécialisées sont ajoutées au fur et à mesure pour valider les couches : Config Desk, Wallet Desk, `ksp-app-solprices-desk`, `ksp-app-backfill-desk`, `ksp-app-store-desk`, STRUCTURAL tooling puis Market Desk. `ksp-app-solprices-desk` reste une HID mince : elle consomme l’inventaire, les observations, les états et les opérations génériques de `ksp-offchain-transport-lib` sans connaître les providers, leurs endpoints, leurs credentials ni leurs limites. `ksp-app-backfill-desk` compose Config, Transport HTTP, Store et `ksp-job-backfill-lib` sans absorber découverte, retry/rate-limit, persistance ou checkpoint ; son frontend ne reçoit que des DTOs sûrs et le checkpoint de reprise reste Rust-only. `ksp-app-store-desk` compose Config, Logging et `ksp-store-lib` pour une inspection RAW read-only : il n'accède ni au backend physique ni au SQL et sépare la pagination random-access de l'interface de la pagination cursor/keyset réservée aux consumers machine.
|
||||
|
||||
## Workers et jobs
|
||||
|
||||
@@ -171,7 +171,7 @@ ksp-execution-policy-api
|
||||
|
||||
## Groupes Program prioritaires
|
||||
|
||||
Après RAW/CORE :
|
||||
Après RAW/STRUCTURAL :
|
||||
|
||||
```text
|
||||
Solana Core Programs
|
||||
@@ -198,4 +198,4 @@ Un satellite nécessaire à un protocole reste dans son groupe : Pump fee avec P
|
||||
- split éventuel d'une API Interface séparée uniquement si un vrai besoin apparaît ;
|
||||
- contrats Rust exacts de Program/Materializer/Store ;
|
||||
- mécanisme IPC du premier manager de worker autonome ;
|
||||
- granularité future des workers DECODE/SPECIALIZED par groupe.
|
||||
- granularité future des workers DECODED/DOMAIN par groupe.
|
||||
|
||||
Reference in New Issue
Block a user