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

@@ -0,0 +1,100 @@
<!-- file: deltas/0.3.7/pre.008-fix.003.md -->
<!-- version: 1 -->
# Delta `0.3.7-pre.008-fix.003` — canaris sécurité bornés aux DTO exacts
## 1. Base requise
```text
0.3.7-pre.008-fix.002
workspace.package.version = 0.3.7-pre.8.fix.2
```
## 2. Objectif
Corriger les deux derniers faux positifs du gate `pre.008` sans modifier la production : les canaris sécurité de la request et de l'acknowledgement Start inspectaient des fenêtres textuelles qui débordaient sur les DTO voisins.
## 3. Cause
`BackfillStartRequestDto` est suivi de `BackfillStartResponseDto`, lui-même suivi de `BackfillRequestPreviewDto`. Le test request découpait depuis le début de la request jusqu'au début de la preview : il incluait donc `BackfillStartResponseDto::job_id` et concluait à tort que le frontend request DTO possédait un JobId.
Le test Start acknowledgement découpait depuis le début de la response jusqu'au début de la preview. Cette fenêtre incluait les commentaires de documentation placés avant `BackfillRequestPreviewDto`, dont les mots `address` et `signature`, et concluait à tort à une fuite de payload.
## 4. Correction
- ajouter un helper de test `struct_source` ;
- borner l'audit request au corps exact de `BackfillStartRequestDto` ;
- borner l'audit acknowledgement au corps exact de `BackfillStartResponseDto` ;
- conserver tous les marqueurs interdits existants ;
- ne modifier aucun DTO ni code de production.
## 5. Version
```text
workspace.package.version = 0.3.7-pre.8.fix.3
label = 0.3.7-pre.008-fix.003
```
## 6. Fichiers ajoutés
```text
deltas/0.3.7/pre.008-fix.003.md
```
## 7. Fichiers modifiés
```text
Cargo.toml
crates/ksp-app-backfill-desk/tests/desktop_security.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
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 — 2 faux positifs desktop_security
```
Le canari `pre_008_start_installs_handle_before_non_blocking_spawn_and_keeps_single_run_backend_owned` de `pre.008-fix.002` passe désormais.
## 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 :
- `BackfillStartRequestDto` de production byte-for-byte inchangé ;
- `BackfillStartResponseDto` de production byte-for-byte inchangé ;
- fenêtre request limitée à sa propre struct ;
- fenêtre acknowledgement limitée à sa propre struct ;
- aucun fichier fonctionnel Backfill Desk/Job/Store/Transport modifié.
## 11. Gate opérateur requis
```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
```
Les `cargo tree` ne sont pas requis pour ce fix : aucune dépendance ni feature Cargo n'est modifiée.
## 12. Questions ouvertes
Aucune pour ce correctif.