v0.2.6-pre.002
This commit is contained in:
202
deltas/0.2.6/pre.002.md
Normal file
202
deltas/0.2.6/pre.002.md
Normal file
@@ -0,0 +1,202 @@
|
||||
<!-- file: deltas/0.2.6/pre.002.md -->
|
||||
<!-- version: 1 -->
|
||||
|
||||
# Delta `0.2.6-pre.002` — crate Tauri et shell Wallet Desk
|
||||
|
||||
## Base requise
|
||||
|
||||
```text
|
||||
0.2.6-pre.001-fix.002 appliquée
|
||||
workspace.package.version = 0.2.6-pre.1
|
||||
```
|
||||
|
||||
Les validations opérateur de `pre.001` sont vertes : `cargo fmt --all`, audit structurel Python, `cargo check --workspace` et `cargo clippy --workspace --all-targets`.
|
||||
|
||||
## Type de livraison
|
||||
|
||||
```text
|
||||
ksp-general-0.2.6-pre.002.zip
|
||||
```
|
||||
|
||||
Cette tranche est technique : création de crate, Rust/Tauri, frontend et configuration de build. Elle incrémente donc `workspace.package.version` vers `0.2.6-pre.2`.
|
||||
|
||||
## Objet
|
||||
|
||||
Matérialiser la première application `ksp-app-wallet-desk` sans commencer les fonctionnalités Wallet métier prévues à partir de `pre.003`/`pre.004`.
|
||||
|
||||
Le delta fournit :
|
||||
|
||||
```text
|
||||
crate Rust mixte lib + bin
|
||||
single-instance launcher
|
||||
normalisation CWD debug workspace
|
||||
bootstrap Config + Logging commun
|
||||
fallback Logging borné
|
||||
splash + main window
|
||||
bridge frontend -> Rust -> ksp-logging-lib
|
||||
DTO TS-RS foundation
|
||||
ports Vite/HMR 1432/1433
|
||||
Bootstrap
|
||||
Font Awesome
|
||||
DataTables Bootstrap 5 + Select
|
||||
SimpleBar
|
||||
resize-observer-polyfill
|
||||
shell Dashboard/Wallets/Create-Import/Details/Security/Diagnostics
|
||||
DataTable Wallet réelle mais volontairement vide en pre.002
|
||||
capabilities core:default + tracing:default
|
||||
CSP null comme Config Desk
|
||||
```
|
||||
|
||||
## Frontières conservées
|
||||
|
||||
`pre.002` ne dépend pas encore de `ksp-wallet-lib` ni de `ksp-onchain-transport-lib`. La seule composition KSP active dans la nouvelle app est celle nécessaire au gabarit desktop :
|
||||
|
||||
```text
|
||||
ksp-app-wallet-desk
|
||||
-> ksp-config-lib
|
||||
-> ksp-core-lib
|
||||
-> ksp-logging-lib
|
||||
-> Tauri
|
||||
```
|
||||
|
||||
Aucune logique `.kspwallet`, aucun inventory filesystem, aucun secret Wallet et aucun RPC ne sont simulés dans le frontend.
|
||||
|
||||
## Frontend et npm
|
||||
|
||||
Le `package.json` reprend la baseline Config Desk :
|
||||
|
||||
```text
|
||||
@fltsci/tauri-plugin-tracing ^0.3
|
||||
@fortawesome/fontawesome-free ^7.3
|
||||
@tauri-apps/api ^2.11
|
||||
bootstrap ^5.3
|
||||
datatables.net-bs5 ^3.0
|
||||
datatables.net-select-bs5 ^4.0
|
||||
resize-observer-polyfill ^1.5
|
||||
simplebar ^6.3
|
||||
```
|
||||
|
||||
Les outils restent dans `devDependencies`. Aucun script `check` standalone n'est créé. Les scripts `dev` et `build` existent uniquement parce que Tauri les appelle via `beforeDevCommand` et `beforeBuildCommand`.
|
||||
|
||||
Lors de l'application de ce delta, l'installation initiale des packages se fait depuis la crate avec :
|
||||
|
||||
```bash
|
||||
cd crates/ksp-app-wallet-desk
|
||||
npm i -D
|
||||
cd ../..
|
||||
```
|
||||
|
||||
Le lockfile npm et `node_modules` restent non versionnés.
|
||||
|
||||
## Dépendances auditées
|
||||
|
||||
Au `2026-08-20`, les versions actuelles vérifiées incluent :
|
||||
|
||||
```text
|
||||
@tauri-apps/api 2.11.1
|
||||
@tauri-apps/cli 2.11.4
|
||||
@fortawesome/fontawesome-free 7.3.1
|
||||
datatables.net-bs5 3.0.1
|
||||
datatables.net-select-bs5 4.0.0
|
||||
resize-observer-polyfill 1.5.1
|
||||
simplebar 6.3.3
|
||||
```
|
||||
|
||||
Les ranges du gabarit couvrent ces versions sans changement de génération.
|
||||
|
||||
## Shell et logging
|
||||
|
||||
Le splash reprend les paramètres Config-owned existants :
|
||||
|
||||
```text
|
||||
KSP_DESK_SPLASH_MINIMUM_MS
|
||||
KSP_DESK_SPLASH_FADE_MS
|
||||
```
|
||||
|
||||
Le frontend instrumente :
|
||||
|
||||
```text
|
||||
chargement main/splash
|
||||
navigation
|
||||
mise à jour DOM des vues
|
||||
initialisation DataTables
|
||||
clics d'actions shell
|
||||
IPC runtime status
|
||||
ordres/animations splash
|
||||
```
|
||||
|
||||
Les targets frontend sont whitelisted (`frontend`, `main`, `splash`) avant réémission via `ksp-logging-lib`.
|
||||
|
||||
## Tests ajoutés
|
||||
|
||||
```text
|
||||
public API run()
|
||||
contrat Tauri ports/windows/beforeDev/beforeBuild/CSP
|
||||
baseline dependencies et absence de script npm check
|
||||
présence DataTables/Select/SimpleBar/ResizeObserver/Font Awesome
|
||||
capabilities initiales core + tracing seulement
|
||||
absence window.alert/confirm/prompt/localStorage/sessionStorage
|
||||
DTO CommandError sans context arbitraire
|
||||
whitelist frontend logging
|
||||
contrats splash
|
||||
```
|
||||
|
||||
## Fichiers principaux ajoutés
|
||||
|
||||
```text
|
||||
crates/ksp-app-wallet-desk/Cargo.toml
|
||||
crates/ksp-app-wallet-desk/build.rs
|
||||
crates/ksp-app-wallet-desk/capabilities/default.json
|
||||
crates/ksp-app-wallet-desk/package.json
|
||||
crates/ksp-app-wallet-desk/tauri.conf.json
|
||||
crates/ksp-app-wallet-desk/tsconfig.json
|
||||
crates/ksp-app-wallet-desk/vite.config.ts
|
||||
crates/ksp-app-wallet-desk/src/**
|
||||
crates/ksp-app-wallet-desk/frontend/**
|
||||
crates/ksp-app-wallet-desk/tests/**
|
||||
crates/ksp-app-wallet-desk/unit_tests/**
|
||||
```
|
||||
|
||||
Les assets fonts/logo/splash/favicon sont repris du gabarit Config Desk.
|
||||
|
||||
## Fichiers modifiés hors crate
|
||||
|
||||
```text
|
||||
Cargo.toml
|
||||
ROADMAP.md
|
||||
docs/000-README.md
|
||||
docs/plans/013-V0_2_6_WALLET_DESK_PLAN.md
|
||||
```
|
||||
|
||||
## Version technique
|
||||
|
||||
```text
|
||||
workspace.package.version = 0.2.6-pre.2
|
||||
commit = v0.2.6-pre.002
|
||||
```
|
||||
|
||||
Aucun tag stable.
|
||||
|
||||
## Validation opérateur requise
|
||||
|
||||
Après application :
|
||||
|
||||
```bash
|
||||
cd crates/ksp-app-wallet-desk
|
||||
npm i -D
|
||||
cd ../..
|
||||
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 tauri dev -c crates/ksp-app-wallet-desk/tauri.conf.json
|
||||
```
|
||||
|
||||
Le parcours `cargo tauri dev` doit vérifier visuellement et dans les logs : splash, ouverture de la fenêtre principale, navigation des six vues, DataTable vide fonctionnelle, icônes Font Awesome, scrolling SimpleBar et bridge frontend Logging.
|
||||
|
||||
`cargo tauri build -c crates/ksp-app-wallet-desk/tauri.conf.json` **n'est pas exécuté en `pre.002`** : il reste réservé à la toute dernière validation de la release conformément à `KSP-APP-034`.
|
||||
|
||||
## Suite
|
||||
|
||||
`pre.003` ajoute `cfg.std.wallet`, le composite Wallet Desk, `wallets_directory` global, `wallets_subdirectory` par profil et la préparation/création du répertoire effectif.
|
||||
Reference in New Issue
Block a user