v0.3.14-pre.013

This commit is contained in:
2026-09-12 20:43:43 +02:00
parent 8a0717c839
commit 09c91172ae
7 changed files with 537 additions and 9 deletions

View File

@@ -1,5 +1,5 @@
// file: crates/ksp-worker-raw-transaction-ingest-lib/tests/public_api.rs
// version: 23
// version: 24
//! External public-surface proofs for the RAW transaction ingest Worker foundation.
@@ -479,3 +479,36 @@ fn v0_3_14_pre_011_gap_observability_is_public_bounded_and_source_neutral() {
}
return;
}
#[test]
fn v0_3_14_pre_013_completeness_closure_adds_no_public_surface() {
let root = include_str!("../src/lib.rs");
let public_exports = root.lines().filter(|line| line.trim().starts_with("pub use ")).count();
assert_eq!(public_exports, 43);
for required in [
"RawTransactionIngestGapId",
"RawTransactionIngestGapReason",
"RawTransactionIngestGapSnapshot",
"RawTransactionIngestGapState",
"RawTransactionIngestRepairMethod",
"RawTransactionIngestSnapshot",
"RawTransactionIngestWorker",
] {
assert!(root.contains(required), "pre.013 expected stable public Worker surface missing: {required}");
}
for forbidden in [
"RawTransactionIngestContinuityContracts",
"RawTransactionIngestGlobalHydrationRegistry",
"RawTransactionIngestSourceInventory",
"RawTransactionIngestTrafficClass",
"RawTransactionIngestFairTurnGate",
"RawTransactionIngestSourceLossDecision",
] {
assert!(
!root.lines().any(|line| line.trim().starts_with("pub use ") && line.contains(forbidden)),
"pre.013 private type leaked publicly: {forbidden}"
);
}
assert!(!root.contains("pub mod "));
return;
}