137 lines
4.1 KiB
Markdown
137 lines
4.1 KiB
Markdown
<!-- file: deltas/0.2.6/pre.004-fix.001.md -->
|
||
<!-- version: 1 -->
|
||
|
||
# Delta `0.2.6-pre.004-fix.001` — fermeture des warnings d’import 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 n’est 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 lorsqu’il 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 l’environnement 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 d’intégrité ZIP et reproduction overlay
|
||
```
|
||
|
||
Cargo n’est pas disponible dans l’environnement de préparation ; aucune compilation locale n’est 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 n’est 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.
|