Files
khadhroony-solana-project/deltas/0.2.9/pre.010-fix.001.md

3.2 KiB

Delta 0.2.9-pre.010-fix.001 — Clippy reconnect + cohérence crate-root

1. Base

0.2.9-pre.010
workspace.package.version = 0.2.9-pre.10

Le gate opérateur fourni confirme :

cargo fmt --all                               PASS
python3 scripts/audit_rust_workspace_rules.py PASS / clean
cargo check --workspace                       PASS
cargo clippy --workspace --all-targets        PASS + 2 warnings
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

2. Motif

Deux clippy::collapsible_if subsistent dans grpc_stream.rs :

ContinuityTracker::observe()  éviction du cache borné
run_subscribe_actor()         Ping -> send_automatic_ping

La revue de code détecte également une incohérence documentaire dans src/lib.rs : le commentaire crate-root reste au niveau pre.009 et affirme encore que reconnect/replay sont hors tranche, alors que pre.010 les a matérialisés.

3. Correctifs

3.1 Clippy

Les deux if imbriqués sont convertis en let-chains équivalentes. Aucun #[allow(clippy::...)] n'est ajouté.

Aucune sémantique n'est modifiée :

cache duplicate       toujours borné à 512 identités
Ping automatique      même send_automatic_ping, mêmes erreurs terminales
reconnect             inchangé
ReplayInfo/from_slot  inchangés
gaps/duplicates       compteurs inchangés
backpressure/shutdown inchangés

3.2 Documentation crate-root

ksp-onchain-transport-lib/src/lib.rs décrit maintenant explicitement 0.2.9-pre.010 : reconnect borné KSP-owned, reprise depuis le dernier request/slot observé, gap prudent via ReplayInfo et duplicates observables sans promesse exactly-once/lossless.

3.3 Signal de version

Le correctif touche du Rust ; conformément à VER-ID-007/VER-ID-010 :

workspace.package.version = 0.2.9-pre.10.fix.1
commit attendu            = v0.2.9-pre.010-fix.001

4. Documentation de release

Mise à jour :

docs/plans/016-V0_2_9_YELLOWSTONE_GRPC_PLAN.md
docs/validation/012-V0_2_9_YELLOWSTONE_GRPC.md

Le premier gate opérateur et le statut du fix y sont enregistrés. pre.011 reste explicitement non commencée avant fermeture sans warning du présent fix.

5. Frontières inchangées

OUT fix.001 : Config V3 / PublicNode / provider facade
OUT 0.2.9   : SubscribeDeshred
aucune dépendance / feature Cargo ajoutée
aucun wire protobuf modifié
aucun contrat public reconnect/replay modifié

6. Gate opérateur attendu

cargo fmt --all
python3 scripts/audit_rust_workspace_rules.py
cargo check --workspace
cargo clippy --workspace --all-targets
cargo test -p ksp-onchain-transport-lib
cargo test -p ksp-core-lib --test workspace_dependencies
cargo test --workspace

Attendu : Clippy sans warning, Transport 383 unit / 49 public API / 43 release-completeness / 4 doctests et workspace vert. Aucun cargo tree supplémentaire n'est requis, le graphe Cargo étant inchangé.