v0.0.3-pre.004

This commit is contained in:
2026-08-14 09:51:30 +02:00
parent 544e0351b8
commit d33911f925
12 changed files with 776 additions and 67 deletions

View File

@@ -1,5 +1,5 @@
<!-- file: docs/architecture/005-DEPENDENCY_GRAPH.md -->
<!-- version: 1 -->
<!-- version: 2 -->
# Graphe de dépendances KSP
@@ -87,6 +87,23 @@ ksp-interface-lib -> ksp-core-lib
---
# Propriété des codecs wire
Pour les surfaces wire officielles KSP :
```text
ksp-interface-lib
-> codecs wire nécessaires (borsh/wincode/...)
```
`ksp-program-lib` n'ajoute pas directement une autre génération de codec pour les mêmes surfaces.
Une extension Program externe peut temporairement posséder son wire lorsqu'il n'est pas encore officiellement intégré à `ksp-interface-lib`.
Le critère d'adoption d'une crate d'interface externe inclut la compatibilité de son graphe de dépendances avec le stack KSP actuel.
---
# Graphe Program
```text
@@ -102,7 +119,7 @@ ksp-program-lib
## Frontière de `ksp-program-api`
`ksp-program-api` doit porter les contrats publics nécessaires à une implémentation externe de decoder/executor.
`ksp-program-api` doit porter les contrats publics nécessaires à une implémentation externe de decoder/execution preparation.
Il est également le propriétaire candidat du **contrat d'opération préparée** produit par la sémantique programme et consommé par la couche d'exécution.
@@ -131,10 +148,26 @@ ksp-program-lib -X-> ksp-materializer-lib
ksp-program-lib -X-> ksp-execution-lib
```
Le decoder/executor de programme reste donc testable sans réseau, wallet ou base de données.
Le decoder/execution preparation de programme reste donc testable sans réseau, wallet ou base de données.
---
## Implémentations Program externes
Une implémentation externe peut dépendre de :
```text
ksp-program-<name>-lib
-> ksp-program-api
-> ksp-core-lib
-> ksp-interface-lib # lorsque le wire officiel nécessaire existe
```
Elle ne dépend pas obligatoirement de `ksp-program-lib`.
Le runtime peut composer registry officiel + registry/implémentations externes derrière `ksp-program-api`.
# Graphe Execution / Policy
`ksp-execution-policy-api` et `ksp-execution-lib` sont retenus comme composants.