v0.3.7-pre.008-fix.003

This commit is contained in:
2026-09-02 17:14:00 +02:00
parent d49d7af0a4
commit ed72aaba67
4 changed files with 141 additions and 21 deletions

View File

@@ -1,5 +1,5 @@
<!-- file: docs/validation/024-V0_3_7_BACKFILL_DESK.md -->
<!-- version: 13 -->
<!-- version: 14 -->
# Validation v0.3.7 — Backfill Desk
@@ -380,7 +380,7 @@ Le gate opérateur de `pre.008` confirme que les audits Rust/Markdown sont propr
- [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.
## 18. `pre.008-fix.002` — canari d'ordre Start local au bon spawn
## 19. `pre.008-fix.002` — canari d'ordre Start local au bon spawn
Le replay opérateur de `pre.008-fix.001` confirme que la correction `Send` est effective : audits, `cargo check --workspace`, Clippy et `ksp-job-backfill-lib` passent. La suite Backfill Desk atteint alors le canari `pre_008_start_installs_handle_before_non_blocking_spawn_and_keeps_single_run_backend_owned`, qui échoue sur `prepare_index < spawn_index`.
@@ -401,3 +401,22 @@ 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
```
## 20. `pre.008-fix.003` — canaris sécurité bornés aux DTO exacts
Le replay opérateur de `pre.008-fix.002` confirme que les corrections précédentes sont effectives : audits Rust/Markdown, `cargo check --workspace`, Clippy et `ksp-job-backfill-lib` passent, puis le canari d'ordre Start corrigé passe également. Le dernier blocage est limité à deux canaris `desktop_security`.
Les DTO de production sont conformes. Les deux échecs sont des faux positifs causés par des fenêtres textuelles trop larges : le contrôle de `BackfillStartRequestDto` s'étendait jusqu'à `BackfillRequestPreviewDto` et incluait donc légitimement `BackfillStartResponseDto::job_id`; le contrôle de `BackfillStartResponseDto` incluait les commentaires de documentation du DTO suivant, qui contiennent les mots `address`/`signature`.
Le correctif ajoute un helper de test qui extrait uniquement la déclaration de struct visée, de son marqueur `struct` jusqu'à son accolade fermante immédiate. Les deux canaris auditeront désormais exactement `BackfillStartRequestDto` et `BackfillStartResponseDto`, sans modifier les DTO ni aucun code de production.
### Gate du fix
- [X] aucun fichier de production Backfill Desk, Job Backfill, Store ou Transport modifié ;
- [X] le canari request ne peut plus inclure `BackfillStartResponseDto::job_id` ;
- [X] le canari Start acknowledgement ne peut plus inclure la documentation de `BackfillRequestPreviewDto` ;
- [X] les champs réellement interdits restent vérifiés dans le corps exact des DTO exposés ;
- [X] version Cargo synchronisée en `0.3.7-pre.8.fix.3` ;
- [X] audits statiques Rust/Markdown rejoués dans l'environnement d'assemblage ;
- [ ] replay opérateur `cargo fmt/check/clippy/test` de `pre.008-fix.003` à exécuter ; aucun `cargo tree` requis car dépendances/features inchangées.