Files
khadhroony-solana-project/deltas/0.1.4/pre.018-fix.001.md

3.2 KiB

Delta 0.1.4-pre.018-fix.001 — validation frontend/Tauri et conformité Clippy

Base

0.1.4-pre.018 a été appliquée et le parcours fonctionnel du registre d'éditeurs spécialisés est validé. La validation a toutefois révélé deux défauts de tranche :

  • cargo clippy --workspace --all-targets échoue sur quatre closures du nouveau test desktop_contract.rs à cause de la règle workspace clippy::implicit-return ;
  • npm run check lance inutilement vite build, alors que le build frontend de production appartient déjà à cargo tauri build via beforeBuildCommand = npm run build.

Le build Tauri a également été exécuté trop tôt dans la séquence de validation. La politique KSP est clarifiée : cargo tauri build est la dernière opération, après tous les contrôles Rust, le type-check frontend et le parcours fonctionnel tauri dev.

Corrections

Clippy

Les closures de tests/desktop_contract.rs utilisent désormais des return explicites conformément aux règles Rust KSP. Aucun #[allow(...)] n'est ajouté.

Contrôle frontend

package.json définit désormais :

npm run check -> tsc --noEmit

Le script build reste :

npm run build -> tsc && vite build

et demeure appelé exclusivement par le hook Tauri de build dans le cycle normal.

Le test de contrat desktop vérifie explicitement que :

  • beforeBuildCommand reste npm run build ;
  • build contient tsc + vite build ;
  • check vaut exactement tsc --noEmit et ne produit donc aucun bundle.

Ordre de validation

La règle normative KSP-APP-034 formalise cette politique pour toutes les applications Tauri KSP. La documentation courante fixe l'ordre suivant :

  1. cargo fmt --all ;
  2. cargo check --workspace ;
  3. cargo clippy --workspace --all-targets ;
  4. tests Rust ciblés/workspace selon la tranche ;
  5. npm run check (tsc --noEmit uniquement) ;
  6. cargo tauri dev -c crates/ksp-app-config-desk/tauri.conf.json et parcours fonctionnel ;
  7. en dernier seulement, cargo tauri build -c crates/ksp-app-config-desk/tauri.conf.json.

Le build Tauri déclenche lui-même le build frontend de production ; aucun vite build standalone n'est requis. docs/rules/RULES_KSP.md est mis à jour dans ce fix afin que cette règle ne dépende plus du seul plan 0.1.4.

Version technique

workspace.package.version = 0.1.4-pre.18.fix.1

Validation attendue

Depuis la racine :

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 test -p ksp-logging-lib

Puis :

cd crates/ksp-app-config-desk
npm run check
cd ../..
cargo tauri dev -c crates/ksp-app-config-desk/tauri.conf.json

Le parcours fonctionnel du registre spécialisé a déjà été validé sur pre.018 ; un smoke test suffit après application du fix.

Après validation de tout ce qui précède, terminer par :

cargo tauri build -c crates/ksp-app-config-desk/tauri.conf.json

Suite

Après validation de ce fix, pre.018 peut être clôturée et 0.1.4-pre.019 peut commencer comme tranche finale de clôture de 0.1.4.