v0.1.0-pre.025

This commit is contained in:
2026-07-25 08:13:05 +02:00
parent f5648ff138
commit f4d024680c
13 changed files with 3729 additions and 57 deletions

View File

@@ -1,5 +1,5 @@
// file: kb-onchain-transport/src/lib.rs
// version: 4
// version: 6
#![forbid(unsafe_code)]
#![deny(unreachable_pub)]
@@ -22,14 +22,16 @@ mod standard_http_economics;
mod standard_http_tokens;
mod standard_http_transactions;
mod standard_methods;
mod standard_ws;
mod validation;
mod ws_client;
mod ws_pool;
mod ws_session;
/// RPC endpoint configuration.
pub use self::client::RpcEndpoint;
/// Minimal Solana RPC client abstraction.
pub use self::client::SolanaRpcClient;
/// Canonical tracing target for this crate.
pub(crate) use self::constants::TRACING_TARGET;
/// Endpoint role snapshot shared by HTTP and WebSocket pools.
pub use self::endpoint_role::EndpointRoleSnapshot;
/// Converts a JSON-RPC method name into a stable request kind.
@@ -340,12 +342,106 @@ pub use self::standard_methods::StandardWsSubscriptionSpec;
pub use self::standard_methods::standard_http_method;
/// Finds one standard WebSocket subscription from its subscribe or unsubscribe method.
pub use self::standard_methods::standard_ws_subscription;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::AccountSubscribeRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::BlockSubscribeRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::LogsSubscribeRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::ProgramSubscribeRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::RootSubscribeRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::SignatureSubscribeRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::SlotSubscribeRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::SlotsUpdatesSubscribeRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::StandardWsCapabilities;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::StandardWsNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::StandardWsRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::VoteSubscribeRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsAccountNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsAccountSubscribeConfig;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsBlockFilter;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsBlockNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsBlockSubscribeConfig;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsBlockUpdate;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsLogsFilter;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsLogsNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsLogsSubscribeConfig;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsLogsValue;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsProgramNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsProgramSubscribeConfig;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsRootNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsSignatureNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsSignatureSubscribeConfig;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsSignatureValue;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsSlotInfo;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsSlotNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsSlotTransactionStats;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsSlotUpdate;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsSlotsUpdatesNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsVoteNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::WsVoteValue;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use self::standard_ws::adapt_standard_ws_notification;
/// Validates one base58 Solana blockhash or genesis hash.
pub use self::validation::validate_solana_hash_text;
/// Validates one base58 Solana public key.
pub use self::validation::validate_solana_pubkey_text;
/// Validates one base58 Solana transaction signature.
pub use self::validation::validate_transaction_signature_text;
/// Standard Solana WebSocket client bound to one endpoint.
pub use self::ws_client::WsClient;
/// Snapshot of one WebSocket pool endpoint.
pub use self::ws_client::WsPoolClientSnapshot;
/// WebSocket endpoint pool with role-based routing.
pub use self::ws_pool::WsEndpointPool;
/// Persistent WebSocket session contracts.
pub use self::ws_session::WsReconnectPolicy;
/// Persistent WebSocket session contracts.
pub use self::ws_session::WsSession;
/// Persistent WebSocket session contracts.
pub use self::ws_session::WsSessionEvent;
/// Persistent WebSocket session contracts.
pub use self::ws_session::WsSessionSnapshot;
/// Persistent WebSocket session contracts.
pub use self::ws_session::WsSessionState;
/// Persistent WebSocket session contracts.
pub use self::ws_session::WsSubscriptionAck;
/// Persistent WebSocket session contracts.
pub use self::ws_session::WsSubscriptionSnapshot;
/// Acknowledgement returned after a WebSocket unsubscribe request.
pub use self::ws_session::WsUnsubscribeAck;
/// Internal DEVNET_GENESIS_HASH contract.
pub(crate) use self::constants::DEVNET_GENESIS_HASH;
@@ -381,6 +477,8 @@ pub(crate) use self::constants::MAX_SIMULATION_ACCOUNT_COUNT;
pub(crate) use self::constants::MAX_SLOT_LEADER_COUNT;
/// Internal TESTNET_GENESIS_HASH contract.
pub(crate) use self::constants::TESTNET_GENESIS_HASH;
/// Canonical tracing target for this crate.
pub(crate) use self::constants::TRACING_TARGET;
/// Internal role_matches contract.
pub(crate) use self::endpoint_role::role_matches;
/// Internal serialize_parameter contract.