v0.2.11-pre.002-fix.003

This commit is contained in:
2026-08-25 20:37:09 +02:00
parent 126e8abfcd
commit 2dbddfe367
15 changed files with 499 additions and 271 deletions

View File

@@ -1,5 +1,5 @@
// file: crates/ksp-offchain-transport-lib/src/lib.rs
// version: 2
// version: 3
#![warn(missing_docs)]
#![deny(unreachable_pub)]
@@ -21,61 +21,61 @@ mod market_price_provider;
mod market_price_settings;
/// Stable error code for an invalid exact decimal price.
pub use self::error::ERROR_CODE_PRICE_DECIMAL_INVALID;
/// Stable error code for an invalid provider descriptor.
pub use self::error::ERROR_CODE_PROVIDER_DESCRIPTOR_INVALID;
/// Stable error code for an invalid provider identifier.
pub use self::error::ERROR_CODE_PROVIDER_ID_INVALID;
pub use self::error::ERROR_CODE_MARKET_PRICE_DECIMAL_INVALID;
/// Stable error code for an invalid provider-neutral observation.
pub use self::error::ERROR_CODE_PROVIDER_OBSERVATION_INVALID;
pub use self::error::ERROR_CODE_MARKET_PRICE_OBSERVATION_INVALID;
/// Stable error code for an invalid provider descriptor.
pub use self::error::ERROR_CODE_MARKET_PRICE_PROVIDER_DESCRIPTOR_INVALID;
/// Stable error code for an invalid provider identifier.
pub use self::error::ERROR_CODE_MARKET_PRICE_PROVIDER_ID_INVALID;
/// Stable error code for invalid common provider settings.
pub use self::error::ERROR_CODE_PROVIDER_SETTINGS_INVALID;
pub use self::error::ERROR_CODE_MARKET_PRICE_PROVIDER_SETTINGS_INVALID;
/// Maximum accepted byte length for one textual decimal input.
pub use self::market_price_decimal::PRICE_DECIMAL_MAX_INPUT_BYTES;
pub use self::market_price_decimal::MARKET_PRICE_DECIMAL_MAX_INPUT_BYTES;
/// Maximum decimal scale retained by the canonical SOL/USD price representation.
pub use self::market_price_decimal::PRICE_DECIMAL_MAX_SCALE;
/// Exact positive decimal value used by the public off-chain price contract.
pub use self::market_price_decimal::PriceDecimal;
pub use self::market_price_decimal::MARKET_PRICE_DECIMAL_MAX_SCALE;
/// Exact positive decimal value used by the public market-price contract.
pub use self::market_price_decimal::MarketPriceDecimal;
/// Maximum safe provenance length attached to one normalized observation.
pub use self::market_price_observation::PRICE_PROVENANCE_MAX_BYTES;
/// Safe bounded provenance supplied by one provider adapter.
pub use self::market_price_observation::PriceProvenance;
/// Millisecond UTC timestamp used for request, receipt, provider and cooldown projections.
pub use self::market_price_observation::PriceTimestamp;
pub use self::market_price_observation::MARKET_PRICE_PROVENANCE_MAX_BYTES;
/// Public V1 SOL/USD observation normalized by Off-chain Transport.
pub use self::market_price_observation::SolUsdPriceObservation;
pub use self::market_price_observation::MarketPriceObservation;
/// Safe bounded provenance supplied by one provider adapter.
pub use self::market_price_observation::MarketPriceProvenance;
/// Millisecond UTC timestamp used for request, receipt, provider and cooldown projections.
pub use self::market_price_observation::MarketPriceTimestamp;
/// Maximum provider display-name length accepted by descriptors.
pub use self::market_price_provider::PRICE_PROVIDER_DISPLAY_NAME_MAX_BYTES;
pub use self::market_price_provider::MARKET_PRICE_PROVIDER_DISPLAY_NAME_MAX_BYTES;
/// Maximum opaque provider identifier length accepted by the public contract.
pub use self::market_price_provider::PRICE_PROVIDER_ID_MAX_BYTES;
pub use self::market_price_provider::MARKET_PRICE_PROVIDER_ID_MAX_BYTES;
/// Only price pair exposed by the `0.2.11` V1 public contract.
pub use self::market_price_provider::PricePair;
pub use self::market_price_provider::MarketPricePair;
/// Generic authentication capability exposed by a configured provider descriptor.
pub use self::market_price_provider::PriceProviderAuthMode;
pub use self::market_price_provider::MarketPriceProviderAuthMode;
/// Generic runtime availability state exposed without provider-specific error parsing.
pub use self::market_price_provider::PriceProviderAvailability;
pub use self::market_price_provider::MarketPriceProviderAvailability;
/// Provider capability and presentation descriptor consumed by provider-agnostic callers.
pub use self::market_price_provider::PriceProviderDescriptor;
pub use self::market_price_provider::MarketPriceProviderDescriptor;
/// Opaque validated provider identifier owned by Off-chain Transport.
pub use self::market_price_provider::PriceProviderId;
pub use self::market_price_provider::MarketPriceProviderId;
/// Long-term provider quota descriptor that is informational rather than an authoritative local counter.
pub use self::market_price_provider::PriceProviderLongTermQuota;
pub use self::market_price_provider::MarketPriceProviderLongTermQuota;
/// Period used by a documented long-term provider quota.
pub use self::market_price_provider::PriceProviderQuotaPeriod;
pub use self::market_price_provider::MarketPriceProviderQuotaPeriod;
/// Unit used by a documented long-term provider quota.
pub use self::market_price_provider::PriceProviderQuotaUnit;
pub use self::market_price_provider::MarketPriceProviderQuotaUnit;
/// Generic provider request-limit capability.
pub use self::market_price_provider::PriceProviderRateLimit;
pub use self::market_price_provider::MarketPriceProviderRateLimit;
/// Shape of one generic provider request-limit capability.
pub use self::market_price_provider::PriceProviderRateLimitKind;
pub use self::market_price_provider::MarketPriceProviderRateLimitKind;
/// Scope to which a provider documents one request limit.
pub use self::market_price_provider::PriceProviderRateLimitScope;
pub use self::market_price_provider::MarketPriceProviderRateLimitScope;
/// Current provider-neutral runtime state projection.
pub use self::market_price_provider::PriceProviderState;
/// Price semantics retained so consumers never assume all providers report equivalent market values.
pub use self::market_price_provider::PriceSemantics;
pub use self::market_price_provider::MarketPriceProviderState;
/// Market-price semantics retained so consumers never assume all providers report equivalent market values.
pub use self::market_price_provider::MarketPriceSemantics;
/// Common provider settings shared by provider-specific runtime settings.
pub use self::market_price_settings::PriceProviderCommonSettings;
pub use self::market_price_settings::MarketPriceProviderCommonSettings;
/// Owning tracing target for events emitted by Off-chain Transport.
pub(crate) use self::constants::TRACING_TARGET;