v0.3.13-pre.012

This commit is contained in:
2026-09-10 21:55:02 +02:00
parent 06319655b0
commit 8b6ef7778a
9 changed files with 502 additions and 12 deletions

View File

@@ -1,7 +1,7 @@
// file: crates/ksp-worker-raw-transaction-ingest-lib/tests/hardening.rs
// version: 23
// version: 24
//! External public, security, redaction and release-boundary hardening canaries through `pre.011`.
//! External public, security, redaction and release-boundary hardening canaries through `pre.012`.
fn network(value: &'static str) -> std::option::Option<ksp_store_lib::RawNetworkId> {
let result = ksp_store_lib::RawNetworkId::new(value);
@@ -932,3 +932,28 @@ fn v0_3_13_pre_011_shutdown_races_are_bounded_joined_atomic_and_counter_safe() {
assert!(!resources.contains("unbounded_channel"));
return;
}
#[test]
fn v0_3_13_pre_012_cross_layer_security_closure_is_complete_and_source_neutral() {
let cross_layer = include_str!("cross_layer_completeness.rs");
for required in [
"v0_3_13_pre_012_legacy_v0_v1_is_proven_from_transport_through_worker_common_raw_to_store",
"v0_3_13_pre_012_yellowstone_non_regression_covers_identity_v1_reconnect_gap_and_worker_hydration",
"v0_3_13_pre_012_security_redaction_matrix_covers_all_live_sources_and_lower_layers",
] {
assert!(cross_layer.contains(required), "pre.012 security closure proof missing: {required}");
}
let root = include_str!("../src/lib.rs");
for forbidden in [
"SourceSnapshotByKey",
"SourceHealthByKey",
"provider_health",
"endpoint_health",
"RawTransactionIngestGlobalHydrationRegistry",
"RawTransactionIngestCanonicalState",
"source_key",
] {
assert!(!root.contains(forbidden), "pre.012 public root leaked private/source-specific material: {forbidden}");
}
return;
}