4.5 KiB
Delta 0.2.6-pre.003-fix.001 — corrections Config + visibilité Logging frontend
Base requise
0.2.6-pre.003 appliquée
workspace.package.version = 0.2.6-pre.3
La validation opérateur de pre.003 a confirmé cargo fmt --all, l'audit structurel, cargo check --workspace, cargo test -p ksp-app-wallet-desk et le démarrage cargo tauri dev. Elle a également révélé un warning Clippy dans l'adapter Wallet, un test registry obsolète et une fixture Config Desk incomplète ; cargo test -p ksp-config-lib puis cargo test --workspace ne sont donc pas verts sur la livraison initiale.
Type de livraison
ksp-general-0.2.6-pre.003-fix.001.zip
Le correctif touche Rust, TypeScript et configuration runtime. Conformément à VER-ID-007/VER-ID-010, la version technique devient :
workspace.package.version = 0.2.6-pre.3.fix.1
commit = v0.2.6-pre.003-fix.001
Corrections de validation
Le warning Clippy redundant_pattern_matching de ksp-config-lib/src/wallet.rs est corrigé avec validation.is_err().
Le canari registry historique n'affirme plus qu'aucun runtime composite n'existe : cfg.composite.ksp-app-wallet-desk est maintenant un document réellement enregistré et associé à schema.composite.
Les fixtures utilisées par Config Desk sont complétées avec std.wallet.json et composite.ksp-app-wallet-desk.json. Le test d'inventory vérifie désormais Logging, Transport, Wallet et le composite enregistré au lieu d'échouer sur un fichier fixture absent.
Logging composite Wallet Desk
cfg.composite.ksp-app-wallet-desk référençait déjà le composant logging. Le correctif rend cette sélection explicite et spécifique à Wallet Desk :
logging -> cfg.std.logging / wallet_desk_dev
Le profil wallet_desk_dev ajouté à std.logging.json conserve le niveau global KSP à info, mais ouvre ksp-app-wallet-desk à trace. La console est routée à trace uniquement pour ce target prefix et un fichier dédié wallet-desk/ksp-app-wallet-desk.log reçoit également les événements trace. Les profils devnet, temporary et tests du composite utilisent tous ce profil Logging.
Cette configuration est volontairement orientée développement de Wallet Desk afin de rendre immédiatement observables les actions frontend sans rendre tous les targets KSP globalement verbeux. Elle pourra être resserrée plus tard sans modifier le bridge.
Instrumentation frontend
Le bridge existant frontend -> emit_frontend_log -> ksp-logging-lib est conservé. main.ts ajoute un listener de capture générique pour les contrôles interactifs :
button
a
input / select / textarea
[role=button] / [role=tab]
[data-view]
[data-shell-action]
Chaque clic produit un événement trace Frontend control clicked avec uniquement des métadonnées techniques sûres : tag, id, type, rôle, état disabled, data-view et data-shell-action. Le texte et la valeur du contrôle ne sont pas sérialisés ; cela évite de créer plus tard une fuite de password ou d'autre donnée sensible lorsque les formulaires Wallet seront ajoutés. Les logs sémantiques spécifiques (navigation activated, actions shell, IPC) restent en complément.
Dépendances
Aucune dépendance Cargo ou npm n'est ajoutée/modifiée. package.json et tauri.conf.json changent uniquement leur version applicative vers 0.2.6-pre.3.fix.1. Aucune commande npm directe n'est requise.
Validation opérateur requise
Après application :
cargo fmt --all
python3 scripts/audit_rust_workspace_rules.py
cargo check --workspace
cargo clippy --workspace --all-targets
cargo test -p ksp-config-lib
cargo test -p ksp-app-config-desk
cargo test -p ksp-app-wallet-desk
cargo test --workspace
KSP_WALLETS_DIRECTORY=var/wallet-desk-pre003 cargo tauri dev -c crates/ksp-app-wallet-desk/tauri.conf.json
Dans l'application, cliquer sur les boutons de navigation et les contrôles du shell doit produire des événements TRACE sous ksp-app-wallet-desk.frontend.main visibles dans la console et dans le fichier de log Wallet Desk du lancement. Aucun password/value de contrôle ne doit apparaître.
cargo tauri build -c crates/ksp-app-wallet-desk/tauri.conf.json reste exclu de ce fix et réservé à la toute dernière validation de 0.2.6.
Suite
Après validation de ce fix, pre.004 peut brancher l'inventory réel .kspwallet sur la base Config/Logging désormais cohérente.