0.1.0
This commit is contained in:
198
kb-lib/src/lib.rs
Normal file
198
kb-lib/src/lib.rs
Normal file
@@ -0,0 +1,198 @@
|
||||
// file: kb-lib/src/lib.rs
|
||||
// version: 3
|
||||
|
||||
//! Consolidated decoder, executor, materializer and shared model library.
|
||||
#![warn(missing_docs)]
|
||||
#![deny(unreachable_pub)]
|
||||
#![forbid(unsafe_code)]
|
||||
|
||||
pub mod decoder;
|
||||
pub mod executor;
|
||||
pub mod materializer;
|
||||
pub mod model;
|
||||
|
||||
/// Canonical tracing target for the consolidated library.
|
||||
pub(crate) use crate::decoder::api::constants::TRACING_TARGET;
|
||||
|
||||
/// Canonical tracing target for this crate.
|
||||
/// Current contextual core instruction input contract version.
|
||||
pub use crate::decoder::api::contracts::CORE_INSTRUCTION_INPUT_CONTRACT_VERSION;
|
||||
/// Stable contextual decoded observation.
|
||||
pub use crate::decoder::api::contracts::DecodedObservation;
|
||||
/// Machine-readable decoder coverage declaration.
|
||||
pub use crate::decoder::api::contracts::DecoderCoverageDeclaration;
|
||||
/// Declared decoder coverage entry kind.
|
||||
pub use crate::decoder::api::contracts::DecoderCoverageEntryKind;
|
||||
/// Structured decoder diagnostic.
|
||||
pub use crate::decoder::api::contracts::DecoderDiagnostic;
|
||||
/// Complete decoder execution result.
|
||||
pub use crate::decoder::api::contracts::DecoderExecutionResult;
|
||||
/// Stable decoder identity.
|
||||
pub use crate::decoder::api::contracts::DecoderIdentity;
|
||||
/// Decoder terminal result status.
|
||||
pub use crate::decoder::api::contracts::DecoderOutcomeStatus;
|
||||
/// Explicit decoding proof.
|
||||
pub use crate::decoder::api::contracts::DecoderProof;
|
||||
/// Decoding proof category.
|
||||
pub use crate::decoder::api::contracts::DecoderProofKind;
|
||||
/// Deterministic decoder recognition result.
|
||||
pub use crate::decoder::api::contracts::DecoderRecognition;
|
||||
/// One statically declared decoder surface.
|
||||
pub use crate::decoder::api::contracts::DecoderSurface;
|
||||
/// Contextual instruction decoder contract.
|
||||
pub use crate::decoder::api::contracts::InstructionDecoder;
|
||||
/// Computes the deterministic contextual input hash.
|
||||
pub use crate::decoder::api::contracts::contextual_input_hash;
|
||||
/// Returns true when a decoder declares the exact program id.
|
||||
pub use crate::decoder::api::contracts::decoder_handles_program_id;
|
||||
/// Computes a deterministic lowercase SHA-256 hash for one JSON value.
|
||||
pub use crate::decoder::api::contracts::deterministic_json_hash;
|
||||
/// Extracts the first eight payload bytes as hexadecimal when available.
|
||||
pub use crate::decoder::api::contracts::discriminator_8_hex;
|
||||
/// Exposes the decoder support level.
|
||||
pub use crate::decoder::api::decoder::DecoderSupport;
|
||||
/// Initial decoder implementation placeholder for API-level tests.
|
||||
pub use crate::decoder::api::decoder::InitialDecoder;
|
||||
/// Exposes the common protocol decoder trait.
|
||||
pub use crate::decoder::api::decoder::ProtocolDecoder;
|
||||
/// Exposes the blockhash policy kind.
|
||||
pub use crate::executor::api::execution::ExecutionBlockhashKind;
|
||||
/// Exposes the blockhash policy.
|
||||
pub use crate::executor::api::execution::ExecutionBlockhashPolicy;
|
||||
/// Exposes the exact execution capability result.
|
||||
pub use crate::executor::api::execution::ExecutionCapability;
|
||||
/// Exposes supported Solana clusters.
|
||||
pub use crate::executor::api::execution::ExecutionCluster;
|
||||
/// Exposes cluster restrictions.
|
||||
pub use crate::executor::api::execution::ExecutionClusterPolicy;
|
||||
/// Exposes the result of waiting for transaction confirmation.
|
||||
pub use crate::executor::api::execution::ExecutionConfirmationResult;
|
||||
/// Exposes transaction confirmation states.
|
||||
pub use crate::executor::api::execution::ExecutionConfirmationStatus;
|
||||
/// Exposes explicit execution cost ceilings.
|
||||
pub use crate::executor::api::execution::ExecutionCostLimit;
|
||||
/// Exposes the complete execution policy.
|
||||
pub use crate::executor::api::execution::ExecutionPolicy;
|
||||
/// Exposes the result of a transaction send adapter.
|
||||
pub use crate::executor::api::execution::ExecutionSendResult;
|
||||
/// Exposes the simulation policy.
|
||||
pub use crate::executor::api::execution::ExecutionSimulationPolicy;
|
||||
/// Exposes the simulation result contract.
|
||||
pub use crate::executor::api::execution::ExecutionSimulationResult;
|
||||
/// Exposes one planned instruction account.
|
||||
pub use crate::executor::api::execution::PlannedAccount;
|
||||
/// Exposes one encoded planned instruction.
|
||||
pub use crate::executor::api::execution::PlannedInstruction;
|
||||
/// Exposes post-execution replay diagnostics.
|
||||
pub use crate::executor::api::execution::PostExecutionDiagnostic;
|
||||
/// Exposes post-execution validation requirements.
|
||||
pub use crate::executor::api::execution::PostExecutionValidationPolicy;
|
||||
/// Exposes a typed execution plan.
|
||||
pub use crate::executor::api::execution::PreparedExecutionPlan;
|
||||
/// Exposes one required signer.
|
||||
pub use crate::executor::api::execution::RequiredSigner;
|
||||
/// Exposes the typed executor contract.
|
||||
pub use crate::executor::api::execution::TypedInstructionExecutor;
|
||||
/// Exposes the legacy common execution plan type.
|
||||
pub use crate::executor::api::executor::ExecutionPlan;
|
||||
/// Exposes the legacy common execution request type.
|
||||
pub use crate::executor::api::executor::ExecutionRequest;
|
||||
/// Exposes the legacy common execution support enum.
|
||||
pub use crate::executor::api::executor::ExecutionSupport;
|
||||
/// Exposes the legacy common instruction executor trait.
|
||||
pub use crate::executor::api::executor::InstructionExecutor;
|
||||
/// Exposes the compact JSON payload serializer.
|
||||
pub use crate::executor::api::executor::serialize_payload_json;
|
||||
/// Exposes the pretty JSON payload serializer.
|
||||
pub use crate::executor::api::executor::serialize_payload_json_pretty;
|
||||
/// Stable decoded observation materializer contract used by the common pipeline.
|
||||
pub use crate::materializer::api::contracts::EventMaterializer;
|
||||
/// Explicit policy applied to successful and failed source transactions.
|
||||
pub use crate::materializer::api::contracts::MaterializationTransactionPolicy;
|
||||
/// Stable processor-owned business output derived from one decoded observation.
|
||||
pub use crate::materializer::api::contracts::MaterializedOutput;
|
||||
/// Structured materializer diagnostic without generic error wrappers.
|
||||
pub use crate::materializer::api::contracts::MaterializerDiagnostic;
|
||||
/// Complete explicit result produced by one materializer invocation.
|
||||
pub use crate::materializer::api::contracts::MaterializerExecutionResult;
|
||||
/// Stable identity of one decoded event materializer.
|
||||
pub use crate::materializer::api::contracts::MaterializerIdentity;
|
||||
/// Terminal materializer result status.
|
||||
pub use crate::materializer::api::contracts::MaterializerOutcomeStatus;
|
||||
/// Returns true when a materializer explicitly accepts one decoded family.
|
||||
pub use crate::materializer::api::contracts::materializer_accepts_family;
|
||||
/// Returns true when a materializer accepts one exact decoded observation.
|
||||
pub use crate::materializer::api::contracts::materializer_accepts_observation;
|
||||
/// Applies the mandatory source transaction policy before materialization.
|
||||
pub use crate::materializer::api::contracts::validate_materialization_policy;
|
||||
/// Rejects mutable business outputs derived from failed or uncommitted observations.
|
||||
pub use crate::materializer::api::contracts::validate_materialized_output_policy;
|
||||
/// Exposes the legacy common business materializer trait.
|
||||
pub use crate::materializer::api::materializer::Materializer;
|
||||
/// Current canonical transaction document version.
|
||||
pub use crate::model::canonical_transaction::CANONICAL_TRANSACTION_FORMAT_VERSION;
|
||||
/// Canonical address lookup table reference.
|
||||
pub use crate::model::canonical_transaction::CanonicalAddressTableLookup;
|
||||
/// Canonical compiled Solana instruction.
|
||||
pub use crate::model::canonical_transaction::CanonicalCompiledInstruction;
|
||||
/// Canonical group of inner instructions.
|
||||
pub use crate::model::canonical_transaction::CanonicalInnerInstructionGroup;
|
||||
/// Canonical runtime-loaded addresses.
|
||||
pub use crate::model::canonical_transaction::CanonicalLoadedAddresses;
|
||||
/// Canonical Solana message header.
|
||||
pub use crate::model::canonical_transaction::CanonicalMessageHeader;
|
||||
/// Canonical transaction return data.
|
||||
pub use crate::model::canonical_transaction::CanonicalReturnData;
|
||||
/// Canonical transaction reward.
|
||||
pub use crate::model::canonical_transaction::CanonicalReward;
|
||||
/// Canonical exact token balance.
|
||||
pub use crate::model::canonical_transaction::CanonicalTokenBalance;
|
||||
/// Source-independent canonical Solana transaction.
|
||||
pub use crate::model::canonical_transaction::CanonicalTransaction;
|
||||
/// Canonical Solana transaction message.
|
||||
pub use crate::model::canonical_transaction::CanonicalTransactionMessage;
|
||||
/// Canonical Solana transaction execution metadata.
|
||||
pub use crate::model::canonical_transaction::CanonicalTransactionMetadata;
|
||||
/// Canonical Solana transaction execution status.
|
||||
pub use crate::model::canonical_transaction::CanonicalTransactionStatus;
|
||||
/// Canonical Solana transaction version.
|
||||
pub use crate::model::canonical_transaction::CanonicalTransactionVersion;
|
||||
/// Protocol-level decoded event produced by a decoder.
|
||||
pub use crate::model::decoded::DecodedProtocolEvent;
|
||||
/// Confidence level for a decoded event.
|
||||
pub use crate::model::decoded::DecoderConfidence;
|
||||
/// Source from which a decoded event was derived.
|
||||
pub use crate::model::decoded::EventSourceKind;
|
||||
/// Business-level materialized event placeholder.
|
||||
pub use crate::model::materialized::MaterializedEvent;
|
||||
/// Materialized event family.
|
||||
pub use crate::model::materialized::MaterializedEventFamily;
|
||||
/// Canonical event code in `<surface_code>.<event_name>` format.
|
||||
pub use crate::model::nomenclature::EventCode;
|
||||
/// High-level event family.
|
||||
pub use crate::model::nomenclature::EventFamily;
|
||||
/// Event name without surface prefix.
|
||||
pub use crate::model::nomenclature::EventName;
|
||||
/// Stable internal program code.
|
||||
pub use crate::model::nomenclature::ProgramCode;
|
||||
/// Protocol family code, for example `raydium` or `meteora`.
|
||||
pub use crate::model::nomenclature::ProtocolCode;
|
||||
/// Concrete protocol surface code, for example `raydium_amm_v4`.
|
||||
pub use crate::model::nomenclature::SurfaceCode;
|
||||
/// Generic program observation derived from a Solana instruction.
|
||||
pub use crate::model::observation::ProgramObservation;
|
||||
/// Source-neutral replay contracts.
|
||||
/// Version of the normalized core replay contract.
|
||||
pub use crate::model::replay::CORE_REPLAY_INPUT_CONTRACT_VERSION;
|
||||
/// Decoder replay input containing one instruction plus extracted transaction context.
|
||||
pub use crate::model::replay::CoreInstructionReplayInput;
|
||||
/// Stable top-level or inner instruction path.
|
||||
pub use crate::model::solana::InstructionPath;
|
||||
/// Solana program id.
|
||||
pub use crate::model::solana::ProgramId;
|
||||
/// Solana public key.
|
||||
pub use crate::model::solana::Pubkey;
|
||||
/// Solana transaction signature.
|
||||
pub use crate::model::solana::Signature;
|
||||
/// Solana slot.
|
||||
pub use crate::model::solana::Slot;
|
||||
Reference in New Issue
Block a user