Files
khadhroony-solana-project/deltas/0.2.8/pre.005-fix.002.md

2.7 KiB

Delta 0.2.8-pre.005-fix.002 — suppression des helpers wire morts hors tests

1. Cause

Le checkpoint de pre.005-fix.001 corrige les quatre erreurs de type et valide les tests Transport, mais cargo check, cargo clippy --workspace --all-targets et la compilation des tests émettent encore neuf warnings dead_code dans ws_helius_transactions.rs.

Ces warnings concernent uniquement des helpers strictement privés préparant le wire transactionSubscribe/transactionUnsubscribe avant son intégration actor de pre.006. Ils n'ont volontairement aucun consommateur de production en pre.005.

2. Correction

pre.005-fix.002 ne réélargit aucune visibilité et n'ajoute aucun #[allow(dead_code)]. Les helpers concernés restent privés et sont compilés uniquement sous #[cfg(test)] :

HeliusTransactionSubscribeFilter::to_json_value
HeliusTransactionSubscribeOptions::to_json_value
helius_transaction_subscribe_params
helius_transaction_subscribe_method
helius_transaction_unsubscribe_method
decode_helius_transaction_subscribe_result
helius_transaction_unsubscribe_params
decode_helius_transaction_unsubscribe_result
insert_account_list

Le contrat public typed (HeliusTransactionSubscribe*) et les validations déterministes restent compilés dans le build de production. Les tests unitaires continuent d'accéder aux helpers privés via super::Item; les éléments visibles continuent d'être consommés via crate::Item.

3. Règle durable

RUST-API-008 formalise qu'un helper strictement privé uniquement utile à un unit_tests/ de préparation reste sous #[cfg(test)] tant qu'aucun chemin de production ne le consomme réellement. La visibilité ne doit pas être élargie et #[allow(dead_code)] ne doit pas servir de compensation.

En pre.006, seuls les helpers réellement nécessaires à l'actor seront promus dans le build normal ; si un partage cross-module impose pub(crate), il devra alors passer par le crate-root et être consommé via crate::Item.

4. Fichiers

Cargo.toml
crates/ksp-onchain-transport-lib/src/ws_helius_transactions.rs
docs/rules/RULES_RUST.md
docs/plans/015-V0_2_8_HELIUS_LASERSTREAM_WEBSOCKET_PLAN.md
docs/validation/011-V0_2_8_HELIUS_LASERSTREAM_WEBSOCKET.md
deltas/0.2.8/pre.005-fix.002.md

5. Gate opérateur

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 --workspace

Critère supplémentaire de fermeture : cargo check et Clippy ne doivent plus émettre les neuf warnings dead_code observés après fix.001.