Files
khadhroony-solana-project/deltas/0.2.9/pre.014.md
2026-08-25 05:44:41 +02:00

141 lines
4.8 KiB
Markdown

<!-- file: deltas/0.2.9/pre.014.md -->
<!-- version: 1 -->
# Delta `0.2.9-pre.014` — réconciliation documentaire finale Yellowstone
## 1. Base
```text
0.2.9-pre.013-fix.004
```
Cette tranche est exclusivement le couloir de réconciliation documentaire défini par `VER-LIFECYCLE-006`. Elle ne modifie aucun code, test, schema, config exécutable, README global de publication, `CHANGELOG.md`, `ROADMAP.md` ou prompt suivant.
## 2. Version technique
Comme toute prerelease non-fix, la version Cargo est synchronisée mécaniquement :
```text
workspace.package.version = 0.2.9-pre.14
```
Aucune sémantique runtime ne change.
## 3. Preuve technique réconciliée
Le couloir `pre.013` est fermé par `pre.013-fix.004` avec :
```text
cargo fmt --all PASS
Rust workspace audit PASS, 0 export candidate
Markdown audit PASS, 87 tableaux / 258 fichiers
cargo check --workspace PASS
cargo clippy --workspace --all-targets PASS sans warning
Transport unit 383/383 PASS
Transport public API 49/49 PASS
Transport release completeness 43/43 PASS
Transport doctests 4/4 PASS
cargo test --workspace PASS
PublicNode Mainnet Subscribe + Slot PASS
PublicNode Testnet Subscribe + Slot PASS
live smoke total 2/2 PASS
```
Les graphes Cargo finaux ont été inspectés dans le couloir technique. `fix.004` n'ayant modifié ni dépendance ni feature, leur verdict reste applicable :
```text
yellowstone-grpc-proto 12.6.0
tonic / tonic-prost 0.14.6
prost / prost-types 0.14.4
yellowstone-grpc-client absent du runtime KSP
```
## 4. PublicNode final
Endpoints validés :
```text
Mainnet https://solana-yellowstone-grpc.publicnode.com:443
Testnet https://solana-testnet-yellowstone-grpc.publicnode.com:443
```
Les essais live ont montré qu'une connexion sans credential peut atteindre le service mais recevoir `PERMISSION_DENIED`. Les profils finaux utilisent donc une metadata gRPC secrète `x-token`.
Config conserve :
```text
KSP_SECRET_PUBLICNODE_MAINNET_GRPC_X_TOKEN
KSP_SECRET_PUBLICNODE_TESTNET_GRPC_X_TOKEN
```
L'opérateur a prouvé qu'un même personal token peut être utilisé pour les deux endpoints. Les variables restent distinctes par flexibilité opérationnelle ; KSP ne transforme pas ce choix en affirmation provider de tokens network-scoped.
Le smoke Transport pur reste indépendant de Config : ses deux tokens sont fournis sur stdin au harness et ne sont jamais versionnés, placés dans l'URL ou journalisés.
## 5. Smoke final documenté
Le smoke PublicNode ne teste plus `GetVersion/GetSlot` comme preuve provider, car ces unary peuvent être restreintes indépendamment du service de streaming. La preuve représentative de `0.2.9` est :
```text
TLS
-> metadata secret x-token
-> Subscribe
-> filtre slots
-> YellowstoneSubscribeUpdate::Slot
-> slot > 0
-> fermeture bornée
```
Mainnet et Testnet sont tous deux passés en live. Un timeout KSP de half-close n'est accepté par le harness qu'après réception prouvée du slot ; le runtime conserve son erreur explicite de timeout.
## 6. Documents réconciliés
```text
docs/plans/016-V0_2_9_YELLOWSTONE_GRPC_PLAN.md
docs/validation/012-V0_2_9_YELLOWSTONE_GRPC.md
crates/ksp-onchain-transport-lib/README.md
crates/ksp-onchain-transport-lib/USAGE.md
docs/000-README.md
```
Les anciennes affirmations devenues fausses sont supprimées : PublicNode sans credential, smoke unary Mainnet, Testnet non confirmé/non versionné et gate `pre.013` encore pending.
## 7. Frontière avec `pre.015`
Cette tranche ne touche pas :
```text
prompts/015-V0_2_10_START_PROMPT.md
CHANGELOG.md
ROADMAP.md
```
Ces trois surfaces appartiennent exclusivement à `pre.015`, hors `Cargo.toml` et son delta mécanique.
Si un défaut de code, smoke, Config ou autre document durable est découvert après le gate de `pre.014`, il ne doit pas être glissé dans `pre.015` : une nouvelle prerelease du couloir approprié doit être ouverte conformément aux règles de fermeture.
## 8. Fichiers modifiés/ajoutés
```text
Cargo.toml
docs/000-README.md
docs/plans/016-V0_2_9_YELLOWSTONE_GRPC_PLAN.md
docs/validation/012-V0_2_9_YELLOWSTONE_GRPC.md
crates/ksp-onchain-transport-lib/README.md
crates/ksp-onchain-transport-lib/USAGE.md
deltas/0.2.9/pre.014.md
```
## 9. Gate opérateur
```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 --workspace
```
Aucun smoke live ni `cargo tree` n'est à rejouer dans `pre.014` si le delta est appliqué exactement : aucune surface technique ou dépendance n'est modifiée.