4.4 KiB
0.1.4-pre.005-fix.001 — Classification npm et commande Tauri workspace
1. Motif du fix
pre.005 a correctement introduit le frontend Tauri/Vite et le plugin tracing, mais son package.json classait à tort toutes les dépendances frontend sous devDependencies. La documentation de lancement utilisait également une forme cargo tauri dev adaptée à une application isolée, alors que KSP est un workspace Rust destiné à contenir plusieurs applications Tauri.
Le correctif ne modifie pas le périmètre fonctionnel de pre.005.
2. Version technique
Le fix modifie package.json et la configuration de développement effective ; le signal Cargo devient donc :
workspace.package.version = "0.1.4-pre.5.fix.1"
La version applicative frontend/Tauri reste 0.1.4, conformément à la politique KSP actuelle.
3. Classification npm corrigée
Les bibliothèques consommées par le bundle applicatif sont sous dependencies :
@fltsci/tauri-plugin-tracing
@fortawesome/fontawesome-free
@tauri-apps/api
bootstrap
resize-observer-polyfill
simplebar
Les outils de build/développement et typings sont sous devDependencies :
@tauri-apps/cli
@types/bootstrap
@types/node
sass-embedded
typescript
vite
Les contraintes restent volontairement au niveau de génération compatible. @types/bootstrap utilise ^5.2 et @tauri-apps/cli ^2.11.
Les scripts preview et tauri du gabarit bot3 sont également restaurés. Le workflow opérateur KSP n'utilise toutefois pas npm pour lancer directement l'application.
4. Workflow d'installation et de lancement
La première installation frontend se fait depuis la crate :
cd crates/ksp-app-config-desk
npm i -D
cd ../../
npm i -D sans nom de package installe les dépendances déjà déclarées dans package.json; il ne change pas leur classification existante. Les lockfiles restent ignorés et non versionnés.
Le développement reprend ensuite depuis la racine du workspace :
cargo tauri dev -c crates/ksp-app-config-desk/tauri.conf.json
Le build utilise de même :
cargo tauri build -c crates/ksp-app-config-desk/tauri.conf.json
Cette sélection explicite par -c est nécessaire au gabarit KSP multi-app et évite toute ambiguïté lorsque plusieurs crates Tauri coexistent dans le même workspace.
5. Règles et plan synchronisés
RULES_KSP.md distingue désormais explicitement :
dependenciespour les bibliothèques runtime/bundle frontend ;devDependenciespour tooling et@types/*;- npm direct uniquement pour la gestion des dépendances ;
- retour à la racine du workspace après installation npm ;
- sélection de chaque application Tauri avec
-c crates/<app>/tauri.conf.json.
Le plan 0.1.4 est synchronisé avec la même convention.
6. Tracing
La correction ne retire ni ne modifie l'intégration tracing de pre.005 :
Rust : tauri-plugin-tracing
Frontend : @fltsci/tauri-plugin-tracing
Capability: tracing:default
7. Fichiers modifiés
| Fichier | Action |
|---|---|
Cargo.toml |
modifié |
crates/ksp-app-config-desk/package.json |
modifié |
crates/ksp-app-config-desk/README.md |
modifié |
crates/ksp-app-config-desk/USAGE.md |
modifié |
docs/rules/RULES_KSP.md |
modifié |
docs/plans/006-V0_1_4_CONFIG_DESKTOP_PLAN.md |
modifié |
deltas/0.1.4/pre.005-fix.001.md |
ajouté |
8. Validations à exécuter après application
Depuis la racine du workspace, après installation npm :
cargo fmt --all
cargo check --workspace
cargo clippy --workspace --all-targets
cargo test -p ksp-app-config-desk
cargo test -p ksp-config-lib
cargo tree -p ksp-app-config-desk
cargo tauri dev -c crates/ksp-app-config-desk/tauri.conf.json
Le test desktop doit confirmer au minimum que Tauri lance lui-même npm run dev, que Vite reste sur 1430/1431, que la fenêtre splash s'ouvre et qu'aucune commande npm de démarrage manuel n'est nécessaire.
9. Suite
Après validation de ce fix, la tranche suivante reste pre.006 : bootstrap backend, AppState, intégration ksp-config-lib / ksp-logging-lib, ownership du LoggingGuard et premiers DTO TS-RS réels.