v0.2.6-pre.008-fix.001

This commit is contained in:
2026-08-21 11:50:18 +02:00
parent 1a9edd14e1
commit 4db4087b8a
8 changed files with 34 additions and 13 deletions

File diff suppressed because one or more lines are too long

View File

@@ -1,5 +1,5 @@
<!-- file: docs/plans/013-V0_2_6_WALLET_DESK_PLAN.md -->
<!-- version: 20 -->
<!-- version: 21 -->
# Plan `0.2.6` — Wallet Desk
@@ -1464,6 +1464,27 @@ La source n'est jamais parsée en TypeScript et son chemin n'est jamais sériali
Le plugin Dialog n'est pas exposé au guest JavaScript : aucun package npm `@tauri-apps/plugin-dialog`, aucune permission `dialog:*` et aucun plugin filesystem ne sont ajoutés. Le frontend ne reçoit que `source_name` (basename), `format` et `pubkey`. Les nouveaux passwords OWNER/VIEW transitent uniquement HTML/TypeScript -> Rust pour l'opération demandée, sont déplacés dans les wrappers Wallet, puis purgés côté frontend ; ils ne reviennent jamais dans une réponse.
#### `pre.008-fix.001` — conformité Clippy du staging import
Statut : **préparé après validation opérateur de `0.2.6-pre.008`**.
Le runtime et les tests fonctionnels de `pre.008` sont verts. Le gate `cargo clippy --workspace --all-targets` révèle uniquement deux warnings idiomatiques dans Wallet Desk :
```text
mem_replace_option_with_some -> utiliser Option::replace
explicit_auto_deref -> utiliser &mut bytes
```
Le fix applique strictement ces deux remédiations :
```rust
let previous = (*slot).replace(staged);
let read_result = reader.read_to_end(&mut bytes).await;
```
Aucun changement nest apporté au picker natif, à `Zeroizing<Vec<u8>>`, aux bornes de lecture, aux adapters Wallet dimport, au no-clobber, aux credentials, aux DTOs ou au frontend.
### `pre.009` — metadata OWNER
Objectifs :