83 lines
2.8 KiB
Markdown
83 lines
2.8 KiB
Markdown
<!-- file: deltas/0.2.9/pre.003-fix.001.md -->
|
|
<!-- version: 1 -->
|
|
|
|
# Delta `0.2.9-pre.003-fix.001` — conformité Clippy de la fixture unary
|
|
|
|
## 1. Déclencheur
|
|
|
|
Le premier gate opérateur `pre.003` confirme :
|
|
|
|
```text
|
|
cargo fmt --all PASS
|
|
python3 scripts/audit_rust_workspace_rules.py PASS / clean
|
|
cargo check --workspace PASS
|
|
cargo clippy --workspace --all-targets FAIL
|
|
11 x clippy::implicit_return dans unit_tests/grpc_unary.rs
|
|
cargo test -p ksp-onchain-transport-lib PASS
|
|
unit 354/354
|
|
public_api 43/43
|
|
release_completeness 36/36
|
|
doctests 4/4
|
|
cargo test -p ksp-core-lib --test workspace_dependencies
|
|
PASS 3/3
|
|
cargo test --workspace PASS
|
|
```
|
|
|
|
Le problème est donc limité à la conformité Clippy de la fixture locale ; aucune défaillance fonctionnelle TLS/metadata/unary n'est observée.
|
|
|
|
## 2. Diagnostic
|
|
|
|
Neuf diagnostics pointent les méthodes de l'implémentation `Geyser` annotée `#[tonic::async_trait]`. Les corps source ont déjà leurs retours explicites ; le lint vise les wrappers/tails async issus de l'expansion de macro et propose un `return async fn ...` non applicable au code Rust source.
|
|
|
|
Deux diagnostics supplémentaires concernent les closures `and_then` utilisées pour lire les metadata de fixture ; ces retours sont directement sous contrôle KSP.
|
|
|
|
## 3. Correction
|
|
|
|
```text
|
|
impl FixtureGeyser :
|
|
allow(clippy::implicit_return) strictement local et commenté
|
|
aucune relaxation au niveau crate/workspace
|
|
|
|
closures metadata :
|
|
return explicite conforme à la politique workspace
|
|
```
|
|
|
|
Aucun changement de production :
|
|
|
|
```text
|
|
YellowstoneGrpcChannel inchangé
|
|
SolanaYellowstoneGrpcUnaryClient inchangé
|
|
TLS/metadata/settings inchangés
|
|
7 unary inchangés
|
|
aucune dépendance/feature Cargo ajoutée ou retirée
|
|
Subscribe/PublicNode/Config V3 toujours hors tranche
|
|
```
|
|
|
|
## 4. Version
|
|
|
|
```text
|
|
workspace.package.version = 0.2.9-pre.3.fix.1
|
|
commit attendu = v0.2.9-pre.003-fix.001
|
|
```
|
|
|
|
## 5. Validation requise
|
|
|
|
```bash
|
|
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
|
|
```
|
|
|
|
Les dépendances et features ne changent pas avec ce fix. Les graphes Cargo demandés par `pre.003` restent néanmoins à fournir/inspecter si ce n'est pas déjà fait :
|
|
|
|
```bash
|
|
cargo tree -p ksp-onchain-transport-lib
|
|
cargo tree -p ksp-onchain-transport-lib -e features
|
|
cargo tree -p ksp-onchain-transport-lib --duplicates
|
|
cargo tree --duplicates
|
|
```
|