3.5 KiB
Delta 0.3.11-pre.009-fix.001 — correction de compilation des tests de hardening
Base requise
0.3.11-pre.009
workspace.package.version = 0.3.11-pre.9
Défaut opérateur constaté
Le gate opérateur du 8 septembre 2026 confirme que cargo fmt --all, les audits Rust/Markdown et cargo check --workspace passent, mais que cargo clippy --workspace --all-targets --all-features -- -D warnings et cargo test -p ksp-worker-raw-transaction-ingest-lib ne peuvent compiler deux tests ajoutés par pre.009.
Diagnostics exacts :
unit_tests/admission.rs : appel à RawTransactionAdmission::receive sans expected_network et traitement Option au lieu de Result<Option<_>>
unit_tests/runtime.rs : type du paramètre children non inférable dans le closure source-failure
Le code de production compile ; les défauts sont strictement localisés dans les tests de pre.009.
Objectif
Corriger uniquement les tests de hardening de pre.009, sans modifier le runtime de production, l'admission, la persistence, les snapshots, les terminaux, les compteurs, les dépendances ou les features.
Version
Le correctif touche des fichiers Rust de test. Conformément aux règles de version applicables aux corrections code/build :
identifiant de livraison : 0.3.11-pre.009-fix.001
workspace.package.version : 0.3.11-pre.9.fix.1
Modifications
Le test pre_009_full_queue_dequeue_marks_source_neutral_backpressure_observation conserve désormais une copie du RawNetworkId, appelle explicitement receive(&network) et vérifie la forme Result<Option<_>> avec matches!, sans unwrap, expect ni ?.
Le test pre_009_source_failure_is_counted_and_late_stop_cannot_replace_terminal_fault annote explicitement le paramètre children du closure avec le type privé attendu par le harness :
&mut tokio::task::JoinSet<ksp_core_lib::Result<()>>
Aucun fichier Rust de production n'est modifié.
Fichiers ajoutés
deltas/0.3.11/pre.009-fix.001.md
Fichiers modifiés
Cargo.toml
crates/ksp-worker-raw-transaction-ingest-lib/unit_tests/admission.rs
crates/ksp-worker-raw-transaction-ingest-lib/unit_tests/runtime.rs
Fichiers supprimés
Aucun.
Validations exécutées dans l'environnement d'assemblage
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
scan statique : les deux appels receive utilisent expected_network et traitent Result<Option<_>>
scan statique : le closure source-failure annote explicitement JoinSet<ksp_core_lib::Result<()>>
scan statique : aucun fichier src/ de production ni manifest de crate Worker modifié
L'environnement d'assemblage ne fournit ni cargo, ni rustc, ni rustfmt. Aucun gate Cargo du fix n'est déclaré PASS localement.
Gate opérateur demandé
Aucune dépendance ni feature n'étant modifiée, aucun cargo tree n'est requis pour ce fix.
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
cargo check --workspace
cargo clippy --workspace --all-targets --all-features -- -D warnings
cargo test -p ksp-worker-raw-transaction-ingest-lib
Décision
pre.010 reste bloquée jusqu'à validation opérateur verte de ce fix. Le périmètre fonctionnel de pre.009 n'est pas redéfini.
Questions ouvertes
Aucune.