v0.2.4-pre.008-fix.001

This commit is contained in:
2026-08-18 21:53:33 +02:00
parent 37461ec248
commit 7e84522787
3 changed files with 90 additions and 4 deletions

View File

@@ -1,12 +1,12 @@
# file: Cargo.toml # file: Cargo.toml
# version: 139 # version: 140
[workspace] [workspace]
resolver = "3" resolver = "3"
members = ["crates/ksp-app-config-desk", "crates/ksp-config-lib", "crates/ksp-core-lib", "crates/ksp-logging-lib", "crates/ksp-onchain-transport-lib"] members = ["crates/ksp-app-config-desk", "crates/ksp-config-lib", "crates/ksp-core-lib", "crates/ksp-logging-lib", "crates/ksp-onchain-transport-lib"]
[workspace.package] [workspace.package]
version = "0.2.4-pre.8" version = "0.2.4-pre.8.fix.1"
edition = "2024" edition = "2024"
license = "MIT" license = "MIT"
repository = "https://git.sasedev.com/Sasedev/khadhroony-solana-project" repository = "https://git.sasedev.com/Sasedev/khadhroony-solana-project"

View File

@@ -1,5 +1,5 @@
// file: crates/ksp-onchain-transport-lib/src/rpc_economics.rs // file: crates/ksp-onchain-transport-lib/src/rpc_economics.rs
// version: 4 // version: 5
/// Inflation-governor values returned by `getInflationGovernor`. /// Inflation-governor values returned by `getInflationGovernor`.
#[derive(Clone, Copy, Debug, PartialEq)] #[derive(Clone, Copy, Debug, PartialEq)]
@@ -375,7 +375,7 @@ impl crate::HttpTransportPool {
.with_context("commitment", "processed"), .with_context("commitment", "processed"),
); );
} }
let address_values = addresses.iter().map(|address| serde_json::Value::String(address.to_string())).collect::<std::vec::Vec<_>>(); let address_values = addresses.iter().map(|address| return serde_json::Value::String(address.to_string())).collect::<std::vec::Vec<_>>();
let mut params = std::vec![serde_json::Value::Array(address_values)]; let mut params = std::vec![serde_json::Value::Array(address_values)];
if let std::option::Option::Some(config) = config if let std::option::Option::Some(config) = config
&& !config.is_empty() && !config.is_empty()

View File

@@ -0,0 +1,86 @@
<!-- file: deltas/0.2.4/pre.008-fix.001.md -->
<!-- version: 1 -->
# 0.2.4-pre.008-fix.001 — conformité Clippy `implicit_return`
## Base
- Livraison corrigée : `0.2.4-pre.008`
- Version Cargo de base : `0.2.4-pre.8`
- Version Cargo après fix : `0.2.4-pre.8.fix.1`
- Le delta historique `pre.008.md` et le plan `011` ne sont pas modifiés.
## Motif du fix
La validation locale de `0.2.4-pre.008` a donné :
- `cargo fmt --all` : OK ;
- `cargo check --workspace` : OK ;
- `cargo clippy --workspace --all-targets` : échec sur une unique violation de la politique workspace `-D clippy::implicit-return` ;
- `cargo test -p ksp-onchain-transport-lib` : OK avec `240` unit tests, `26` tests public API, `21` tests release-completeness et le smoke Devnet explicitement ignoré.
La violation se trouve dans `HttpTransportPool::get_inflation_reward`, dans la closure qui transforme les `Pubkey` d'entrée en valeurs JSON :
```rust
.map(|address| serde_json::Value::String(address.to_string()))
```
Le workspace impose les retours explicites, y compris dans cette closure.
## Correction
La closure devient :
```rust
.map(|address| return serde_json::Value::String(address.to_string()))
```
Aucun comportement RPC, aucune validation, aucun DTO, aucune fixture et aucune canarie ne changent.
## Fichiers
Modifiés :
- `Cargo.toml` ;
- `crates/ksp-onchain-transport-lib/src/rpc_economics.rs`.
Ajouté :
- `deltas/0.2.4/pre.008-fix.001.md`.
## Validation statique de livraison
L'environnement de construction de l'archive ne dispose pas de `cargo`, `rustc` ou `rustfmt`. Les contrôles statiques de packaging vérifient donc :
- modification limitée à la closure concernée, aux versions de fichier/Cargo et au présent delta ;
- absence de `#[allow(dead_code)]` ajouté ;
- absence de nouveau `unsafe`, `unwrap`, `expect` ou `panic!` dans le runtime modifié ;
- archive réextraite et comparée octet par octet.
## Validation locale attendue
```bash
cargo fmt --all
cargo check --workspace
cargo clippy --workspace --all-targets
cargo test -p ksp-onchain-transport-lib
```
Résultat attendu :
- zéro warning / erreur introduit par `pre.008` ;
- `240` unit tests OK ;
- `26` tests public API OK ;
- `21` tests release-completeness OK ;
- `1` smoke Devnet ignoré ;
- aucun échec.
## Commit attendu
```text
v0.2.4-pre.008-fix.001
```
## Suite
La prochaine prerelease fonctionnelle reste `0.2.4-pre.009`, consacrée au réaudit final SIMD/inventaire, à la compliance HTTP `52/52 + 14/14`, aux smokes/graphes, à la documentation finale et au prompt `0.2.5 — Wallet foundation`.