v0.3.7-pre.008-fix.001

This commit is contained in:
2026-09-02 17:02:26 +02:00
parent 48d26b43f9
commit d7db8d69e0
7 changed files with 160 additions and 9 deletions

View File

@@ -1,5 +1,5 @@
<!-- file: docs/validation/024-V0_3_7_BACKFILL_DESK.md -->
<!-- version: 11 -->
<!-- version: 12 -->
# Validation v0.3.7 — Backfill Desk
@@ -364,3 +364,20 @@ La note UX ajoutée pendant cette tranche est reportée à `pre.012` : l'input a
- [X] capabilities Tauri inchangées : `core:default + tracing:default` ;
- [X] audits statiques Rust/Markdown propres dans l'environnement d'assemblage ;
- [ ] `cargo fmt/check/clippy/test` de `pre.008` à rejouer par l'opérateur ; `cargo`/`rustfmt` restent absents du sandbox.
## 18. Correctif `pre.008-fix.001` — futures Job Backfill `Send`
Le gate opérateur de `pre.008` confirme que les audits Rust/Markdown sont propres, puis `cargo check --workspace` bloque l'intégration Tauri du Start : `tauri::async_runtime::spawn` exige une future `Send + 'static`, alors que deux alias privés de `ksp-job-backfill-lib` effaçaient la propriété `Send` des futures discovery et candidate-processing.
`StoreApiFuture` était déjà `Send`; le défaut se trouvait uniquement dans `SignaturePageFuture` et `CandidateProcessFuture`. Le correctif ajoute `std::marker::Send` à ces deux objets future privés et verrouille ce contrat par deux canaries compile-time dédiées.
### Gate du fix
- [X] `SignaturePageFuture` impose `Future + Send` ;
- [X] `CandidateProcessFuture` impose `Future + Send` ;
- [X] canary discovery compile-time `Send` ajoutée ;
- [X] canary execution compile-time `Send` ajoutée ;
- [X] aucune API publique Job, logique de requête, Start Desk, Store, Transport ou frontend n'est modifiée ;
- [X] audits statiques Rust/Markdown rejoués dans l'environnement d'assemblage ;
- [ ] replay opérateur `cargo fmt/check/clippy/test` de `pre.008-fix.001` à exécuter.