v0.3.10-pre.008
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/architecture/005-DEPENDENCY_GRAPH.md -->
|
||||
<!-- version: 25 -->
|
||||
<!-- version: 26 -->
|
||||
|
||||
# Graphe de dépendances KSP
|
||||
|
||||
@@ -244,9 +244,9 @@ Une petite policy spécifique peut vivre dans une crate scenario/orchestrateur.
|
||||
|
||||
```text
|
||||
D1 RAW
|
||||
-> D2 CORE
|
||||
-> D3 DECODE
|
||||
-> D4 SPECIALIZED
|
||||
-> D2 STRUCTURAL
|
||||
-> D3 DECODED
|
||||
-> D4 DOMAIN
|
||||
```
|
||||
|
||||
### RAW
|
||||
@@ -292,7 +292,7 @@ ksp-store-lib
|
||||
|
||||
Le Job Backfill et le Worker RAW peuvent donc partager exactement la canonicalisation et le wire sans que la common crate possède le runtime, le Transport ou le backend.
|
||||
|
||||
### CORE
|
||||
### STRUCTURAL
|
||||
|
||||
```text
|
||||
D1 RAW
|
||||
@@ -301,23 +301,23 @@ D1 RAW
|
||||
Solana generic normalizer
|
||||
|
|
||||
v
|
||||
D2 CORE
|
||||
D2 STRUCTURAL
|
||||
```
|
||||
|
||||
Le normalizer CORE peut utiliser `ksp-interface-lib` pour des wires Solana génériques.
|
||||
Le normalizer STRUCTURAL peut utiliser `ksp-interface-lib` pour des wires Solana génériques.
|
||||
|
||||
Interdictions :
|
||||
|
||||
```text
|
||||
RAW -> CORE -X-> ksp-program-api
|
||||
RAW -> CORE -X-> ksp-program-lib
|
||||
RAW -> CORE -X-> ksp-materializer-api
|
||||
RAW -> STRUCTURAL -X-> ksp-program-api
|
||||
RAW -> STRUCTURAL -X-> ksp-program-lib
|
||||
RAW -> STRUCTURAL -X-> ksp-materializer-api
|
||||
```
|
||||
|
||||
### DECODE
|
||||
### DECODED
|
||||
|
||||
```text
|
||||
D2 CORE
|
||||
D2 STRUCTURAL
|
||||
|
|
||||
v
|
||||
ksp-program-api implementation
|
||||
@@ -329,19 +329,19 @@ decoded facts
|
||||
ksp-materializer-api implementation
|
||||
|
|
||||
v
|
||||
D3 DECODE / generic journal
|
||||
D3 DECODED / generic journal
|
||||
```
|
||||
|
||||
### SPECIALIZED
|
||||
### DOMAIN
|
||||
|
||||
```text
|
||||
D3 DECODE
|
||||
D3 DECODED
|
||||
|
|
||||
v
|
||||
specialized projector/materializer
|
||||
|
|
||||
v
|
||||
D4 SPECIALIZED
|
||||
D4 DOMAIN
|
||||
```
|
||||
|
||||
## Materialization
|
||||
@@ -386,7 +386,7 @@ ksp-store-postgres-lib -X-> ksp-store-lib
|
||||
worker/job -X-> ksp-store-postgres-lib
|
||||
```
|
||||
|
||||
La première release Store (`0.3.1`) est RAW-only ; les contrats CORE/DECODE/SPECIALIZED sont ajoutés avec leurs couches. Les consumers runtime ordinaires (jobs, workers, apps) utilisent `ksp-store-lib`; ils ne sélectionnent ni n'importent directement `ksp-store-postgres-lib` ou un autre backend.
|
||||
La première release Store (`0.3.1`) est RAW-only ; les contrats STRUCTURAL/DECODED/DOMAIN sont ajoutés avec leurs couches. Les consumers runtime ordinaires (jobs, workers, apps) utilisent `ksp-store-lib`; ils ne sélectionnent ni n'importent directement `ksp-store-postgres-lib` ou un autre backend.
|
||||
|
||||
## Jobs
|
||||
|
||||
@@ -436,7 +436,7 @@ ksp-worker-control-lib
|
||||
|
||||
Le worker RAW Transaction n'est pas défini comme « un worker WebSocket » ou « un worker gRPC ». Il reçoit une ou plusieurs stratégies d'acquisition construites au-dessus des façades KSP réellement disponibles ; celles-ci peuvent être alternatives, complémentaires (discovery + hydration), redondantes entre providers ou spécialisées live/catch-up/gap-repair. La transaction canonique reste identifiée indépendamment de la source et chaque acquisition utile conserve sa propre observation/provenance Store.
|
||||
|
||||
RAW worker puis STRUCTURAL worker sont introduits à la fin de leur couche respective, lorsque persistence/backlog sont disponibles. Le traitement RAW -> CORE borné est porté par un STRUCTURAL job distinct du service continu. Les workers DECODE/SPECIALIZED sont introduits avec les groupes Program concernés plutôt que tous anticipés en bloc.
|
||||
RAW worker puis STRUCTURAL worker sont introduits à la fin de leur couche respective, lorsque persistence/backlog sont disponibles. Le traitement RAW -> STRUCTURAL borné est porté par un STRUCTURAL job distinct du service continu. Les workers DECODED/DOMAIN sont introduits avec les groupes Program concernés plutôt que tous anticipés en bloc.
|
||||
|
||||
## Apps
|
||||
|
||||
@@ -515,7 +515,7 @@ ksp-app-market-desk
|
||||
-> KSP domain/query contracts
|
||||
```
|
||||
|
||||
Elle consomme les projections SPECIALIZED normalisées ; elle ne dépend pas directement des bibliothèques protocole externes.
|
||||
Elle consomme les projections DOMAIN normalisées ; elle ne dépend pas directement des bibliothèques protocole externes.
|
||||
|
||||
## Scenarios
|
||||
|
||||
@@ -536,7 +536,7 @@ L'app demo correspondante reste un adapter UI mince.
|
||||
|
||||
## Progression verticale Program
|
||||
|
||||
À partir de DECODE :
|
||||
À partir de DECODED :
|
||||
|
||||
```text
|
||||
wire
|
||||
|
||||
Reference in New Issue
Block a user