v0.2.6-pre.004-fix.001

This commit is contained in:
2026-08-21 08:44:21 +02:00
parent 76bfce17c1
commit 2132dfd884
8 changed files with 153 additions and 13 deletions

View File

@@ -0,0 +1,136 @@
<!-- file: deltas/0.2.6/pre.004-fix.001.md -->
<!-- version: 1 -->
# Delta `0.2.6-pre.004-fix.001` — fermeture des warnings dimport Wallet inventory
## Base requise
```text
0.2.6-pre.004 appliquée
workspace.package.version = 0.2.6-pre.4
```
La validation opérateur de `pre.004` confirme :
```text
cargo fmt --all OK
python3 scripts/audit_rust_workspace_rules.py clean
cargo check --workspace OK avec 2 warnings
cargo clippy --workspace --all-targets OK avec 2 warnings
cargo test -p ksp-app-wallet-desk OK avec 2 warnings
cargo test --workspace OK avec 2 warnings
cargo tauri dev -c crates/ksp-app-wallet-desk/tauri.conf.json OK avec 2 warnings
```
Les deux warnings sont identiques sur tous les parcours :
```text
unused import: self::wallet_inventory::WalletInspectionStatusDto
unused import: self::wallet_inventory::WalletInventoryStateDto
```
Ils proviennent de réexports `pub(crate)` au crate-root qui ne sont utilisés que par les unit tests de `wallet_inventory`.
## Type de livraison
```text
ksp-general-0.2.6-pre.004-fix.001.zip
```
Le correctif modifie du Rust ; le signal technique devient donc :
```text
workspace.package.version = 0.2.6-pre.4.fix.1
commit = v0.2.6-pre.004-fix.001
```
`ksp-app-wallet-desk/package.json` et `tauri.conf.json` suivent `0.2.6-pre.4.fix.1`. Aucune dépendance Cargo ou npm nest ajoutée ou modifiée.
## Correction
Les réexports crate-root suivants sont conservés mais limités à `#[cfg(test)]` :
```text
WalletInspectionStatusDto
WalletInventoryStateDto
```
Ils ne constituent pas une API publique et ne sont nécessaires à aucun module runtime. Les unit tests conservent le chemin crate-root requis par les règles KSP :
```text
crate::WalletInspectionStatusDto
crate::WalletInventoryStateDto
```
Le `#[cfg(test)]` rend les réexports absents des builds runtime ordinaires, mais présents dans le target de test où ils sont consommés.
Les types eux-mêmes, leurs dérivations TS-RS, `WalletInventoryEntryDto`, les commandes `list_wallets` / `refresh_wallets` / `select_wallet` et le frontend restent inchangés.
## Fichiers ajoutés
```text
deltas/0.2.6/pre.004-fix.001.md
```
## Fichiers modifiés
```text
Cargo.toml
ROADMAP.md
crates/ksp-app-wallet-desk/package.json
crates/ksp-app-wallet-desk/src/lib.rs
crates/ksp-app-wallet-desk/tauri.conf.json
docs/plans/002-FUNCTIONAL_RELEASE_SEQUENCE.md
docs/plans/013-V0_2_6_WALLET_DESK_PLAN.md
```
## Fichiers supprimés
```text
aucun
```
## Décisions
- ne pas masquer les warnings par `#[allow(unused_imports)]` ;
- ne pas conserver de réexport crate-root dans les builds runtime lorsquil sert uniquement aux unit tests ;
- conserver le chemin `crate::...` exigé par `RUST-API-201`/`RUST-IMPORT-202`, mais conditionner ces réexports à `#[cfg(test)]` ;
- ne modifier aucun comportement runtime, Config, Logging, Wallet, DataTables ou path safety.
## Validations exécutées avant livraison
Dans lenvironnement de préparation :
```text
python3 scripts/audit_rust_workspace_rules.py
contrôle statique des réexports `#[cfg(test)]` et de leurs usages crate-root
parsing TOML/JSON
contrôle du diff exact contre pre.004
contrôle dintégrité ZIP et reproduction overlay
```
Cargo nest pas disponible dans lenvironnement de préparation ; aucune compilation locale nest déclarée réussie.
## Validation opérateur requise
```bash
cargo fmt --all
python3 scripts/audit_rust_workspace_rules.py
cargo check --workspace
cargo clippy --workspace --all-targets
cargo test -p ksp-app-wallet-desk
cargo test --workspace
KSP_WALLETS_DIRECTORY=var/wallet-desk-pre004 cargo tauri dev -c crates/ksp-app-wallet-desk/tauri.conf.json
```
Aucune commande npm nest nécessaire. `cargo tauri build -c crates/ksp-app-wallet-desk/tauri.conf.json` reste réservé à la toute dernière validation de `0.2.6`.
## Questions ouvertes
```text
aucune pour ce fix ciblé
```
## Suite
Après validation sans warning de `pre.004-fix.001`, `pre.005` peut introduire la création Wallet et le lifecycle/session Rust planifiés.