v0.2.5-pre.002-fix.001
This commit is contained in:
@@ -1,12 +1,12 @@
|
||||
# file: Cargo.toml
|
||||
# version: 143
|
||||
# version: 144
|
||||
|
||||
[workspace]
|
||||
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", "crates/ksp-wallet-lib"]
|
||||
|
||||
[workspace.package]
|
||||
version = "0.2.5-pre.2"
|
||||
version = "0.2.5-pre.2.fix.1"
|
||||
edition = "2024"
|
||||
license = "MIT"
|
||||
repository = "https://git.sasedev.com/Sasedev/khadhroony-solana-project"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// file: crates/ksp-wallet-lib/src/metadata.rs
|
||||
// version: 1
|
||||
// version: 2
|
||||
|
||||
/// One protected Wallet note exposed only after VIEW or OWNER authorization.
|
||||
#[derive(Clone, Eq, PartialEq)]
|
||||
@@ -77,7 +77,7 @@ impl std::fmt::Debug for WalletInfo {
|
||||
.field("format_version", &self.format_version)
|
||||
.field("capability", &self.capability)
|
||||
.field("pubkey", &self.pubkey)
|
||||
.field("alias", &self.alias.as_ref().map(|_| "<redacted>"))
|
||||
.field("alias", &self.alias.as_ref().map(|_| return "<redacted>"))
|
||||
.field("note_count", &self.notes.len())
|
||||
.finish();
|
||||
}
|
||||
|
||||
140
deltas/0.2.5/pre.002-fix.001.md
Normal file
140
deltas/0.2.5/pre.002-fix.001.md
Normal file
@@ -0,0 +1,140 @@
|
||||
<!-- file: deltas/0.2.5/pre.002-fix.001.md -->
|
||||
<!-- version: 1 -->
|
||||
|
||||
# Delta `0.2.5-pre.002-fix.001` — conformité Clippy `implicit_return` de la projection Wallet
|
||||
|
||||
## Base requise
|
||||
|
||||
```text
|
||||
livraison : 0.2.5-pre.002
|
||||
workspace.package.version = "0.2.5-pre.2"
|
||||
```
|
||||
|
||||
La base de ce correctif est explicitement l'archive Gitea fournie par l'opérateur après ses modifications locales :
|
||||
|
||||
```text
|
||||
khadhroony-solana-project-v0.2.5-pre.002-from-gitea.zip
|
||||
```
|
||||
|
||||
Elle remplace comme référence de travail tout paquet d'échange `pre.002` antérieur de la session. Le delta historique `deltas/0.2.5/pre.002.md` n'est pas réécrit.
|
||||
|
||||
## Motif
|
||||
|
||||
La validation locale communiquée le 2026-08-19 donne :
|
||||
|
||||
```text
|
||||
cargo fmt --all OK
|
||||
cargo check --workspace OK
|
||||
cargo clippy --workspace --all-targets ECHEC
|
||||
cargo test -p ksp-wallet-lib OK
|
||||
```
|
||||
|
||||
Clippy rejette une unique closure dans `WalletInfo::fmt` au titre de la politique workspace :
|
||||
|
||||
```text
|
||||
-D clippy::implicit-return
|
||||
```
|
||||
|
||||
Le code concerné est la redaction de l'alias dans `Debug` :
|
||||
|
||||
```rust
|
||||
.map(|_| "<redacted>")
|
||||
```
|
||||
|
||||
La politique KSP exige un `return` explicite également dans cette closure.
|
||||
|
||||
## Correction
|
||||
|
||||
La closure devient uniquement :
|
||||
|
||||
```rust
|
||||
.map(|_| return "<redacted>")
|
||||
```
|
||||
|
||||
Aucun comportement Wallet, aucune capability VIEW/OWNER, aucune projection publique, aucune redaction, aucune dépendance et aucun contrat du format `.kspwallet` ne changent.
|
||||
|
||||
## Version Cargo
|
||||
|
||||
Le correctif modifie une source Rust participant au build. Conformément à `VER-ID-007` et `VER-ID-010` :
|
||||
|
||||
```text
|
||||
0.2.5-pre.2 -> 0.2.5-pre.2.fix.1
|
||||
```
|
||||
|
||||
## Fichiers modifiés
|
||||
|
||||
```text
|
||||
Cargo.toml
|
||||
crates/ksp-wallet-lib/src/metadata.rs
|
||||
```
|
||||
|
||||
## Fichiers ajoutés
|
||||
|
||||
```text
|
||||
deltas/0.2.5/pre.002-fix.001.md
|
||||
```
|
||||
|
||||
## Fichiers supprimés
|
||||
|
||||
Aucun.
|
||||
|
||||
## Fichiers volontairement inchangés
|
||||
|
||||
```text
|
||||
deltas/0.2.5/pre.002.md
|
||||
docs/plans/012-V0_2_5_WALLET_FOUNDATION_PLAN.md
|
||||
ROADMAP.md
|
||||
CHANGELOG.md
|
||||
crates/ksp-wallet-lib/src/capability.rs
|
||||
crates/ksp-wallet-lib/src/constants.rs
|
||||
crates/ksp-wallet-lib/src/error.rs
|
||||
crates/ksp-wallet-lib/src/lib.rs
|
||||
crates/ksp-wallet-lib/src/owner.rs
|
||||
crates/ksp-wallet-lib/src/password.rs
|
||||
crates/ksp-wallet-lib/src/view.rs
|
||||
crates/ksp-wallet-lib/unit_tests/**
|
||||
crates/ksp-wallet-lib/tests/**
|
||||
```
|
||||
|
||||
Aucun delta historique n'est réécrit.
|
||||
|
||||
## Validations déjà exécutées sur la base par l'opérateur
|
||||
|
||||
Avant le correctif :
|
||||
|
||||
- `cargo fmt --all` : OK ;
|
||||
- `cargo check --workspace` : OK ;
|
||||
- `cargo clippy --workspace --all-targets` : échec uniquement sur `clippy::implicit_return` dans `metadata.rs` ;
|
||||
- `cargo test -p ksp-wallet-lib` : OK :
|
||||
- 7 unit tests ;
|
||||
- 2 dependency-boundary tests ;
|
||||
- 4 public API tests ;
|
||||
- 2 doctests `compile_fail`.
|
||||
|
||||
## Validation attendue après application
|
||||
|
||||
```bash
|
||||
cargo fmt --all
|
||||
cargo check --workspace
|
||||
cargo clippy --workspace --all-targets
|
||||
cargo test -p ksp-wallet-lib
|
||||
```
|
||||
|
||||
Résultat attendu : les quatre commandes réussissent sans régression et les `15` contrôles Wallet déjà validés restent verts.
|
||||
|
||||
## Décisions
|
||||
|
||||
- conserver la redaction `Debug` existante ;
|
||||
- respecter la règle workspace de retour explicite sans ajouter de `#[allow]` ;
|
||||
- ne pas élargir le périmètre fonctionnel de `pre.002` ;
|
||||
- poursuivre avec `0.2.5-pre.003` après validation du fix.
|
||||
|
||||
## Questions ouvertes
|
||||
|
||||
Aucune nouvelle question ouverte introduite par ce correctif.
|
||||
|
||||
## Commit attendu
|
||||
|
||||
```text
|
||||
v0.2.5-pre.002-fix.001
|
||||
```
|
||||
Reference in New Issue
Block a user