3.5 KiB
Delta 0.3.12-pre.003-fix.002 — correction du canari source sous #[cfg(test)]
Base requise
0.3.12-pre.003-fix.001
workspace.package.version = 0.3.12-pre.3.fix.1
Le gate opérateur reçu pour pre.003-fix.001 montre :
audit Rust : clean
audit Markdown : clean (340 tables, 804 fichiers)
cargo check --workspace : PASS
cargo clippy --workspace --all-targets --all-features -- -D warnings : PASS
unit tests Worker : 45 PASS
integration dependency_boundary : 4 PASS
integration public_api : 8 PASS
integration release_completeness : 3 PASS
integration hardening : 9 PASS, 1 FAIL
L'unique échec est v0_3_12_pre_003_private_signal_debug_and_shape_do_not_expose_signature_filters_or_payload, qui rapporte à tort required private signal field missing: created_at:.
Objectif
Corriger exclusivement le canari source devenu incompatible avec l'attribut #[cfg(test)] introduit par pre.003-fix.001, sans modifier le contrat runtime ni avancer pre.004.
Version
La correction modifie un test Rust ; conformément aux règles de version du workspace :
delivery id = 0.3.12-pre.003-fix.002
workspace.package.version = 0.3.12-pre.3.fix.2
Correction
Le scanner du test isolait RawTransactionIngestSourceSignal avec une terminaison littérale qui supposait que son impl Debug suivait immédiatement la structure :
}\n\nimpl std::fmt::Debug for RawTransactionIngestSourceSignal
Après pre.003-fix.001, la forme correcte est :
}
#[cfg(test)]
impl std::fmt::Debug for RawTransactionIngestSourceSignal
Le scanner est donc rendu indépendant de cet attribut : après avoir trouvé la déclaration de la structure, il borne désormais le segment sur le début de impl std::fmt::Debug for RawTransactionIngestSourceSignal lui-même.
Cette forme fonctionne avec les adapters actuellement test-only et restera compatible lorsque pre.004 remettra ces helpers dans le build productif.
Décisions prises
aucune modification du signal privé
aucune modification de runtime_resources.rs
aucun allow/expect lint
aucune activation Yellowstone/HTTP/Store
aucune avance fonctionnelle vers pre.004
correction limitée au canari qui inspecte la source
Questions ouvertes
Aucune.
Fichiers ajoutés
deltas/0.3.12/pre.003-fix.002.md
Fichiers modifiés
Cargo.toml
crates/ksp-worker-raw-transaction-ingest-lib/tests/hardening.rs
docs/validation/029-V0_3_12_YELLOWSTONE_HYDRATION_CONTINUITY.md
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
cargo, rustc et rustfmt ne sont pas installés dans cet environnement ; aucun gate Cargo local n'est déclaré PASS.
Gate opérateur demandé
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
Non-claims
Ce fix ne revendique toujours pas :
stream Yellowstone ouvert
update réseau consommée
hydration HTTP
Common RAW issu du réseau
provenance composite finale
persistence réseau
Block / BlockMeta / Slot
coalescence
frontier / from_slot / ReplayInfo