v0.3.9-pre.006-fix.002
This commit is contained in:
51
deltas/0.3.9/pre.006-fix.002.md
Normal file
51
deltas/0.3.9/pre.006-fix.002.md
Normal file
@@ -0,0 +1,51 @@
|
||||
<!-- file: deltas/0.3.9/pre.006-fix.002.md -->
|
||||
<!-- version: 1 -->
|
||||
|
||||
# Delta `0.3.9-pre.006-fix.002`
|
||||
|
||||
## 1. Objet
|
||||
|
||||
Corriger la direction de l'identité réseau Mainnet dans la synthèse RAW sans modifier le runtime.
|
||||
|
||||
La cible canonique KSP devient `mainnet`. `mainnet-beta` est conservé uniquement comme alias de compatibilité/historique ou comme libellé externe lorsqu'un provider/API l'emploie réellement.
|
||||
|
||||
## 2. Motivation
|
||||
|
||||
Le précédent état documentaire conservait `mainnet-beta` comme identité Store canonique principalement parce que cette valeur était déjà présente dans l'état N1 RAW. Cette contrainte n'est pas pertinente : tant que les Jobs et Workers d'acquisition RAW ne sont pas finalisés, les données Mainnet actuelles restent des données de test et la base peut être droppée/recréée si une normalisation est nécessaire.
|
||||
|
||||
La compatibilité avec des données jetables ne doit donc pas imposer la direction de l'alias durable.
|
||||
|
||||
## 3. Décision
|
||||
|
||||
```text
|
||||
identité KSP canonique = mainnet
|
||||
alias legacy/externe = mainnet-beta
|
||||
```
|
||||
|
||||
Cette décision concerne l'identité logique KSP. Elle ne réécrit pas artificiellement les noms publiés par les providers : une documentation externe qui nomme son cluster `mainnet-beta` reste décrite avec son libellé natif.
|
||||
|
||||
Le changement technique correspondant dans Config/Store et les éventuelles migrations de données ne sont pas introduits en `0.3.9` ; ils restent un handoff des releases d'acquisition suivantes.
|
||||
|
||||
## 4. 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
|
||||
```
|
||||
|
||||
Nouveau fichier :
|
||||
|
||||
```text
|
||||
deltas/0.3.9/pre.006-fix.002.md
|
||||
```
|
||||
|
||||
## 5. Versioning
|
||||
|
||||
Correctif strictement documentaire :
|
||||
|
||||
```text
|
||||
workspace.package.version = 0.3.9-pre.6
|
||||
```
|
||||
|
||||
`Cargo.toml` n'est pas modifié.
|
||||
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/architecture/011-RAW_TRANSACTION_ACQUISITION.md -->
|
||||
<!-- version: 4 -->
|
||||
<!-- version: 5 -->
|
||||
|
||||
# Acquisition et alimentation `RawTransaction`
|
||||
|
||||
@@ -513,8 +513,8 @@ Jito prévoit l'arrêt complet de ShredStream le **5 septembre 2026** et recomma
|
||||
Le support de stratégie doit rester network-neutral ; les smokes utilisent pragmatiquement les accès disponibles.
|
||||
|
||||
| Réseau KSP | Preuves prioritaires disponibles | Branches complémentaires | Règle |
|
||||
|----------------|-------------------------------------------------------------------------------|-----------------------------------------------------------------------------------|-----------------------------------------------------|
|
||||
| `mainnet-beta` | HTTP/WS standard multi-provider, PublicNode Yellowstone gRPC, Helius HTTP/WSS | Helius gRPC payant, QuickNode, Alchemy, Chainstack, Shyft, Triton, dRPC, GetBlock | identité réseau canonique Store |
|
||||
|--------------|-------------------------------------------------------------------------------|-----------------------------------------------------------------------------------|----------------------------------------------------------------|
|
||||
| `mainnet` | HTTP/WS standard multi-provider, PublicNode Yellowstone gRPC, Helius HTTP/WSS | Helius gRPC payant, QuickNode, Alchemy, Chainstack, Shyft, Triton, dRPC, GetBlock | identité KSP canonique ; `mainnet-beta` = alias legacy/externe |
|
||||
| `devnet` | Solana public HTTP/WS, Helius standard, OrbitFlare Yellowstone gratuit | Helius LaserStream Developer+, Alchemy, self-host | terrain privilégié pour protocole sans coût Mainnet |
|
||||
| `testnet` | Solana public HTTP/WS, PublicNode RPC/WS/Yellowstone | self-host et autres providers | ne pas extrapoler disponibilité provider |
|
||||
| local/custom | fixtures, Agave local, Yellowstone local si nécessaire | serveurs contrôlés | prouver gaps, replay, backpressure et erreurs |
|
||||
@@ -609,7 +609,7 @@ priorités/composition
|
||||
|
||||
Les prix/tiers d'audit ne doivent pas devenir une politique runtime.
|
||||
|
||||
`mainnet-beta` reste l'identité réseau durable ; `mainnet` peut rester un identifiant de profil/composition/UI.
|
||||
`mainnet` devient l'identité réseau durable KSP. `mainnet-beta` reste uniquement un alias de compatibilité/historique ou un libellé externe lorsqu'un provider/API l'emploie. La phase N1 RAW étant encore une phase de test, aucune donnée existante ne doit forcer la conservation de `mainnet-beta` comme identité canonique : la base peut être droppée/recréée lors de la normalisation si nécessaire.
|
||||
|
||||
## 13. Normalisation RAW commune sans couplage Job/Worker
|
||||
|
||||
@@ -877,7 +877,7 @@ Store convergence = identité (network, signature), idempotence + con
|
||||
observations = plusieurs acquisitions/provenances possibles pour un même RAW
|
||||
support vs preuve = axes séparés ; NON PROUVÉ n'implique pas REJETÉ
|
||||
provider model = capabilities/configuration, jamais enum provider fermé
|
||||
network identity = mainnet-beta canonique
|
||||
network identity = mainnet canonique ; mainnet-beta alias legacy/externe
|
||||
RAW canonicalisation = lower-layer commune, sans edge Job <-> Worker
|
||||
0.3.10 = Worker live multi-source + adaptations communes nécessaires
|
||||
0.3.12 = Job Backfill multi-stratégie historique
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/plans/030-V0_3_9_WORKER_API_RAW_TRANSACTION_AUDIT_PLAN.md -->
|
||||
<!-- version: 11 -->
|
||||
<!-- version: 12 -->
|
||||
|
||||
# Plan v0.3.9 — Worker API générique + audit RAW Transaction
|
||||
|
||||
@@ -586,7 +586,7 @@ Budget cible : **15-20 min**. La production API de `pre.002` reste inchangée :
|
||||
|
||||
**Statut : réalisé ; audit documentaire daté, aucun runtime modifié.**
|
||||
|
||||
Budget cible : **15-20 min**. Le document durable `docs/architecture/011-RAW_TRANSACTION_ACQUISITION.md` est créé et ouvre l'audit daté du 4 septembre 2026. Les voies standard sont classifiées en capabilities orthogonales : discovery adressée + hydration HTTP, scan bloc HTTP, live discovery `logsSubscribe`, confirmation ciblée `signatureSubscribe`, direct full `blockSubscribe` sous capability explicite, et primitives slot/ledger auxiliaires. L'inventaire KSP confirme Store/provenance et Config déjà suffisants pour plusieurs voies, mais identifie notamment l'absence de `get_block_observed`, l'ownership Backfill actuelle du canonicalizer RAW v1, le besoin de gap repair explicite après reconnect WS et la canonicalisation durable `mainnet-beta`. Aucun gap n'est implémenté dans cette tranche.
|
||||
Budget cible : **15-20 min**. Le document durable `docs/architecture/011-RAW_TRANSACTION_ACQUISITION.md` est créé et ouvre l'audit daté du 4 septembre 2026. Les voies standard sont classifiées en capabilities orthogonales : discovery adressée + hydration HTTP, scan bloc HTTP, live discovery `logsSubscribe`, confirmation ciblée `signatureSubscribe`, direct full `blockSubscribe` sous capability explicite, et primitives slot/ledger auxiliaires. L'inventaire KSP confirme Store/provenance et Config déjà suffisants pour plusieurs voies, mais identifie notamment l'absence de `get_block_observed`, l'ownership Backfill actuelle du canonicalizer RAW v1, le besoin de gap repair explicite après reconnect WS et l'état alors observé où `mainnet-beta` servait d'identité réseau. Aucun gap n'est implémenté dans cette tranche ; la direction canonique de l'alias réseau est corrigée ensuite par `pre.006-fix.002`.
|
||||
|
||||
### `pre.005` — audit RAW B : Helius, Yellowstone/providers + kbot3 fonctionnel
|
||||
|
||||
@@ -606,6 +606,12 @@ Budget cible : **15-20 min**. `docs/architecture/011-RAW_TRANSACTION_ACQUISITION
|
||||
|
||||
Réécriture complète de `docs/architecture/011-RAW_TRANSACTION_ACQUISITION.md` pour supprimer l'effet « audit A + audit B + synthèse ajoutée ». Le document devient une référence architecturale unique centrée sur `RawTransaction` dans Store. Il fixe explicitement : Job Backfill = historique paramétré/borné ; Worker Ingest = acquisition continue start/stop sans paramètres métier historiques ; aucun edge, délégation ou coordination obligatoire entre les deux ; capabilities HTTP/WS/gRPC/archive classifiées par usage et non par producteur. Le replay/repair Worker est limité à la continuité de son acquisition active et ne devient jamais une campagne historique. Correctif strictement documentaire : `workspace.package.version` reste `0.3.9-pre.6`.
|
||||
|
||||
#### `pre.006-fix.002` — identité réseau canonique `mainnet`
|
||||
|
||||
**Statut : réalisé ; correctif documentaire uniquement.**
|
||||
|
||||
La synthèse corrige la direction de compatibilité réseau : `mainnet` devient l'identité KSP canonique et `mainnet-beta` devient un alias legacy/externe, jamais l'inverse. Les libellés provider natifs qui utilisent encore `mainnet-beta` restent documentés comme tels, sans imposer cette valeur à l'identité Store. La base N1 RAW actuelle reste jetable tant que Jobs/Workers d'acquisition ne sont pas finalisés ; aucune donnée de test existante ne justifie donc de figer une convention de nommage indésirable. La normalisation runtime/Config/Store correspondante est un handoff technique ultérieur, pas un changement de code `0.3.9`. `workspace.package.version` reste `0.3.9-pre.6`.
|
||||
|
||||
### `pre.007` — gate technique final
|
||||
|
||||
**Statut : prévu.**
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/validation/026-V0_3_9_WORKER_API_RAW_TRANSACTION_AUDIT.md -->
|
||||
<!-- version: 10 -->
|
||||
<!-- version: 11 -->
|
||||
|
||||
# Validation v0.3.9 — Worker API + audit RAW Transaction
|
||||
|
||||
@@ -179,7 +179,7 @@ Aucun item ci-dessous n’est déclaré exécuté en `pre.001`.
|
||||
- [X] HTTP discovery/hydration roles classifiés.
|
||||
- [X] WS logs/signature/block roles classifiés.
|
||||
- [X] Live/catch-up/gap-repair/history applicability documentée.
|
||||
- [X] `mainnet` / `mainnet-beta` audit interne commencé sans migration ; `mainnet-beta` retenu comme identité durable.
|
||||
- [X] `mainnet` / `mainnet-beta` audit interne commencé sans migration ; l'état alors observé utilisait `mainnet-beta`, décision ensuite supersédée par `pre.006-fix.002`.
|
||||
|
||||
### `pre.005` — providers + kbot3 historique
|
||||
|
||||
@@ -208,7 +208,7 @@ Aucun item ci-dessous n’est déclaré exécuté en `pre.001`.
|
||||
- [X] Gaps Transport `0.3.10` listés (`get_block_observed`, projection/provenance full commune, conservation moteur Yellowstone), non implémentés en `0.3.9`.
|
||||
- [X] Gaps Config `0.3.10` listés : sources multiples, rôles/capabilities, priorité/enablement et network binding ; aucun nouvel endpoint ajouté en `0.3.9`.
|
||||
- [X] Réutilisation unique `KSP_SECRET_HELIUS_API_KEY` confirmée pour toutes les surfaces Helius concernées.
|
||||
- [X] Stratégie `mainnet` / `mainnet-beta` conclue : `mainnet-beta` reste l'identité réseau canonique ; `mainnet` peut rester alias de profil/UI.
|
||||
- [X] Stratégie `mainnet` / `mainnet-beta` conclue après correction : `mainnet` est l'identité réseau canonique KSP ; `mainnet-beta` est un alias legacy/externe.
|
||||
- [X] Applicability `0.3.12` Backfill indiquée par source/méthode : GSFA, block scan, explicit signatures, Yellowstone replay, provider history/archive et Old Faithful.
|
||||
- [X] `docs/architecture/011-RAW_TRANSACTION_ACQUISITION.md` créé dès `pre.004` comme owner durable, à enrichir en `pre.005`/`pre.006`.
|
||||
|
||||
@@ -225,6 +225,15 @@ Aucun item ci-dessous n’est déclaré exécuté en `pre.001`.
|
||||
- [X] Matrices provider/réseau/prix/preuve et sources EARLY conservées dans la synthèse réorganisée.
|
||||
- [X] Correctif documentaire uniquement : `workspace.package.version` reste `0.3.9-pre.6`.
|
||||
|
||||
#### `pre.006-fix.002` — identité réseau canonique `mainnet`
|
||||
|
||||
- [X] `mainnet` devient l'identité réseau canonique KSP pour Store/RAW/Config futurs.
|
||||
- [X] `mainnet-beta` devient un alias de compatibilité/historique ou un libellé provider externe, jamais la cible canonique.
|
||||
- [X] Les libellés provider documentés en `mainnet-beta` restent inchangés lorsqu'ils décrivent réellement l'API externe.
|
||||
- [X] Les données Mainnet de la phase N1 RAW restent considérées comme données de test et peuvent être droppées/recréées pour normaliser l'identité réseau.
|
||||
- [X] Aucun changement runtime/Config/Store n'est effectué dans ce correctif documentaire ; la migration technique reste un handoff ultérieur.
|
||||
- [X] `workspace.package.version` reste `0.3.9-pre.6`.
|
||||
|
||||
## 7. Couloirs de fermeture
|
||||
|
||||
### `pre.007` — gate technique final
|
||||
|
||||
Reference in New Issue
Block a user