v0.2.6-pre.001-fix.002
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/plans/013-V0_2_6_WALLET_DESK_PLAN.md -->
|
||||
<!-- version: 3 -->
|
||||
<!-- version: 4 -->
|
||||
|
||||
# Plan `0.2.6` — Wallet Desk
|
||||
|
||||
@@ -19,7 +19,7 @@ La base auditée est la release stable fournie `v0.2.5`, avec `workspace.package
|
||||
|
||||
`0.2.6-pre.001` reste une tranche d'audit, conception, inventaire et sizing. Elle ne crée pas encore la crate Tauri ni les fichiers Config runtime. Son rôle est de produire une trajectoire suffisamment détaillée pour que les prereleases suivantes implémentent des objectifs positifs et mesurables sans renégocier les frontières au fil des corrections.
|
||||
|
||||
Les validations opérateur du `2026-08-20` ont ensuite confirmé la base `pre.001` : `cargo fmt --all`, `python3 scripts/audit_rust_workspace_rules.py`, `cargo check --workspace` et `cargo clippy --workspace --all-targets` sont verts, sans warning signalé. Le présent plan intègre les corrections documentaires de `pre.001-fix.001` sans modifier la version Cargo, car aucun fichier code/build/runtime/configuration exécutable n'est touché.
|
||||
Les validations opérateur du `2026-08-20` ont ensuite confirmé la base `pre.001` : `cargo fmt --all`, `python3 scripts/audit_rust_workspace_rules.py`, `cargo check --workspace` et `cargo clippy --workspace --all-targets` sont verts, sans warning signalé. Le présent plan intègre les corrections documentaires de `pre.001-fix.001` puis `pre.001-fix.002` sans modifier la version Cargo, car aucun fichier code/build/runtime/configuration exécutable n'est touché. `pre.001-fix.002` aligne en particulier le workflow frontend sur la règle KSP : npm direct sert uniquement à installer ou mettre à jour les dépendances ; les cycles dev/build passent exclusivement par Cargo/Tauri.
|
||||
|
||||
## 2. Sources relues et hiérarchie appliquée
|
||||
|
||||
@@ -95,8 +95,9 @@ splash + main window
|
||||
TS-RS à la frontière DTO applicative
|
||||
capabilities Tauri explicites
|
||||
bridge frontend -> Rust -> ksp-logging-lib
|
||||
npm run check = tsc --noEmit
|
||||
beforeBuildCommand = build frontend de production par Tauri
|
||||
npm direct uniquement pour installer/mettre à jour les dépendances de package.json
|
||||
beforeDevCommand = frontend dev déclenché automatiquement par cargo tauri dev
|
||||
beforeBuildCommand = build frontend de production déclenché automatiquement par cargo tauri build
|
||||
```
|
||||
|
||||
`SimpleBar` et `resize-observer-polyfill` sont conservés comme éléments du gabarit desktop, même si Wallet Desk ne les consomme pas tous dès le premier écran métier. Ils évitent de recréer un shell divergent du template éprouvé.
|
||||
@@ -1083,15 +1084,25 @@ Transport error sûr
|
||||
credential absent erreur/log
|
||||
```
|
||||
|
||||
## 20. Tests frontend
|
||||
## 20. Validation frontend
|
||||
|
||||
Baseline :
|
||||
Aucun script npm applicatif n'est lancé directement pour valider Wallet Desk. npm est utilisé directement uniquement lors de l'installation initiale ou de la mise à jour des dépendances déclarées dans `package.json` :
|
||||
|
||||
```bash
|
||||
npm run check --prefix crates/ksp-app-wallet-desk
|
||||
cd crates/ksp-app-wallet-desk
|
||||
npm i -D
|
||||
# ou, lors d'une mise à jour des packages déjà déclarés :
|
||||
npm update
|
||||
cd ../..
|
||||
```
|
||||
|
||||
Tests ciblés à forte valeur :
|
||||
Le cycle normal de développement/validation frontend passe par Tauri depuis la racine du workspace :
|
||||
|
||||
```bash
|
||||
cargo tauri dev -c crates/ksp-app-wallet-desk/tauri.conf.json
|
||||
```
|
||||
|
||||
Tauri déclenche alors automatiquement le script configuré dans `beforeDevCommand`. Les contrôles fonctionnels frontend à forte valeur portent notamment sur :
|
||||
|
||||
```text
|
||||
DataTable init/refresh/destroy sans duplication
|
||||
@@ -1105,7 +1116,7 @@ modal requis avant opérations privilégiées
|
||||
SimpleBar/resize lifecycle sans fuite d'event listener
|
||||
```
|
||||
|
||||
`npm run check` ne construit pas le bundle de production.
|
||||
Le build frontend de production n'est jamais lancé directement avec npm. Il est déclenché par Tauri via `beforeBuildCommand` uniquement lors du `cargo tauri build` final.
|
||||
|
||||
## 21. Smoke Devnet opt-in
|
||||
|
||||
@@ -1221,7 +1232,8 @@ SimpleBar + resize-observer-polyfill
|
||||
TS-RS foundation
|
||||
logging frontend/Rust
|
||||
capabilities initiales
|
||||
npm run check
|
||||
installation npm uniquement si package.json vient d'être créé/modifié
|
||||
parcours cargo tauri dev via beforeDevCommand
|
||||
```
|
||||
|
||||
Le shell peut afficher des données mockées/runtime minimales, mais doit déjà valider navigation, scroll, layout et logging.
|
||||
@@ -1417,7 +1429,7 @@ dépendances et versions finales réauditées
|
||||
commandes smoke documentées
|
||||
prompt de démarrage 0.2.7 préparé
|
||||
validation Rust workspace finale
|
||||
npm run check final
|
||||
parcours fonctionnel cargo tauri dev final
|
||||
cargo tauri build en toute dernière opération
|
||||
```
|
||||
|
||||
@@ -1451,12 +1463,24 @@ Tests ciblés pendant le développement. Aux checkpoints globaux :
|
||||
cargo test --workspace
|
||||
```
|
||||
|
||||
Frontend :
|
||||
Lors de la création initiale de `package.json` ou d'une modification de ses dépendances, npm est utilisé directement uniquement pour installer ou mettre à jour les packages :
|
||||
|
||||
```bash
|
||||
npm run check --prefix crates/ksp-app-wallet-desk
|
||||
cd crates/ksp-app-wallet-desk
|
||||
npm i -D
|
||||
# ou, pour mettre à jour les packages déclarés :
|
||||
npm update
|
||||
cd ../..
|
||||
```
|
||||
|
||||
Le parcours normal de développement et de validation fonctionnelle frontend passe par :
|
||||
|
||||
```bash
|
||||
cargo tauri dev -c crates/ksp-app-wallet-desk/tauri.conf.json
|
||||
```
|
||||
|
||||
Tauri exécute automatiquement le `beforeDevCommand` configuré. Aucun script npm applicatif de contrôle, développement ou build n'est lancé directement par l'opérateur.
|
||||
|
||||
Candidate finale :
|
||||
|
||||
```bash
|
||||
@@ -1466,11 +1490,11 @@ cargo check --workspace
|
||||
cargo clippy --workspace --all-targets
|
||||
cargo test -p ksp-app-wallet-desk
|
||||
cargo test --workspace
|
||||
npm run check --prefix crates/ksp-app-wallet-desk
|
||||
cargo tauri dev -c crates/ksp-app-wallet-desk/tauri.conf.json
|
||||
cargo tauri build -c crates/ksp-app-wallet-desk/tauri.conf.json
|
||||
```
|
||||
|
||||
Le build Tauri reste la dernière opération. Le smoke Devnet opt-in est exécuté séparément.
|
||||
`cargo tauri build -c crates/ksp-app-wallet-desk/tauri.conf.json` reste **la toute dernière opération** de validation. Il déclenche lui-même le build frontend via `beforeBuildCommand`. Le smoke Devnet opt-in est exécuté séparément avant cette dernière opération lorsqu'il appartient au checkpoint final.
|
||||
|
||||
## 26. Hors périmètre confirmé
|
||||
|
||||
@@ -1520,19 +1544,20 @@ La release stable est clôturable si :
|
||||
- aucun secret Wallet n'entre dans les documents JSON Config, les logs ou le storage frontend ;
|
||||
- les secrets Wallet en process env/`.env` restent possédés et résolus par Config ;
|
||||
- capabilities Tauri sont auditées et la CSP n'est modifiée que si un besoin concret le justifie ;
|
||||
- tests Rust/frontend et smoke retenu sont documentés/validés ;
|
||||
- tests Rust, parcours frontend via `cargo tauri dev` et smoke retenu sont documentés/validés ;
|
||||
- README/USAGE, validation, roadmap et prompt `0.2.7` sont synchronisés ;
|
||||
- le build Tauri final est vert et exécuté en dernière opération.
|
||||
|
||||
## 29. Suite après `pre.001-fix.001`
|
||||
## 29. Suite après `pre.001-fix.002`
|
||||
|
||||
Les validations opérateur de `pre.001` sont vertes. `pre.001-fix.001` est un correctif documentaire : il ne modifie pas `workspace.package.version`, qui reste `0.2.6-pre.1`.
|
||||
Les validations opérateur de `pre.001` sont vertes. `pre.001-fix.001` puis `pre.001-fix.002` sont des correctifs documentaires : ils ne modifient pas `workspace.package.version`, qui reste `0.2.6-pre.1`. `pre.001-fix.002` corrige la règle et le plan pour supprimer toute validation frontend standalone par script npm et réserver les commandes npm directes à l'installation/mise à jour des dépendances.
|
||||
|
||||
La séquence Git attendue conserve l'historique réel :
|
||||
|
||||
```text
|
||||
v0.2.6-pre.001
|
||||
v0.2.6-pre.001-fix.001
|
||||
v0.2.6-pre.001-fix.002
|
||||
```
|
||||
|
||||
Après application/commit du fix documentaire, `pre.002` démarre la crate Tauri et le shell complet du gabarit, avec Bootstrap, Font Awesome, DataTables/Select, SimpleBar, resize-observer-polyfill, splash/main et logging bridge.
|
||||
|
||||
Reference in New Issue
Block a user