Files
khadhroony-solana-project/deltas/0.2.9/pre.013.md
2026-08-24 21:13:38 +02:00

184 lines
4.7 KiB
Markdown

# Delta `0.2.9-pre.013` — gate technique/live final
## Base requise
```text
livraison : 0.2.9-pre.012-fix.001
Cargo : 0.2.9-pre.12
```
## Identité de la tranche
```text
livraison : 0.2.9-pre.013
Cargo : 0.2.9-pre.13
```
Cette prerelease applique le couloir technique/live introduit par `pre.012-fix.001`. Elle ne porte aucune réconciliation README/USAGE/plan/validation et aucune finalisation CHANGELOG/ROADMAP/prompt.
## Objectif
Fermer les dernières preuves techniques externes de `0.2.9` avant la réconciliation documentaire :
```text
smoke PublicNode Mainnet Yellowstone gRPC live
inspection du graphe Transport direct
inspection des dépendances dupliquées Transport
inspection des dépendances dupliquées workspace
```
Le smoke existe déjà dans la base sous :
```text
crates/ksp-onchain-transport-lib/tests/yellowstone_publicnode_smoke.rs
```
Il reste opt-in et ne contient aucun secret. `pre.013` ne crée pas un second smoke et ne déplace pas ce test vers Config.
## Vérification externe de l'endpoint
Le 2026-08-24, la surface officielle PublicNode expose toujours Solana Mainnet Yellowstone GRPC avec le host/port :
```text
solana-yellowstone-grpc.publicnode.com:443
```
KSP conserve l'URI TLS :
```text
https://solana-yellowstone-grpc.publicnode.com:443
```
Aucun endpoint Testnet n'est ajouté ou déduit dans cette tranche.
## Modifications
```text
Cargo.toml
workspace.package.version : 0.2.9-pre.12 -> 0.2.9-pre.13
deltas/0.2.9/pre.013.md
ajout du gate technique/live et des commandes opérateur
```
Aucun code runtime, test, schema, config, README, USAGE, plan, validation, CHANGELOG, ROADMAP ou prompt n'est modifié.
## Baseline déterministe héritée de `pre.012`
Le log opérateur reçu avant l'ouverture de cette tranche confirme :
```text
cargo fmt --all PASS
Rust workspace audit clean / 0 export candidate
Markdown table audit clean
cargo check --workspace PASS
cargo clippy --workspace --all-targets PASS sans warning
Config unit 113/113
Config public API 15/15
Config ownership 5/5
Transport unit 383/383
Transport public API 49/49
Transport release completeness 43/43
Transport doctests 4/4
workspace dependency canary 3/3
cargo test --workspace PASS
```
Le test PublicNode était alors uniquement compilé et listé comme `ignored`; cela ne vaut pas exécution live.
## Gate opérateur `pre.013`
### 1. Gate déterministe après changement de version
```bash
cargo fmt --all
python3 scripts/audit_rust_workspace_rules.py
python3 scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs prompts crates deltas/0.2.9
cargo check --workspace
cargo clippy --workspace --all-targets
cargo test -p ksp-onchain-transport-lib
cargo test -p ksp-core-lib --test workspace_dependencies
```
Seuils de non-régression :
```text
Transport unit 383 minimum
Transport public API 49 minimum
Transport release completeness 43 minimum
Transport doctests 4 minimum
workspace dependencies 3 minimum
```
### 2. Smoke PublicNode Mainnet live
```bash
cargo test -p ksp-onchain-transport-lib --test yellowstone_publicnode_smoke -- --ignored --nocapture
```
Le verdict attendu est :
```text
1 passed
0 failed
0 ignored
```
Le test doit démontrer sans credentials :
```text
TLS vers PublicNode Mainnet
GetVersion réussi
GetSlot Confirmed réussi
slot > 0
```
Un échec de compilation, mapping, TLS, protocole ou appel unary imputable à KSP ouvre `pre.013-fix.NNN`.
Un échec démontré comme incident externe PublicNode/réseau est documenté comme `EXTERNAL BLOCK` et n'est jamais maquillé en PASS.
### 3. Graphes Cargo finaux
```bash
cargo tree -p ksp-onchain-transport-lib
cargo tree -p ksp-onchain-transport-lib --duplicates
cargo tree --duplicates
```
Points à vérifier :
```text
pas de yellowstone-grpc-client runtime
pas de dépendance Transport -> Config
pas de tracing direct Transport
Tonic KSP-owned conservé
yellowstone-grpc-proto présent comme proto officiel
aucune nouvelle duplication introduite par pre.013
```
### 4. Workspace complet
Après le smoke et l'inspection des graphes :
```bash
cargo test --workspace
```
## Critère de fermeture
`pre.013` est fermée seulement lorsque :
```text
gate déterministe vert sans warning
smoke PublicNode Mainnet réellement exécuté et vert, ou incident externe précisément établi
graphes Cargo inspectés
workspace complet vert
aucun correctif documentaire de clôture mélangé dans cette tranche
```
La tranche suivante reste :
```text
0.2.9-pre.014 — réconciliation documentaire finale
```