0.3.17-pre.002

This commit is contained in:
2026-09-24 10:55:34 +02:00
parent a60397f08e
commit c56ae68834
15 changed files with 1995 additions and 17 deletions

View File

@@ -1,5 +1,5 @@
// file: crates/ksp-store-api/tests/dependency_boundary.rs
// version: 8
// version: 9
//! Dependency canaries for the Store API RAW foundation.
@@ -53,6 +53,7 @@ fn pre_006_source_boundary_keeps_models_and_capabilities_backend_free() {
let crate_root = include_str!("../src/lib.rs");
let model_home = include_str!("../src/model.rs");
let raw_account = include_str!("../src/model/raw_account.rs");
let raw_conflict = include_str!("../src/model/raw_conflict.rs");
let raw_inspection = include_str!("../src/model/raw_inspection.rs");
let raw_outcome = include_str!("../src/model/raw_outcome.rs");
let raw_pagination = include_str!("../src/model/raw_pagination.rs");
@@ -61,12 +62,14 @@ fn pre_006_source_boundary_keeps_models_and_capabilities_backend_free() {
let raw_transaction = include_str!("../src/model/raw_transaction.rs");
let capability_home = include_str!("../src/capability.rs");
let raw_account_capability = include_str!("../src/capability/raw_account.rs");
let raw_conflict_capability = include_str!("../src/capability/raw_conflict.rs");
let raw_retention_capability = include_str!("../src/capability/raw_retention.rs");
let raw_transaction_capability = include_str!("../src/capability/raw_transaction.rs");
assert!(crate_root.contains("mod capability;"));
assert!(crate_root.contains("mod error;"));
assert!(crate_root.contains("mod model;"));
assert!(model_home.contains("raw_account"));
assert!(model_home.contains("raw_conflict"));
assert!(model_home.contains("raw_inspection"));
assert!(model_home.contains("raw_outcome"));
assert!(model_home.contains("raw_pagination"));
@@ -74,12 +77,14 @@ fn pre_006_source_boundary_keeps_models_and_capabilities_backend_free() {
assert!(model_home.contains("raw_retention"));
assert!(model_home.contains("raw_transaction"));
assert!(capability_home.contains("raw_account"));
assert!(capability_home.contains("raw_conflict"));
assert!(capability_home.contains("raw_retention"));
assert!(capability_home.contains("raw_transaction"));
for source in [
crate_root,
model_home,
raw_account,
raw_conflict,
raw_inspection,
raw_outcome,
raw_pagination,
@@ -88,6 +93,7 @@ fn pre_006_source_boundary_keeps_models_and_capabilities_backend_free() {
raw_transaction,
capability_home,
raw_account_capability,
raw_conflict_capability,
raw_retention_capability,
raw_transaction_capability,
] {
@@ -112,6 +118,11 @@ fn pre_006_source_boundary_keeps_models_and_capabilities_backend_free() {
for forbidden in ["TransactionStatusObservation", "RawLogNotification", "RawSlotEvent", "RawVoteEvent", "RawBlock", "YellowstoneEntry"] {
assert!(!crate_root.contains(forbidden), "deferred pre.006 model leaked into Store API surface: {forbidden}");
}
assert!(raw_conflict_capability.contains("trait RawTransactionVariantInspectionRead"));
assert!(raw_conflict_capability.contains("trait RawTransactionConflictInspectionRead"));
assert!(raw_conflict_capability.contains("trait RawTransactionConflictHistoryRead"));
assert!(raw_conflict_capability.contains("trait RawTransactionConflictActionWrite"));
assert!(capability_home.contains("trait StoreErrorClassifier"));
assert!(raw_transaction_capability.contains("trait RawTransactionRead"));
assert!(raw_transaction_capability.contains("trait RawTransactionInspectionRead"));
assert!(raw_transaction_capability.contains("trait RawTransactionObservationInspectionRead"));
@@ -129,6 +140,7 @@ fn pre_006_source_boundary_keeps_models_and_capabilities_backend_free() {
for forbidden in ["trait StoreBackend", "trait Store", "PostgresStore", "MySqlStore", "Arc<dyn"] {
assert!(!capability_home.contains(forbidden));
assert!(!raw_account_capability.contains(forbidden));
assert!(!raw_conflict_capability.contains(forbidden));
assert!(!raw_retention_capability.contains(forbidden));
assert!(!raw_transaction_capability.contains(forbidden));
}