v0.3.9-pre.006-fix.001

This commit is contained in:
2026-09-05 02:24:47 +02:00
parent e6c2649410
commit 116eabba7d
4 changed files with 965 additions and 828 deletions

View File

@@ -0,0 +1,135 @@
<!-- file: deltas/0.3.9/pre.006-fix.001.md -->
<!-- version: 1 -->
# Delta `0.3.9-pre.006-fix.001`
## 1. Objet
Corriger la synthèse architecturale RAW de `pre.006` sans modifier le runtime.
Le document `docs/architecture/011-RAW_TRANSACTION_ACQUISITION.md` était fonctionnellement riche mais conservait la forme de deux audits chronologiques A/B auxquels une synthèse avait été ajoutée. Cette structure masquait aussi la séparation stricte attendue entre les deux producteurs de `RawTransaction`.
Le correctif réécrit intégralement l'owner comme une synthèse unique centrée sur Store / `RawTransaction`.
## 2. Architecture corrigée
Le modèle durable devient explicitement :
```text
sources/protocoles/providers
-> capabilities d'acquisition
-> Job Backfill OU Worker Ingest selon l'intention
-> normalisation RAW source-neutral
-> Store
-> RawTransaction + observations/provenance
```
Les deux producteurs sont indépendants :
```text
Job Backfill
= historique demandé
= paramètres métier explicites
= campagne bornée et terminable
Worker Raw Transaction Ingest
= acquisition continue depuis start
= aucun paramètre métier de campagne au start
= stop pour terminer normalement
```
Aucun edge, appel, délégation, checkpoint partagé ou coordination lifecycle `Job <-> Worker` n'est admis.
## 3. Protocoles et capabilities
Le correctif supprime toute lecture implicite :
```text
HTTP = Backfill
WS/gRPC = Worker
```
La règle correcte est :
```text
HTTP / WS / gRPC / archive / EARLY
= moyens d'acquisition
= utilisables par le producer dont l'intention correspond
```
Exemples :
- HTTP `getTransaction` sert au Worker pour hydrater un signal live et au Job pour hydrater une signature historique ;
- HTTP `getBlock` peut servir au Worker en live polling/repair de continuité et au Job pour une plage historique ;
- Yellowstone `from_slot` peut réparer la continuité d'un Worker depuis son frontier actif ou alimenter un Job de replay historique borné ;
- une API archive/provider history appartient au Job lorsqu'elle répond à une campagne historique.
## 4. Frontière de continuité Worker
Le Worker peut réparer uniquement les pertes de continuité liées à son acquisition active :
```text
frontier live
-> gap détecté
-> replay/hydration/block recovery
-> frontier restauré
-> live continue
```
Il ne reçoit jamais une requête arbitraire « remonte avant telle date/slot/signature ». Cette responsabilité appartient au Job Backfill.
## 5. Normalisation commune
`ksp-raw-transaction-lib` reste retenu comme lower-layer source-neutral commun afin d'éviter la duplication du canonicalizer RAW v1.
Cette dépendance inférieure ne crée aucune relation fonctionnelle entre Job et Worker :
```text
Job ------> raw common ------> Store
Worker ---> raw common ------> Store
aucun edge Job <-> Worker
```
## 6. Données d'audit conservées
La réécriture conserve et réorganise :
- la matrice exhaustive des méthodes standard HTTP/WS/Yellowstone ;
- l'applicabilité Worker / Job par méthode ;
- les providers et infrastructures connus ;
- les réseaux ;
- les prix/tiers datés au 4 septembre 2026 ;
- les statuts `PROUVÉ`, `TESTABLE`, `NON PROUVÉ`, `BLOQUÉ TIER`, `À REVALIDER` ;
- les sources EARLY/shreds ;
- la stratégie de preuve Mainnet/Devnet/Testnet/local ;
- les gaps Transport/Config ;
- les handoffs `0.3.10` Worker et `0.3.12` Backfill.
## 7. Version
Correctif strictement documentaire. Conformément aux règles KSP applicables aux fixes documentaires :
```text
workspace.package.version = 0.3.9-pre.6
```
Aucun changement `Cargo.toml` n'est effectué.
## 8. Fichiers
Modifiés :
```text
docs/architecture/011-RAW_TRANSACTION_ACQUISITION.md
docs/plans/030-V0_3_9_WORKER_API_RAW_TRANSACTION_AUDIT_PLAN.md
docs/validation/026-V0_3_9_WORKER_API_RAW_TRANSACTION_AUDIT.md
```
Ajouté :
```text
deltas/0.3.9/pre.006-fix.001.md
```
Aucun fichier Rust, Config, Store, Transport, endpoint ou secret n'est modifié.