v0.1.4-pre.019

This commit is contained in:
2026-08-17 08:55:24 +02:00
parent 8f7df2d06e
commit 8099b6cb39
15 changed files with 422 additions and 199 deletions

View File

@@ -1,5 +1,5 @@
<!-- file: crates/ksp-app-config-desk/USAGE.md -->
<!-- version: 22 -->
<!-- version: 23 -->
# Utilisation de `ksp-app-config-desk`
@@ -85,7 +85,7 @@ splash
Ils sont convertis côté Rust vers des targets KSP statiques `ksp-app-config-desk.frontend*` et émis uniquement via `ksp-logging-lib`. Un niveau différent de `trace`, `debug`, `info`, `warn` ou `error`, ou un `targetId` non whitelisté, est rejeté avec un `CommandErrorDto` sûr.
`main.ts` et `splash.ts` installent aussi le bridge `console.*`; l'échec éventuel d'un `invoke` est écrit uniquement sur la console WebView originale afin d'éviter une boucle de logging. Ce bridge conserve donc les messages JavaScript dans la console WebKit et les transmet vers Rust, mais il ne reflète pas encore les événements Rust généraux dans cette console. `attachConsole()` du package officiel nécessite que le subscriber Rust publie vers une `WebviewLayer`; cette couche devra être raccordée plus tard à l'ownership de `ksp-logging-lib` plutôt que d'installer un subscriber Tauri parallèle.
`main.ts` et `splash.ts` installent aussi le bridge `console.*`; l'échec éventuel d'un `invoke` est écrit uniquement sur la console WebView originale afin d'éviter une boucle de logging. Ce bridge conserve les messages JavaScript dans la console WebKit et les transmet vers Rust. Le retour général Rust -> console WebKit est reporté hors `0.1.4`; il devra être ajouté ultérieurement sous ownership de `ksp-logging-lib`, sans installer de subscriber Tauri parallèle ni créer de boucle avec ce bridge.
## Bindings TS-RS
@@ -257,10 +257,10 @@ Au démarrage de Config Desk, l'identité de lancement est construite une seule
20260816-182519.123Z-p4242
```
Pour un fichier source configuré comme `debug/ksp-debug.log`, le runtime peut donc exposer un prefix comme :
Avec la baseline de release configurée sur `info/ksp-info.log`, le runtime peut exposer un prefix comme :
```text
ksp-app-config-desk.20260816-182519.123Z-p4242.ksp-debug.log
ksp-app-config-desk.20260816-182519.123Z-p4242.ksp-info.log
```
Le même `launch_timestamp` doit rester affiché après chaque hot reload du processus courant. Après fermeture puis nouveau lancement de l'application, il doit changer. La rotation `daily` ou `hourly` peut ajouter sa composante de rotation, mais deux lancements ne doivent plus partager le même prefix applicatif.
@@ -283,6 +283,21 @@ Le bouton d'application explicite est désactivé lorsque le brouillon est sale
Si la résolution ou la préparation du profil explicite échoue, `ksp_logging_lib::reinitialize()` ne remplace pas les layers actifs et la génération ne doit pas avancer. Une sauvegarde de document qui échoue pendant l'application runtime conserve également l'ancien runtime et restaure la source précédente lorsqu'elle avait été modifiée.
## Baseline Logging de release
Après les tests `debug`/`trace`, la configuration canonique `0.1.4` revient à :
```text
default_filter = warn
console.filter.level = info
file.all.info = info/ksp-info.log @ info
ksp-config-lib = info
ksp-logging-lib = info
ksp-app-config-desk = info
```
Pour rouvrir un diagnostic, augmenter temporairement un niveau depuis léditeur Logging, utiliser **Sauvegarder et appliquer**, puis restaurer `info`/`warn` avant la prochaine clôture de release.
## Validation desktop de robustesse
La validation suit un ordre strict. Depuis la racine du workspace, valider dabord Rust :