v0.5.3-pre.002

This commit is contained in:
2026-08-11 22:22:40 +02:00
parent 01d78b5845
commit 8448ad1079
134 changed files with 4518 additions and 3595 deletions

View File

@@ -1,7 +1,7 @@
// file: ks-store/src/lib.rs
// version: 5
// version: 10
//! Backend-neutral storage contracts and PostgreSQL implementation.
//! Backend-agnostic Solana storage contracts and store facade.
#![warn(missing_docs)]
#![deny(unreachable_pub)]
#![forbid(unsafe_code)]
@@ -9,13 +9,177 @@
mod constants;
mod contracts;
mod postgres;
mod store;
/// Canonical tracing target for storage operations.
/// Canonical crate-internal tracing target shared through the crate-root facade.
pub(crate) use self::constants::TRACING_TARGET;
/// Crate-internal storage symbol `CORE_ACCOUNT_KEYS_TABLE_NAME` shared through the crate-root facade.
pub(crate) use self::postgres::CORE_ACCOUNT_KEYS_TABLE_NAME;
/// Crate-internal storage symbol `CORE_BALANCE_CHANGES_TABLE_NAME` shared through the crate-root facade.
pub(crate) use self::postgres::CORE_BALANCE_CHANGES_TABLE_NAME;
/// Crate-internal storage symbol `CORE_INNER_INSTRUCTIONS_TABLE_NAME` shared through the crate-root facade.
pub(crate) use self::postgres::CORE_INNER_INSTRUCTIONS_TABLE_NAME;
/// Crate-internal storage symbol `CORE_INSTRUCTIONS_TABLE_NAME` shared through the crate-root facade.
pub(crate) use self::postgres::CORE_INSTRUCTIONS_TABLE_NAME;
/// Crate-internal storage symbol `CORE_LOGS_TABLE_NAME` shared through the crate-root facade.
pub(crate) use self::postgres::CORE_LOGS_TABLE_NAME;
/// Crate-internal storage symbol `CORE_TRANSACTIONS_TABLE_NAME` shared through the crate-root facade.
pub(crate) use self::postgres::CORE_TRANSACTIONS_TABLE_NAME;
/// Crate-internal storage symbol `DECODE_COVERAGE_DECLARATIONS_TABLE_NAME` shared through the crate-root facade.
pub(crate) use self::postgres::DECODE_COVERAGE_DECLARATIONS_TABLE_NAME;
/// Crate-internal storage symbol `DECODE_COVERAGE_OBSERVATIONS_TABLE_NAME` shared through the crate-root facade.
pub(crate) use self::postgres::DECODE_COVERAGE_OBSERVATIONS_TABLE_NAME;
/// Crate-internal storage symbol `DECODE_EVENTS_TABLE_NAME` shared through the crate-root facade.
pub(crate) use self::postgres::DECODE_EVENTS_TABLE_NAME;
/// Crate-internal storage symbol `MATERIALIZED_EVENTS_TABLE_NAME` shared through the crate-root facade.
pub(crate) use self::postgres::MATERIALIZED_EVENTS_TABLE_NAME;
/// Crate-internal storage symbol `PROCESSING_LEDGER_TABLE_NAME` shared through the crate-root facade.
pub(crate) use self::postgres::PROCESSING_LEDGER_TABLE_NAME;
/// Crate-internal storage symbol `PostgresStore` shared through the crate-root facade.
pub(crate) use self::postgres::PostgresStore;
/// Crate-internal storage symbol `PostgresStoreOptions` shared through the crate-root facade.
pub(crate) use self::postgres::PostgresStoreOptions;
/// Crate-internal storage symbol `PostgresTableDiagnosticSpec` shared through the crate-root facade.
pub(crate) use self::postgres::PostgresTableDiagnosticSpec;
/// Crate-internal storage symbol `RAW_TRANSACTIONS_TABLE_NAME` shared through the crate-root facade.
pub(crate) use self::postgres::RAW_TRANSACTIONS_TABLE_NAME;
/// Crate-internal storage symbol `STORE_SCHEMA_ADVISORY_LOCK_ID` shared through the crate-root facade.
pub(crate) use self::postgres::STORE_SCHEMA_ADVISORY_LOCK_ID;
/// Crate-internal storage symbol `TRANSACTION_OBSERVATIONS_TABLE_NAME` shared through the crate-root facade.
pub(crate) use self::postgres::TRANSACTION_OBSERVATIONS_TABLE_NAME;
/// Crate-internal storage symbol `apply_core_store_schema` shared through the crate-root facade.
pub(crate) use self::postgres::apply_core_store_schema;
/// Crate-internal storage symbol `apply_decode_store_schema` shared through the crate-root facade.
pub(crate) use self::postgres::apply_decode_store_schema;
/// Crate-internal storage symbol `apply_raw_store_schema` shared through the crate-root facade.
pub(crate) use self::postgres::apply_raw_store_schema;
/// Crate-internal storage symbol `core_store_schema_statements` shared through the crate-root facade.
pub(crate) use self::postgres::core_store_schema_statements;
/// Crate-internal storage symbol `core_store_table_diagnostic_specs` shared through the crate-root facade.
pub(crate) use self::postgres::core_store_table_diagnostic_specs;
/// Crate-internal storage symbol `decode_store_schema_statements` shared through the crate-root facade.
pub(crate) use self::postgres::decode_store_schema_statements;
/// Crate-internal storage symbol `decode_store_table_diagnostic_specs` shared through the crate-root facade.
pub(crate) use self::postgres::decode_store_table_diagnostic_specs;
/// Crate-internal storage symbol `has_raw_transaction_signature` shared through the crate-root facade.
pub(crate) use self::postgres::has_raw_transaction_signature;
/// Crate-internal storage symbol `has_transaction_observation_key` shared through the crate-root facade.
pub(crate) use self::postgres::has_transaction_observation_key;
/// Crate-internal storage symbol `insert_core_account_keys` shared through the crate-root facade.
pub(crate) use self::postgres::insert_core_account_keys;
/// Crate-internal storage symbol `insert_core_balance_changes` shared through the crate-root facade.
pub(crate) use self::postgres::insert_core_balance_changes;
/// Crate-internal storage symbol `insert_core_inner_instructions` shared through the crate-root facade.
pub(crate) use self::postgres::insert_core_inner_instructions;
/// Crate-internal storage symbol `insert_core_instructions` shared through the crate-root facade.
pub(crate) use self::postgres::insert_core_instructions;
/// Crate-internal storage symbol `insert_core_logs` shared through the crate-root facade.
pub(crate) use self::postgres::insert_core_logs;
/// Crate-internal storage symbol `insert_core_transaction` shared through the crate-root facade.
pub(crate) use self::postgres::insert_core_transaction;
/// Crate-internal storage symbol `insert_raw_transaction` shared through the crate-root facade.
pub(crate) use self::postgres::insert_raw_transaction;
/// Crate-internal storage symbol `insert_transaction_observation` shared through the crate-root facade.
pub(crate) use self::postgres::insert_transaction_observation;
/// Crate-internal storage symbol `is_core_extraction_current` shared through the crate-root facade.
pub(crate) use self::postgres::is_core_extraction_current;
/// Crate-internal storage symbol `is_decode_current` shared through the crate-root facade.
pub(crate) use self::postgres::is_decode_current;
/// Crate-internal storage symbol `list_core_instruction_replay_inputs` shared through the crate-root facade.
pub(crate) use self::postgres::list_core_instruction_replay_inputs;
/// Crate-internal storage symbol `list_core_instructions_for_replay` shared through the crate-root facade.
pub(crate) use self::postgres::list_core_instructions_for_replay;
/// Crate-internal storage symbol `list_decode_coverage_summary` shared through the crate-root facade.
pub(crate) use self::postgres::list_decode_coverage_summary;
/// Crate-internal storage symbol `list_decode_inputs` shared through the crate-root facade.
pub(crate) use self::postgres::list_decode_inputs;
/// Crate-internal storage symbol `list_decode_replay_inputs` shared through the crate-root facade.
pub(crate) use self::postgres::list_decode_replay_inputs;
/// Crate-internal storage symbol `list_materialized_events` shared through the crate-root facade.
pub(crate) use self::postgres::list_materialized_events;
/// Crate-internal storage symbol `list_raw_transactions_for_core_extraction` shared through the crate-root facade.
pub(crate) use self::postgres::list_raw_transactions_for_core_extraction;
/// Crate-internal storage symbol `list_replay_entity_summaries` shared through the crate-root facade.
pub(crate) use self::postgres::list_replay_entity_summaries;
/// Crate-internal storage symbol `list_replay_program_summaries` shared through the crate-root facade.
pub(crate) use self::postgres::list_replay_program_summaries;
/// Crate-internal storage symbol `list_replay_transaction_candidates` shared through the crate-root facade.
pub(crate) use self::postgres::list_replay_transaction_candidates;
/// Crate-internal storage symbol `load_current_schema` shared through the crate-root facade.
pub(crate) use self::postgres::load_current_schema;
/// Crate-internal storage symbol `load_latest_migration_version` shared through the crate-root facade.
pub(crate) use self::postgres::load_latest_migration_version;
/// Crate-internal storage symbol `load_migration_table_name` shared through the crate-root facade.
pub(crate) use self::postgres::load_migration_table_name;
/// Crate-internal storage symbol `load_server_version` shared through the crate-root facade.
pub(crate) use self::postgres::load_server_version;
/// Crate-internal storage symbol `load_table_statistics` shared through the crate-root facade.
pub(crate) use self::postgres::load_table_statistics;
/// Crate-internal storage symbol `mark_core_extraction_failed` shared through the crate-root facade.
pub(crate) use self::postgres::mark_core_extraction_failed;
/// Crate-internal storage symbol `mark_decode_failed` shared through the crate-root facade.
pub(crate) use self::postgres::mark_decode_failed;
/// Crate-internal storage symbol `persist_core_extraction` shared through the crate-root facade.
pub(crate) use self::postgres::persist_core_extraction;
/// Crate-internal storage symbol `persist_decode_coverage_declarations` shared through the crate-root facade.
pub(crate) use self::postgres::persist_decode_coverage_declarations;
/// Crate-internal storage symbol `persist_decode_result` shared through the crate-root facade.
pub(crate) use self::postgres::persist_decode_result;
/// Crate-internal storage symbol `persist_materialization_result` shared through the crate-root facade.
pub(crate) use self::postgres::persist_materialization_result;
#[cfg(test)]
/// Crate-internal serialized PostgreSQL test guard shared through the crate-root facade.
pub(crate) use self::postgres::postgres_test_guard;
/// Crate-internal storage symbol `raw_store_schema_statements` shared through the crate-root facade.
pub(crate) use self::postgres::raw_store_schema_statements;
/// Crate-internal storage symbol `raw_store_table_diagnostic_specs` shared through the crate-root facade.
pub(crate) use self::postgres::raw_store_table_diagnostic_specs;
/// Crate-internal storage symbol `run_health_check` shared through the crate-root facade.
pub(crate) use self::postgres::run_health_check;
/// Crate-internal storage symbol `table_exists` shared through the crate-root facade.
pub(crate) use self::postgres::table_exists;
/// Crate-internal storage symbol `table_stats_kb_sol_core_account_keys_sql` shared through the crate-root facade.
pub(crate) use self::postgres::table_stats_kb_sol_core_account_keys_sql;
/// Crate-internal storage symbol `table_stats_kb_sol_core_balance_changes_sql` shared through the crate-root facade.
pub(crate) use self::postgres::table_stats_kb_sol_core_balance_changes_sql;
/// Crate-internal storage symbol `table_stats_kb_sol_core_inner_instructions_sql` shared through the crate-root facade.
pub(crate) use self::postgres::table_stats_kb_sol_core_inner_instructions_sql;
/// Crate-internal storage symbol `table_stats_kb_sol_core_instructions_sql` shared through the crate-root facade.
pub(crate) use self::postgres::table_stats_kb_sol_core_instructions_sql;
/// Crate-internal storage symbol `table_stats_kb_sol_core_logs_sql` shared through the crate-root facade.
pub(crate) use self::postgres::table_stats_kb_sol_core_logs_sql;
/// Crate-internal storage symbol `table_stats_kb_sol_core_transactions_sql` shared through the crate-root facade.
pub(crate) use self::postgres::table_stats_kb_sol_core_transactions_sql;
/// Crate-internal storage symbol `table_stats_kb_sol_decode_coverage_declarations_sql` shared through the crate-root facade.
pub(crate) use self::postgres::table_stats_kb_sol_decode_coverage_declarations_sql;
/// Crate-internal storage symbol `table_stats_kb_sol_decode_coverage_observations_sql` shared through the crate-root facade.
pub(crate) use self::postgres::table_stats_kb_sol_decode_coverage_observations_sql;
/// Crate-internal storage symbol `table_stats_kb_sol_decode_events_sql` shared through the crate-root facade.
pub(crate) use self::postgres::table_stats_kb_sol_decode_events_sql;
/// Crate-internal storage symbol `table_stats_kb_sol_mat_events_sql` shared through the crate-root facade.
pub(crate) use self::postgres::table_stats_kb_sol_mat_events_sql;
/// Crate-internal storage symbol `table_stats_kb_sol_obs_transaction_observations_sql` shared through the crate-root facade.
pub(crate) use self::postgres::table_stats_kb_sol_obs_transaction_observations_sql;
/// Crate-internal storage symbol `table_stats_kb_sol_ops_processing_ledger_sql` shared through the crate-root facade.
pub(crate) use self::postgres::table_stats_kb_sol_ops_processing_ledger_sql;
/// Crate-internal storage symbol `table_stats_kb_sol_raw_transactions_sql` shared through the crate-root facade.
pub(crate) use self::postgres::table_stats_kb_sol_raw_transactions_sql;
/// Crate-internal storage symbol `update_core_instruction_lifecycle` shared through the crate-root facade.
pub(crate) use self::postgres::update_core_instruction_lifecycle;
/// Crate-internal storage symbol `update_raw_payload_lifecycle` shared through the crate-root facade.
pub(crate) use self::postgres::update_raw_payload_lifecycle;
/// Crate-internal storage symbol `validate_core_store_table_names` shared through the crate-root facade.
pub(crate) use self::postgres::validate_core_store_table_names;
/// Crate-internal storage symbol `validate_decode_store_table_names` shared through the crate-root facade.
pub(crate) use self::postgres::validate_decode_store_table_names;
/// Crate-internal storage symbol `validate_raw_store_table_names` shared through the crate-root facade.
pub(crate) use self::postgres::validate_raw_store_table_names;
/// Transitional logical schema contract identifier used until the `0.5.3-pre.3` rebuild.
pub use self::constants::STORE_SCHEMA_CONTRACT_VERSION;
/// Core account key insert contract.
pub use self::contracts::CoreAccountKeyInsert;
/// Core account key SQL-like row contract.
/// Core account key persisted row contract.
pub use self::contracts::CoreAccountKeyRow;
/// Core account key source category.
pub use self::contracts::CoreAccountKeySource;
@@ -23,19 +187,19 @@ pub use self::contracts::CoreAccountKeySource;
pub use self::contracts::CoreBalanceChangeInsert;
/// Core balance change kind.
pub use self::contracts::CoreBalanceChangeKind;
/// Core balance change SQL-like row contract.
/// Core balance change persisted row contract.
pub use self::contracts::CoreBalanceChangeRow;
/// Complete normalized core extraction write bundle.
/// Complete normalized Core extraction write bundle.
pub use self::contracts::CoreExtractionBundle;
/// Failure details persisted for one canonical to core extraction attempt.
/// Failure details persisted for one canonical-to-Core extraction attempt.
pub use self::contracts::CoreExtractionFailure;
/// Bounded canonical transaction selection filter for core extraction.
/// Bounded canonical transaction selection filter for Core extraction.
pub use self::contracts::CoreExtractionSelectionFilter;
/// Canonical transaction to core extraction storage behavior.
/// Canonical transaction-to-Core extraction storage behavior.
pub use self::contracts::CoreExtractionStore;
/// Core inner instruction insert contract.
pub use self::contracts::CoreInnerInstructionInsert;
/// Core inner instruction SQL-like row contract.
/// Core inner instruction persisted row contract.
pub use self::contracts::CoreInnerInstructionRow;
/// Core instruction insert contract.
pub use self::contracts::CoreInstructionInsert;
@@ -45,15 +209,15 @@ pub use self::contracts::CoreInstructionLifecycleMark;
pub use self::contracts::CoreInstructionProcessingState;
/// Core instruction replay filter contract.
pub use self::contracts::CoreInstructionReplayFilter;
/// Core instruction SQL-like row contract.
/// Core instruction persisted row contract.
pub use self::contracts::CoreInstructionRow;
/// Core log insert contract.
pub use self::contracts::CoreLogInsert;
/// Core log SQL-like row contract.
/// Core log persisted row contract.
pub use self::contracts::CoreLogRow;
/// Core transaction insert contract.
pub use self::contracts::CoreTransactionInsert;
/// Core transaction SQL-like row contract.
/// Core transaction persisted row contract.
pub use self::contracts::CoreTransactionRow;
/// Core Solana storage behavior.
pub use self::contracts::CoreTransactionStore;
@@ -65,7 +229,7 @@ pub use self::contracts::DecodeCoverageDeclarationInsert;
pub use self::contracts::DecodeCoverageObservationInsert;
/// One row of aggregated decoder coverage diagnostics.
pub use self::contracts::DecodeCoverageSummaryRow;
/// Failed decode attempt persisted in the common ledger.
/// Failed decode attempt persisted in the common processing ledger.
pub use self::contracts::DecodeFailure;
/// One processor-owned decoded observation row.
pub use self::contracts::DecodeObservationInsert;
@@ -75,46 +239,28 @@ pub use self::contracts::DecodePersistenceBundle;
pub use self::contracts::DecodePipelineStore;
/// Bounded contextual instruction selection filter for decode campaigns.
pub use self::contracts::DecodeSelectionFilter;
/// Decoded event insert contract.
pub use self::contracts::DecodedEventInsert;
/// Decoded event SQL-like row contract.
pub use self::contracts::DecodedEventRow;
/// Decoded event storage behavior.
pub use self::contracts::DecodedEventStore;
/// Insert or upsert result contract returned by repositories.
pub use self::contracts::InsertOutcome;
/// Maximum number of materialized rows returned by one bounded query.
pub use self::contracts::MAX_MATERIALIZED_EVENT_QUERY_ROWS;
/// Maximum repository page size.
pub use self::contracts::MAX_PAGE_SIZE;
/// Maximum number of rows returned by one replay candidate query.
pub use self::contracts::MAX_REPLAY_CANDIDATE_ROWS;
/// Atomic persistence bundle for one materializer and one decoded observation.
pub use self::contracts::MaterializationPersistenceBundle;
/// Bounded read-only materialized event selection.
pub use self::contracts::MaterializedEventFilter;
/// Materialized event insert contract.
pub use self::contracts::MaterializedEventInsert;
/// One materialized output returned by a bounded query.
pub use self::contracts::MaterializedEventQueryRow;
/// Materialized event SQL-like row contract.
pub use self::contracts::MaterializedEventRow;
/// Materialized event storage behavior.
pub use self::contracts::MaterializedEventStore;
/// One processor-owned materialized output row.
/// One processor-owned generic materialized output row.
pub use self::contracts::MaterializedOutputInsert;
/// Page request contract for repository list operations.
pub use self::contracts::PageRequest;
/// Stable processing ledger identity.
pub use self::contracts::ProcessingLedgerIdentity;
/// Processing ledger mark request contract.
pub use self::contracts::ProcessingLedgerMark;
/// Processing ledger SQL-like row contract.
pub use self::contracts::ProcessingLedgerRow;
/// Stable processing ledger status.
pub use self::contracts::ProcessingLedgerStatus;
/// Processing ledger storage behavior.
pub use self::contracts::ProcessingLedgerStore;
/// Program observation storage behavior.
pub use self::contracts::ProgramObservationStore;
/// Raw payload lifecycle mark request.
pub use self::contracts::RawPayloadLifecycleMark;
/// Raw payload processing state.
@@ -123,135 +269,75 @@ pub use self::contracts::RawPayloadProcessingState;
pub use self::contracts::RawPayloadRetentionState;
/// Canonical raw Solana transaction insert contract.
pub use self::contracts::RawTransactionInsert;
/// Canonical raw Solana transaction SQL-like row contract.
/// Canonical raw Solana transaction persisted row contract.
pub use self::contracts::RawTransactionRow;
/// Raw transaction storage behavior.
pub use self::contracts::RawTransactionStore;
/// Bounded read-only filter for Core entity summaries.
pub use self::contracts::ReplayEntityFilter;
/// Core entity kind used while filtering replay candidates.
pub use self::contracts::ReplayEntityKind;
/// Aggregated mint, owner, or account-key occurrences from Core facts.
pub use self::contracts::ReplayEntitySummary;
/// Bounded read-only filter for program summaries.
pub use self::contracts::ReplayProgramFilter;
/// Program occurrence scope used while filtering replay candidates.
pub use self::contracts::ReplayProgramScope;
/// Aggregated program occurrences across top-level instructions, inner instructions, and logs.
pub use self::contracts::ReplayProgramSummary;
/// One raw transaction candidate enriched with Core and processing diagnostics.
pub use self::contracts::ReplayTransactionCandidate;
/// Bounded read-only filter for transaction replay candidates.
pub use self::contracts::ReplayTransactionFilter;
/// Sort direction for repository list operations.
pub use self::contracts::SortDirection;
/// Store backend diagnostic contract.
/// Store backend diagnostic descriptor.
pub use self::contracts::StoreBackendDescriptor;
/// Store backend kind contract.
pub use self::contracts::StoreBackendKind;
/// Backend-neutral diagnostic snapshot.
pub use self::contracts::StoreBackendDiagnostics;
/// Store configuration summary safe for UI and logs.
pub use self::contracts::StoreConfigurationSummary;
/// Store backend health snapshot.
pub use self::contracts::StoreHealthSnapshot;
/// Store backend health status.
pub use self::contracts::StoreHealthStatus;
/// Store health storage behavior.
pub use self::contracts::StoreHealthStore;
/// Store initialization status.
pub use self::contracts::StoreInitializationStatus;
/// Initialization and model-verification summary captured while opening a store.
pub use self::contracts::StoreInitializationSummary;
/// Store migration diagnostic snapshot contract.
pub use self::contracts::StoreMigrationSnapshot;
/// Store migration status contract.
pub use self::contracts::StoreMigrationStatus;
/// Store model verification status.
pub use self::contracts::StoreModelVerificationStatus;
/// Verification summary for one logical store model.
pub use self::contracts::StoreModelVerificationSummary;
/// Count summary for one backend object category without exposing physical names.
pub use self::contracts::StoreObjectVerificationSummary;
/// Read-only diagnostics for one logical store resource.
pub use self::contracts::StoreResourceDiagnostics;
/// Read-only statistics for one logical store resource.
pub use self::contracts::StoreResourceStatistics;
/// Complete runtime summary safe for application diagnostics.
pub use self::contracts::StoreRuntimeSummary;
/// Transaction acquisition observation insert contract.
pub use self::contracts::TransactionObservationInsert;
/// Transaction acquisition observation origin.
pub use self::contracts::TransactionObservationOrigin;
/// Transaction acquisition observation SQL-like row contract.
/// Transaction acquisition observation persisted row contract.
pub use self::contracts::TransactionObservationRow;
/// Transaction acquisition observation status.
pub use self::contracts::TransactionObservationStatus;
/// Storage error helper functions.
pub use self::contracts::storage_contract_error;
/// Allowed Solana table domains encoded in table names.
pub use self::postgres::ALLOWED_SOLANA_TABLE_DOMAINS;
/// Core account key table name.
pub use self::postgres::CORE_ACCOUNT_KEYS_TABLE_NAME;
/// Core balance change table name.
pub use self::postgres::CORE_BALANCE_CHANGES_TABLE_NAME;
/// Core inner instruction table name.
pub use self::postgres::CORE_INNER_INSTRUCTIONS_TABLE_NAME;
/// Core instruction table name.
pub use self::postgres::CORE_INSTRUCTIONS_TABLE_NAME;
/// Core log table name.
pub use self::postgres::CORE_LOGS_TABLE_NAME;
/// Core Solana table names.
pub use self::postgres::CORE_STORE_TABLE_NAMES;
/// Core transaction table name.
pub use self::postgres::CORE_TRANSACTIONS_TABLE_NAME;
/// Machine-readable decoder coverage declaration table name.
pub use self::postgres::DECODE_COVERAGE_DECLARATIONS_TABLE_NAME;
/// Observed decoder coverage classification table name.
pub use self::postgres::DECODE_COVERAGE_OBSERVATIONS_TABLE_NAME;
/// Versioned decoded event table name.
pub use self::postgres::DECODE_EVENTS_TABLE_NAME;
/// Decode and materialization table names.
pub use self::postgres::DECODE_STORE_TABLE_NAMES;
/// Default PostgreSQL schema policy.
pub use self::postgres::DEFAULT_SCHEMA_POLICY;
/// Versioned materialized output table name.
pub use self::postgres::MATERIALIZED_EVENTS_TABLE_NAME;
/// Maximum number of rows returned by one replay candidate query.
pub use self::postgres::MAX_REPLAY_CANDIDATE_ROWS;
/// PostgreSQL migration strategy used by this crate.
pub use self::postgres::MIGRATION_STRATEGY;
/// Migration table name used by sqlx.
pub use self::postgres::MIGRATION_TABLE_NAME;
/// Processing ledger table name.
pub use self::postgres::PROCESSING_LEDGER_TABLE_NAME;
/// PostgreSQL diagnostic snapshot.
pub use self::postgres::PostgresBackendDiagnostics;
/// Bounded read-only filter for core entity summaries.
pub use self::postgres::PostgresReplayEntityFilter;
/// Core entity kind used while filtering replay candidates.
pub use self::postgres::PostgresReplayEntityKind;
/// Aggregated mint, owner or account-key occurrences from core tables.
pub use self::postgres::PostgresReplayEntitySummary;
/// Bounded read-only filter for program summaries.
pub use self::postgres::PostgresReplayProgramFilter;
/// Program occurrence scope used while filtering replay candidates.
pub use self::postgres::PostgresReplayProgramScope;
/// Aggregated program occurrences across outer, inner and linked logs.
pub use self::postgres::PostgresReplayProgramSummary;
/// One raw transaction candidate enriched with core and ledger diagnostics.
pub use self::postgres::PostgresReplayTransactionCandidate;
/// Bounded read-only filter for transaction replay candidates.
pub use self::postgres::PostgresReplayTransactionFilter;
/// PostgreSQL store handle.
pub use self::postgres::PostgresStore;
/// PostgreSQL store connection options.
pub use self::postgres::PostgresStoreOptions;
/// PostgreSQL diagnostic table specification.
pub use self::postgres::PostgresTableDiagnosticSpec;
/// PostgreSQL table diagnostic snapshot.
pub use self::postgres::PostgresTableDiagnostics;
/// PostgreSQL table statistics snapshot.
pub use self::postgres::PostgresTableStatistics;
/// Canonical transaction acquisition table names.
pub use self::postgres::RAW_STORE_TABLE_NAMES;
/// Canonical raw transaction table name.
pub use self::postgres::RAW_TRANSACTIONS_TABLE_NAME;
/// Solana application table prefix.
pub use self::postgres::SOLANA_TABLE_PREFIX;
/// Advisory lock id used while initializing store tables.
pub use self::postgres::STORE_SCHEMA_ADVISORY_LOCK_ID;
/// Transaction acquisition observation table name.
pub use self::postgres::TRANSACTION_OBSERVATIONS_TABLE_NAME;
/// Core store SQL statements applied by the idempotent initializer.
pub use self::postgres::core_store_schema_statements;
/// Core table diagnostic specs.
pub use self::postgres::core_store_table_diagnostic_specs;
/// Decode and materialization SQL statements applied by the idempotent initializer.
pub use self::postgres::decode_store_schema_statements;
/// Decode and materialization table diagnostic specs.
pub use self::postgres::decode_store_table_diagnostic_specs;
/// Returns true when a Solana table name follows canonical rules.
pub use self::postgres::is_valid_solana_table_name;
/// Returns a DSN masked for logs and UI diagnostics.
pub use self::postgres::mask_postgres_dsn;
/// Canonical transaction acquisition SQL statements.
pub use self::postgres::raw_store_schema_statements;
/// Canonical transaction acquisition diagnostic specs.
pub use self::postgres::raw_store_table_diagnostic_specs;
/// Validates core store table names.
pub use self::postgres::validate_core_store_table_names;
/// Validates decode and materialization store table names.
pub use self::postgres::validate_decode_store_table_names;
/// Validates canonical transaction acquisition table names.
pub use self::postgres::validate_raw_store_table_names;
/// Validates a canonical Solana table name.
pub use self::postgres::validate_solana_table_name;
/// Current normalized core replay input contract version.
/// Backend-agnostic persistent store facade.
pub use self::store::Store;
/// Backend-agnostic options used to open one persistent store.
pub use self::store::StoreOpenOptions;
/// Current normalized Core replay input contract version.
pub use ks_lib::MD_CORE_REPLAY_INPUT_CONTRACT_VERSION;
/// Decoder replay input containing one instruction plus extracted transaction context.
pub use ks_lib::MdCoreInstructionReplayInput;