# Delta `0.3.7-pre.008-fix.002` — canari Start ciblé sur le spawn du run ## 1. Base requise ```text 0.3.7-pre.008-fix.001 workspace.package.version = 0.3.7-pre.8.fix.1 ``` ## 2. Objectif Corriger le dernier échec du gate `pre.008` sans modifier le runtime : le canari `desktop_contract` comparait l'admission Start au premier `tauri::async_runtime::spawn` du fichier Tauri, qui appartient au shutdown Store et précède légitimement la commande `backfill_start`. ## 3. Cause Le code de production respecte déjà l'ordre attendu : ```text prepare_backfill_start(request) -> BackfillJobRuntime::new -> runtime.handle() -> single-run install -> Transport/Store acquisition -> BackfillRunLaunch -> tauri::async_runtime::spawn(run) ``` Le test utilisait cependant une recherche globale du premier marqueur `tauri::async_runtime::spawn(async move`, et sélectionnait le spawn antérieur de fermeture de Store. ## 4. Correction - conserver le contrôle `runtime.handle()` avant `single-run install` dans `AppState` ; - localiser `state.prepare_backfill_start(request)` dans `src/tauri.rs` ; - rechercher ensuite le spawn uniquement dans le suffixe de source suivant cette admission ; - ne modifier aucun code de production. ## 5. Version ```text workspace.package.version = 0.3.7-pre.8.fix.2 label = 0.3.7-pre.008-fix.002 ``` ## 6. Fichiers ajoutés ```text deltas/0.3.7/pre.008-fix.002.md ``` ## 7. Fichiers modifiés ```text Cargo.toml crates/ksp-app-backfill-desk/tests/desktop_contract.rs docs/validation/024-V0_3_7_BACKFILL_DESK.md ``` ## 8. Fichiers supprimés Aucun. ## 9. Gate opérateur ayant déclenché le fix ```text cargo fmt --all exécuté python3 scripts/audit_rust_workspace_rules.py PASS python3 scripts/audit_markdown_tables.py ... deltas/0.3.7 PASS cargo check --workspace PASS cargo clippy --workspace --all-targets PASS cargo test -p ksp-job-backfill-lib PASS — 49 unitaires + suites d'intégration cargo test -p ksp-app-backfill-desk FAIL — 11/12 desktop_contract, faux ordre prepare/spawn ``` La correction `Send` de `pre.008-fix.001` est donc confirmée par le gate ; ce fix ne la rouvre pas. ## 10. Validations exécutées dans l'environnement d'assemblage ```text python3 scripts/audit_rust_workspace_rules.py python3 scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs prompts crates deltas/0.3.7 ``` Contrôles ciblés : - le test conserve la vérification handle avant installation ; - la recherche du spawn commence après `prepare_backfill_start(request)` ; - le spawn de shutdown ne peut plus être confondu avec celui du run ; - aucun fichier de production Backfill Desk ou Job Backfill n'est modifié. ## 11. Validations non exécutées dans l'environnement d'assemblage `cargo` et `rustfmt` ne sont pas disponibles dans l'environnement d'assemblage. Gate opérateur : ```text cargo fmt --all python3 scripts/audit_rust_workspace_rules.py python3 scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs prompts crates deltas/0.3.7 cargo check --workspace cargo clippy --workspace --all-targets cargo test -p ksp-job-backfill-lib cargo test -p ksp-app-backfill-desk cargo tree -p ksp-app-backfill-desk --edges normal cargo tree -p ksp-app-backfill-desk -e features ``` ## 12. Questions ouvertes Aucune pour ce correctif.