0.7.47-1FE5

This commit is contained in:
2026-05-31 16:43:19 +02:00
parent 7bd6593015
commit 8b09e82b3b
39 changed files with 24260 additions and 332 deletions

View File

@@ -111,6 +111,14 @@ mod tx_model;
mod tx_resolution;
/// Shared generic types for `kb_lib`.
mod types;
/// Upstream Git registry service facade.
mod upstream_registry;
/// Static upstream Git registry bootstrap data.
mod upstream_registry_generated;
/// Upstream Git registry matching helpers.
mod upstream_registry_match;
/// Upstream Git registry DTOs and static entry types.
mod upstream_registry_types;
/// Wallet-holding observation service.
mod wallet_holding_observation;
/// Wallet-observation service.
@@ -147,19 +155,37 @@ pub use config::WsEndpointConfig;
/// Address Lookup Table program identifier. ("AddressLookupTab1e1111111111111111111111111").
/// @see solana_sdk::pubkey::Pubkey = solana_sdk_ids::address_lookup_table::ID
pub use constants::ADDRESS_LOOKUP_TABLE_PROGRAM_ID;
/// AlphaQ program id from Vybe supported DEX/AMM documentation.
pub use constants::ALPHAQ_PROGRAM_ID;
/// Aquifer program id from Vybe supported DEX/AMM documentation.
pub use constants::AQUIFER_PROGRAM_ID;
/// Arbitrage Bot (6MWVT) / Arbitrage or Sandwich Bot. ("6MWVTis8rmmk6Vt9zmAJJbmb3VuLpzoQ1aHH4N6wQEGh").
pub use constants::ARBITRAGE_BOT_6MWVT_PROGRAM_ID;
/// Associated Token Account program identifier. ("ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL").
/// @see solana_sdk::pubkey::Pubkey = spl_associated_token_account_interface::program::ID
pub use constants::ASSOCIATED_TOKEN_PROGRAM_ID;
/// BisonFi program id from Vybe supported DEX/AMM documentation.
pub use constants::BISONFI_PROGRAM_ID;
/// Canonical Bonk token mint identifier.
pub use constants::BONK_MINT_ID;
/// Bonkswap program id extracted from upstream Git decoder source.
pub use constants::BONKSWAP_PROGRAM_ID;
/// Boop program id extracted from upstream Git decoder source.
pub use constants::BOOP_PROGRAM_ID;
/// BPF Loader program identifier. ("BPFLoader1111111111111111111111111111111111").
/// @see solana_sdk::pubkey::Pubkey = solana_sdk_ids::bpf_loader_deprecated::ID
pub use constants::BPF_LOADER_DEPRECATED_PROGRAM_ID;
/// BPF Loader program identifier. ("BPFLoaderUpgradeab1e11111111111111111111111").
/// @see solana_sdk::pubkey::Pubkey = solana_sdk_ids::bpf_loader_upgradeable::ID
pub use constants::BPF_LOADER_UPGRADEABLE_PROGRAM_ID;
/// Bubblegum program id extracted from upstream Git decoder source.
pub use constants::BUBBLEGUM_PROGRAM_ID;
/// Byreal program id from Vybe supported DEX/AMM documentation.
pub use constants::BYREAL_PROGRAM_ID;
/// Circle Message Transmitter v2 program id extracted from upstream Git decoder source.
pub use constants::CIRCLE_MESSAGE_TRANSMITTER_V2_PROGRAM_ID;
/// Circle Token Messenger v2 program id extracted from upstream Git decoder source.
pub use constants::CIRCLE_TOKEN_MESSENGER_V2_PROGRAM_ID;
/// Compute Budget program identifier. ("ComputeBudget111111111111111111111111111111").
/// @see solana_sdk::pubkey::Pubkey = solana_sdk_ids::compute_budget::ID
pub use constants::COMPUTE_BUDGET_PROGRAM_ID;
@@ -168,6 +194,10 @@ pub use constants::COMPUTE_BUDGET_PROGRAM_ID;
pub use constants::CONFIG_PROGRAM_ID;
/// DexLab Swap/Pool program id. ("DSwpgjMvXhtGn6BsbqmacdBZyfLj6jSWf3HJpdJtmg6N").
pub use constants::DEXLAB_PROGRAM_ID;
/// DFlow Aggregator v4 program id extracted from upstream Git decoder source.
pub use constants::DFLOW_AGGREGATOR_V4_PROGRAM_ID;
/// Drift v2 program id extracted from upstream Git decoder source.
pub use constants::DRIFT_V2_PROGRAM_ID;
/// ED25519 program identifier. ("Ed25519SigVerify111111111111111111111111111").
/// @see solana_sdk::pubkey::Pubkey = solana_sdk_ids::ed25519_program::ID
pub use constants::ED25519_PROGRAM_ID;
@@ -176,14 +206,58 @@ pub use constants::ED25519_PROGRAM_ID;
pub use constants::FEATURE_PROGRAM_ID;
/// FluxBeam program id. ("FLUXubRmkEi2q6K3Y9kBPg9248ggaZVsoSFhtJHSrm1X").
pub use constants::FLUXBEAM_PROGRAM_ID;
/// FusionAMM program id from Vybe supported DEX/AMM documentation.
pub use constants::FUSIONAMM_PROGRAM_ID;
/// Gavel program id extracted from upstream Git decoder source.
pub use constants::GAVEL_PROGRAM_ID;
/// Goonfi program id from Vybe supported DEX/AMM documentation.
pub use constants::GOONFI_PROGRAM_ID;
/// Goonfi v2 program id from Vybe supported DEX/AMM documentation.
pub use constants::GOONFI_V2_PROGRAM_ID;
/// GooseFX v1 program id from Vybe supported DEX/AMM documentation.
pub use constants::GOOSEFX_V1_PROGRAM_ID;
/// Heaven program id extracted from upstream Git decoder source.
pub use constants::HEAVEN_PROGRAM_ID;
/// Humidifi program id from Vybe supported DEX/AMM documentation.
pub use constants::HUMIDIFI_PROGRAM_ID;
/// Incinerator program identifier. ("1nc1nerator11111111111111111111111111111111").
/// @see solana_sdk::pubkey::Pubkey = solana_sdk_ids::incinerator::ID
pub use constants::INCINERATOR_PROGRAM_ID;
/// Canonical Jupiter governance token mint identifier.
pub use constants::JUP_MINT_ID;
/// Jupiter DCA program id extracted from upstream Git decoder source.
pub use constants::JUPITER_DCA_PROGRAM_ID;
/// Jupiter Lend program id extracted from upstream Git decoder source.
pub use constants::JUPITER_LEND_PROGRAM_ID;
/// Jupiter Limit Order 2 program id extracted from upstream Git decoder source.
pub use constants::JUPITER_LIMIT_ORDER_2_PROGRAM_ID;
/// Jupiter Limit Order program id extracted from upstream Git decoder source.
pub use constants::JUPITER_LIMIT_ORDER_PROGRAM_ID;
/// Jupiter Perpetuals program id extracted from upstream Git decoder source.
pub use constants::JUPITER_PERPETUALS_PROGRAM_ID;
/// Jupiter Swap program id extracted from upstream Git decoder source.
pub use constants::JUPITER_SWAP_PROGRAM_ID;
/// Kamino Farms program id extracted from upstream Git decoder source.
pub use constants::KAMINO_FARMS_PROGRAM_ID;
/// Kamino Lending program id extracted from upstream Git decoder source.
pub use constants::KAMINO_LENDING_PROGRAM_ID;
/// Kamino Limit Order program id extracted from upstream Git decoder source.
pub use constants::KAMINO_LIMIT_ORDER_PROGRAM_ID;
/// Kamino Vault program id extracted from upstream Git decoder source.
pub use constants::KAMINO_VAULT_PROGRAM_ID;
/// Lifinity AMM v2 program id extracted from upstream Git decoder source.
pub use constants::LIFINITY_AMM_V2_PROGRAM_ID;
/// Loader V4 program identifier. ("LoaderV411111111111111111111111111111111111").
/// @see solana_sdk::pubkey::Pubkey = solana_sdk_ids::loader_v4::ID
pub use constants::LOADER_V4_PROGRAM_ID;
/// Manifest CLOB program id from Vybe supported DEX/AMM documentation.
pub use constants::MANIFEST_CLOB_PROGRAM_ID;
/// Marginfi v2 program id extracted from upstream Git decoder source.
pub use constants::MARGINFI_V2_PROGRAM_ID;
/// Marinade Finance program id extracted from upstream Git decoder source.
pub use constants::MARINADE_FINANCE_PROGRAM_ID;
/// SPL Memo program id.
pub use constants::MEMO_PROGRAM_ID;
/// MetaDAO AMM v0.5.0 program id.
pub use constants::METADAO_AMM_V0_5_0_PROGRAM_ID;
/// MetaDAO Bid Wall v0.7.0 program id.
@@ -192,12 +266,6 @@ pub use constants::METADAO_BID_WALL_V0_7_0_PROGRAM_ID;
pub use constants::METADAO_FUTARCHY_V0_6_0_PROGRAM_ID;
/// MetaDAO Launchpad v0.7.0 program id.
pub use constants::METADAO_LAUNCHPAD_V0_7_0_PROGRAM_ID;
/// MetaDAO META active token mint identifier.
pub use constants::METADAO_META_MINT_ID;
/// MetaDAO METAC legacy token mint identifier.
pub use constants::METADAO_METAC_LEGACY_MINT_ID;
/// MetaDAO-linked P2P token mint candidate.
pub use constants::METADAO_P2P_MINT_ID;
/// Meteora DAMM v1 program id. ("Eo7WjKq67rjJQSZxS6z3YkapzY3eMj6Xy8X5EQVn5UaB").
pub use constants::METEORA_DAMM_V1_PROGRAM_ID;
/// Meteora DAMM v2 program id. ("cpamdpZCGKUy5JxQXB4dcpGPiikHawvSWAd6mEn1sGG").
@@ -206,13 +274,39 @@ pub use constants::METEORA_DAMM_V2_PROGRAM_ID;
pub use constants::METEORA_DBC_PROGRAM_ID;
/// Meteora DLMM program id. ("LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo").
pub use constants::METEORA_DLMM_PROGRAM_ID;
/// Meteora Vault program id extracted from upstream Git decoder source.
pub use constants::METEORA_VAULT_PROGRAM_ID;
/// Moonshot program id extracted from upstream Git decoder source.
pub use constants::MOONSHOT_PROGRAM_ID;
/// MPL Core program id extracted from upstream Git decoder source.
pub use constants::MPL_CORE_PROGRAM_ID;
/// MPL Token Metadata program id extracted from upstream Git decoder source.
pub use constants::MPL_TOKEN_METADATA_PROGRAM_ID;
/// Solana Name Service program id extracted from upstream Git decoder source.
pub use constants::NAME_SERVICE_PROGRAM_ID;
/// Native Loader program identifier. ("NativeLoader1111111111111111111111111111111").
/// @see solana_sdk::pubkey::Pubkey = solana_sdk_ids::native_loader::ID
pub use constants::NATIVE_LOADER_PROGRAM_ID;
/// Obric v2 program id from Vybe supported DEX/AMM documentation.
pub use constants::OBRIC_V2_PROGRAM_ID;
/// OKX DEX program id extracted from upstream Git decoder source.
pub use constants::OKX_DEX_PROGRAM_ID;
/// Onchain Labs DEX v2 program id extracted from upstream Git decoder source.
pub use constants::ONCHAIN_LABS_DEX_V2_PROGRAM_ID;
/// Ondo Global Market program id from Vybe supported DEX/AMM documentation.
pub use constants::ONDO_GLOBAL_MARKET_PROGRAM_ID;
/// OpenBook v2 program id extracted from upstream Git decoder source.
pub use constants::OPENBOOK_V2_PROGRAM_ID;
/// Orca Whirlpools program id. ("whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc").
pub use constants::ORCA_WHIRLPOOLS_PROGRAM_ID;
/// Pancake Swap program id extracted from upstream Git decoder source.
pub use constants::PANCAKE_SWAP_PROGRAM_ID;
/// Phoenix v1 program id extracted from upstream Git decoder source.
pub use constants::PHOENIX_V1_PROGRAM_ID;
/// Printr program id candidate observed on Solscan.
pub use constants::PRINTR_PROGRAM_ID;
/// Pump Fees program id extracted from upstream Git decoder source.
pub use constants::PUMP_FEES_PROGRAM_ID;
/// Pump.fun program id. ("6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P").
pub use constants::PUMP_FUN_PROGRAM_ID;
/// PumpSwap / PumpAMM program id. ("pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA").
@@ -227,28 +321,44 @@ pub use constants::RAYDIUM_AMM_V4_PROGRAM_ID;
pub use constants::RAYDIUM_CLMM_PROGRAM_ID;
/// Raydium CPMM mainnet program id. ("CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C").
pub use constants::RAYDIUM_CPMM_PROGRAM_ID;
/// Raydium LaunchLab program id. ("LanMV9sAd7wArD4vJFi2qDdfnVhFxYSUg6eADduJ3uj").
/// Raydium LaunchLab / Launchpad program id. ("LanMV9sAd7wArD4vJFi2qDdfnVhFxYSUg6eADduJ3uj").
pub use constants::RAYDIUM_LAUNCHLAB_PROGRAM_ID;
/// Raydium Liquidity Locking program id extracted from upstream Git decoder source.
pub use constants::RAYDIUM_LIQUIDITY_LOCKING_PROGRAM_ID;
/// Raydium Stable Swap AMM program id, deprecated. ("5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h").
pub use constants::RAYDIUM_STABLE_SWAP_AMM_PROGRAM_ID;
/// Scorch program id from Vybe supported DEX/AMM documentation.
pub use constants::SCORCH_PROGRAM_ID;
/// Secp256k1 program identifier. ("KeccakSecp256k11111111111111111111111111111").
/// @see solana_sdk::pubkey::Pubkey = solana_sdk_ids::secp256k1_program::ID
pub use constants::SECP256K1_PROGRAM_ID;
/// Secp256r1 program identifier. ("Secp256r1SigVerify1111111111111111111111111").
/// @see solana_sdk::pubkey::Pubkey = solana_sdk_ids::secp256r1_program::ID
pub use constants::SECP256R1_PROGRAM_ID;
/// Sharky program id extracted from upstream Git decoder source.
pub use constants::SHARKY_PROGRAM_ID;
/// Solayer Restaking program id extracted from upstream Git decoder source.
pub use constants::SOLAYER_RESTAKING_PROGRAM_ID;
/// SolFi v2 program id from Vybe supported DEX/AMM documentation.
pub use constants::SOLFI_V2_PROGRAM_ID;
/// SPL Token-2022 program identifier. ("TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb").
/// @see solana_sdk::pubkey::Pubkey = spl_token_2022_interface::ID
pub use constants::SPL_TOKEN_2022_PROGRAM_ID;
/// SPL Token program identifier. ("TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA").
/// @see solana_sdk::pubkey::Pubkey = spl_token_interface::ID
pub use constants::SPL_TOKEN_PROGRAM_ID;
/// Stabble stable-swap program id extracted from upstream Git decoder source.
pub use constants::STABBLE_STABLE_SWAP_PROGRAM_ID;
/// Stabble weighted-swap program id extracted from upstream Git decoder source.
pub use constants::STABBLE_WEIGHTED_SWAP_PROGRAM_ID;
/// Stake Config program identifier. ("StakeConfig11111111111111111111111111111111").
/// @see solana_sdk::pubkey::Pubkey = solana_sdk_ids::stake::config::ID
pub use constants::STAKE_CONFIG_PROGRAM_ID;
/// Stake program identifier. ("Stake11111111111111111111111111111111111111").
/// @see solana_sdk::pubkey::Pubkey = solana_sdk_ids::stake::ID
pub use constants::STAKE_PROGRAM_ID;
/// Swig program id extracted from upstream Git decoder source.
pub use constants::SWIG_PROGRAM_ID;
/// System program identifier. ("11111111111111111111111111111111").
/// @see solana_sdk::pubkey::Pubkey = solana_sdk_ids::system_program::ID
pub use constants::SYSTEM_PROGRAM_ID;
@@ -295,12 +405,24 @@ pub use constants::SYSVAR_STAKE_HISTORY_PROGRAM_ID;
pub use constants::USDC_MINT_ID;
/// Canonical Solana USDT mint identifier.
pub use constants::USDT_MINT_ID;
/// Vertigo program id extracted from upstream Git decoder source.
pub use constants::VERTIGO_PROGRAM_ID;
/// Virtuals program id extracted from upstream Git decoder source.
pub use constants::VIRTUALS_PROGRAM_ID;
/// Vote program identifier. ("Vote111111111111111111111111111111111111111").
/// @see solana_sdk::pubkey::Pubkey = solana_sdk_ids::vote::ID
pub use constants::VOTE_PROGRAM_ID;
/// Wavebreak program id extracted from upstream Git decoder source.
pub use constants::WAVEBREAK_PROGRAM_ID;
/// Woofi program id from Vybe supported DEX/AMM documentation.
pub use constants::WOOFI_PROGRAM_ID;
/// Wrapped SOL mint identifier. ("So11111111111111111111111111111111111111112").
/// @see solana_sdk::pubkey::Pubkey = spl_token_interface::native_mint::ID
pub use constants::WSOL_MINT_ID;
/// ZeroFi program id from Vybe supported DEX/AMM documentation.
pub use constants::ZEROFI_PROGRAM_ID;
/// Zeta program id extracted from upstream Git decoder source.
pub use constants::ZETA_PROGRAM_ID;
/// Zk El Gamal Proof program identifier. ("ZkE1Gama1Proof11111111111111111111111111111").
/// @see solana_sdk::pubkey::Pubkey = solana_sdk_ids::zk_elgamal_proof_program::ID
pub use constants::ZK_ELGAMAL_PROOF_PROGRAM_ID;
@@ -943,6 +1065,12 @@ pub use dex::MeteoraDlmmPoolLifecycleDecoded;
pub use dex::MeteoraDlmmRewardDecoded;
/// Decoded Meteora DLMM swap event.
pub use dex::MeteoraDlmmSwapDecoded;
/// Decoded OpenBook v2 audit event.
pub use dex::OpenBookV2AuditDecoded;
/// Decoded OpenBook v2 event.
pub use dex::OpenBookV2DecodedEvent;
/// OpenBook v2 audit-only decoder.
pub use dex::OpenBookV2Decoder;
/// Decoded Orca Whirlpools create-pool event.
pub use dex::OrcaWhirlpoolsCreatePoolDecoded;
/// Decoded Orca Whirlpools event.
@@ -951,6 +1079,12 @@ pub use dex::OrcaWhirlpoolsDecodedEvent;
pub use dex::OrcaWhirlpoolsDecoder;
/// Decoded Orca Whirlpools swap event.
pub use dex::OrcaWhirlpoolsSwapDecoded;
/// Decoded Phoenix v1 audit event.
pub use dex::PhoenixV1AuditDecoded;
/// Decoded Phoenix v1 event.
pub use dex::PhoenixV1DecodedEvent;
/// Phoenix v1 audit-only decoder.
pub use dex::PhoenixV1Decoder;
/// Decoded Pump.fun `create_v2` token event.
pub use dex::PumpFunCreateV2TokenDecoded;
/// Decoded Pump.fun event.
@@ -1164,8 +1298,12 @@ pub use local_pipeline_validation::validate_local_pipeline_diagnostics_summary;
pub use non_trade_event_materialization::NonTradeEventMaterializationResult;
/// Materializes useful non-trade decoded DEX events.
pub use non_trade_event_materialization::NonTradeEventMaterializationService;
/// Backfill signatures grouped by candidate kind.
pub use onchain_dex_pair_discovery::OnchainDexBackfillSignaturesByKindDto;
/// Candidate account inferred from generic transaction evidence.
pub use onchain_dex_pair_discovery::OnchainDexCandidateAccountDto;
/// Candidate summary grouped by kind and transaction success state.
pub use onchain_dex_pair_discovery::OnchainDexCandidateKindSummaryDto;
/// Cursor hint for one on-chain DEX discovery source address.
pub use onchain_dex_pair_discovery::OnchainDexPaginationCursorDto;
/// Candidate transaction/instruction observed on-chain for one DEX program id.
@@ -1266,6 +1404,40 @@ pub use tx_resolution::WsTransactionResolutionRelay;
pub use tx_resolution::WsTransactionResolutionRelayStats;
/// Generic connection state used by transport clients.
pub use types::ConnectionState;
/// Read-only upstream registry service.
pub use upstream_registry::UpstreamRegistryService;
/// Static upstream registry entry kind for account layouts.
pub use upstream_registry_types::ENTRY_KIND_ACCOUNT;
/// Static upstream registry entry kind for events.
pub use upstream_registry_types::ENTRY_KIND_EVENT;
/// Static upstream registry entry kind for instructions.
pub use upstream_registry_types::ENTRY_KIND_INSTRUCTION;
/// Static upstream registry entry kind for programs.
pub use upstream_registry_types::ENTRY_KIND_PROGRAM;
/// Generic upstream Git proof status for layout-only unverified entries.
pub use upstream_registry_types::PROOF_STATUS_UPSTREAM_GIT_LAYOUT_UNVERIFIED;
/// Generic upstream Git proof status for locally materialized entries.
pub use upstream_registry_types::PROOF_STATUS_UPSTREAM_GIT_LOCAL_CORPUS_MATERIALIZED;
/// Generic upstream Git proof status for locally observed entries.
pub use upstream_registry_types::PROOF_STATUS_UPSTREAM_GIT_LOCAL_CORPUS_OBSERVED;
/// Generic upstream Git proof status for decoder-mapped unverified entries.
pub use upstream_registry_types::PROOF_STATUS_UPSTREAM_GIT_MAPPED_UNVERIFIED;
/// Generic upstream Git proof status for unverified entries.
pub use upstream_registry_types::PROOF_STATUS_UPSTREAM_GIT_UNVERIFIED;
/// Generic event kind used for instruction-level upstream registry matches.
pub use upstream_registry_types::UPSTREAM_REGISTRY_INSTRUCTION_MATCH_EVENT_KIND;
/// Generic protocol name used for upstream registry matches that are not business-materialized.
pub use upstream_registry_types::UPSTREAM_REGISTRY_PROTOCOL_NAME;
/// Static upstream registry entry.
pub use upstream_registry_types::UpstreamRegistryEntry;
/// Owned upstream registry entry DTO.
pub use upstream_registry_types::UpstreamRegistryEntryDto;
/// Upstream registry search request DTO.
pub use upstream_registry_types::UpstreamRegistrySearchRequestDto;
/// Upstream registry search result DTO.
pub use upstream_registry_types::UpstreamRegistrySearchResultDto;
/// Upstream registry summary DTO.
pub use upstream_registry_types::UpstreamRegistrySummaryDto;
/// One wallet-holding observation result.
pub use wallet_holding_observation::WalletHoldingObservationResult;
/// Wallet-holding observation service.