96 lines
4.1 KiB
Markdown
96 lines
4.1 KiB
Markdown
<!-- file: docs/validation/001-V0_1_4_CONFIG_DESKTOP.md -->
|
||
<!-- version: 2 -->
|
||
|
||
# Validation finale `0.1.4` — Config Desk
|
||
|
||
## Objet
|
||
|
||
Cette matrice ferme fonctionnellement `ksp-app-config-desk` avant `0.1.4-rel.001`. Les preuves détaillées restent dans `deltas/0.1.4/` et dans les logs de validation opérateur.
|
||
|
||
## Fonctionnel déjà validé avant `pre.019`
|
||
|
||
- [X] splash -> fenêtre principale ;
|
||
- [X] inventaire Documents depuis le registre Config ;
|
||
- [X] diagnostic JSON/schema/sémantique/effective et réparation de source via Config ;
|
||
- [X] inspection `default_profile`, profils, globals/effective et provenance sûre ;
|
||
- [X] rapport Environnement sûr ;
|
||
- [X] create/update/remove `.env` exclusivement via Config ;
|
||
- [X] shadowing process > `.env` observable ;
|
||
- [X] reveal Secret séparé, privilégié, transitoire et non persisté dans l’UI ;
|
||
- [X] aucun `window.alert` / `window.confirm` / `window.prompt` applicatif ;
|
||
- [X] éditeur Logging typé multi-profils, 0/1/N file sinks et target filters ;
|
||
- [X] persistence atomique et hot reload immédiat ;
|
||
- [X] rollback source/runtime sur échec ;
|
||
- [X] profil runtime explicite distinct de `default_profile` ;
|
||
- [X] génération runtime observable ;
|
||
- [X] fichiers de logs distincts par lancement avec identité applicative + timestamp ;
|
||
- [X] panneau Test Logging backend et bridge frontend ;
|
||
- [X] routing `target`/`domain`/niveau démontré avant/après hot reload ;
|
||
- [X] registre d’éditeurs spécialisés `file_id -> view` ;
|
||
- [X] audit bootstrap fallback avant installation du subscriber ;
|
||
- [X] audits Config ownership / Logging ownership / desktop security.
|
||
|
||
## Baseline de release `pre.019`
|
||
|
||
- [X] `std.logging.json` canonique revenu à `info`/`warn` ;
|
||
- [X] profil de test manuel retiré de la source canonique ;
|
||
- [X] TODO bloquants `0.1.4` fermés ;
|
||
- [X] retour Rust -> console WebKit explicitement reporté hors `0.1.4` ;
|
||
- [X] README/USAGE/plan/roadmap/prompt suivant synchronisés ;
|
||
- [X] aucun `PRESENTATION.md` ajouté.
|
||
|
||
## Validation technique finale exécutée sur `pre.019`
|
||
|
||
Exécuter dans cet ordre :
|
||
|
||
```bash
|
||
cargo fmt --all
|
||
cargo check --workspace
|
||
cargo clippy --workspace --all-targets
|
||
cargo test --workspace
|
||
cargo tree -p ksp-app-config-desk
|
||
cargo tree -p ksp-config-lib
|
||
cargo tree -p ksp-logging-lib
|
||
cd crates/ksp-app-config-desk
|
||
npm run check
|
||
cd ../..
|
||
cargo tauri dev -c crates/ksp-app-config-desk/tauri.conf.json
|
||
```
|
||
|
||
Parcours fonctionnel final minimum :
|
||
|
||
1. vérifier le démarrage et `active_profile=local_dev` ;
|
||
2. vérifier que la baseline Logging affichée est `info`/`warn` ;
|
||
3. Documents -> `cfg.std.logging` -> éditeur Logging ;
|
||
4. vérifier Documents, Profils, Environnement et Logging sans mutation inattendue ;
|
||
5. émettre un test Logging `info` backend et frontend ;
|
||
6. confirmer qu’aucun profil de test manuel n’est présent dans la source canonique.
|
||
|
||
Lorsque tout ce qui précède est validé, exécuter **en toute dernière opération** :
|
||
|
||
```bash
|
||
cargo tauri build -c crates/ksp-app-config-desk/tauri.conf.json
|
||
```
|
||
|
||
Le build final doit produire les bundles attendus pour la plateforme. Aucun `vite build` standalone n’est exécuté avant lui.
|
||
|
||
### Résultat opérateur — 2026-08-17
|
||
|
||
- [X] `cargo fmt --all` ;
|
||
- [X] `cargo check --workspace` ;
|
||
- [X] `cargo clippy --workspace --all-targets` ;
|
||
- [X] `cargo test --workspace` ;
|
||
- [X] `cargo tree -p ksp-app-config-desk` ;
|
||
- [X] `cargo tree -p ksp-config-lib` ;
|
||
- [X] `cargo tree -p ksp-logging-lib` ;
|
||
- [X] `npm run check` avec `tsc --noEmit` uniquement ;
|
||
- [X] `cargo tauri dev -c crates/ksp-app-config-desk/tauri.conf.json` avec `active_profile=local_dev` et baseline de release `info` ;
|
||
- [X] parcours fonctionnel final ;
|
||
- [X] `cargo tauri build -c crates/ksp-app-config-desk/tauri.conf.json` exécuté en toute dernière opération.
|
||
|
||
Le build final a produit les trois bundles Linux attendus : `.deb`, `.rpm` et `.AppImage`. Aucun contrôle supplémentaire n’a été requis après ce build pour valider `pre.019`.
|
||
|
||
## Passage à `rel.001`
|
||
|
||
La séquence a réussi. `0.1.4-rel.001` synchronise `workspace.package.version = "0.1.4"`, le changelog stable et les statuts roadmap/plan. Après validation du commit de release, le tag stable attendu est `v0.1.4`.
|