Files
2026-08-25 05:44:41 +02:00

4.8 KiB

Delta 0.2.9-pre.014 — réconciliation documentaire finale Yellowstone

1. Base

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 :

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 :

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 :

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 :

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 :

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 :

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

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 :

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

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

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.