v0.1.0-pre.062

This commit is contained in:
2026-07-30 10:27:06 +02:00
parent f40fb78817
commit 460671e19d
319 changed files with 392513 additions and 9507 deletions

View File

@@ -4,7 +4,6 @@
//! Consolidated executor modules.
mod adapter;
mod admin;
mod amm;
mod api;
mod bridge;
@@ -27,6 +26,8 @@ mod solana;
mod spl;
mod stable;
mod staking;
mod storage;
mod strategy;
mod treasury;
mod vault;
mod vesting;
@@ -35,10 +36,8 @@ mod weighted;
/// Exposes the reserved `adapter/saber_decimal_wrapper` executor.
pub use self::adapter::ExAdapterSaberDecimalWrapperExecutor;
/// Exposes the reserved `admin/jupiter_lock` executor.
pub use self::admin::ExAdminJupiterLockExecutor;
/// Exposes the reserved `admin/pump_fees` executor.
pub use self::admin::ExAdminPumpFeesExecutor;
/// Reserved `kb-lib.executor.adapter.spl_token_wrap` executor.
pub use self::adapter::ExAdapterSplTokenWrapExecutor;
/// Exposes the reserved `amm/aldrin_v1` executor.
pub use self::amm::ExAmmAldrinV1Executor;
/// Exposes the reserved `amm/aldrin_v2` executor.
@@ -61,8 +60,6 @@ pub use self::amm::ExAmmGoosefxV2Executor;
pub use self::amm::ExAmmGuacSwapExecutor;
/// Exposes the reserved `amm/lifinity_swap_v2` executor.
pub use self::amm::ExAmmLifinitySwapV2Executor;
/// Exposes the reserved `amm/metadao_futarchy_amm` executor.
pub use self::amm::ExAmmMetadaoFutarchyAmmExecutor;
/// Exposes the reserved `amm/metadao_v0_5` executor.
pub use self::amm::ExAmmMetadaoV05Executor;
/// Exposes the reserved `amm/meteora_damm_v1` executor.
@@ -83,8 +80,6 @@ pub use self::amm::ExAmmSolfiExecutor;
pub use self::amm::ExAmmSolfiV2Executor;
/// Exposes the reserved `amm/vertigo` executor.
pub use self::amm::ExAmmVertigoExecutor;
/// Exposes the reserved `amm/virtuals` executor.
pub use self::amm::ExAmmVirtualsExecutor;
/// Exposes the reserved `amm/woofi` executor.
pub use self::amm::ExAmmWoofiExecutor;
/// Exposes the reserved `amm/zero_fi` executor.
@@ -169,8 +164,14 @@ pub use self::dlmm::ExDlmmMeteoraExecutor;
pub use self::fees::ExFeesBagsFeeShareV1Executor;
/// Exposes the reserved `fees/bags_fee_share_v2` executor.
pub use self::fees::ExFeesBagsFeeShareV2Executor;
/// Exposes the reserved `admin/pump_fees` executor.
pub use self::fees::ExFeesPumpFeesExecutor;
/// Exposes the reserved `governance/metadao_bid_wall` executor.
pub use self::governance::ExGovernanceMetadaoBidWallExecutor;
/// Exposes the reserved `amm/metadao_futarchy_amm` executor.
pub use self::governance::ExGovernanceMetadaoFutarchyExecutor;
/// Reserved `kb-lib.executor.governance.squads_multisig` executor.
pub use self::governance::ExGovernanceSquadsMultisigExecutor;
/// Exposes the reserved `launchpad/boop_fun` executor.
pub use self::launchpad::ExLaunchpadBoopFunExecutor;
/// Exposes the reserved `launchpad/metadao_ico` executor.
@@ -189,6 +190,8 @@ pub use self::launchpad::ExLaunchpadPumpFunExecutor;
pub use self::launchpad::ExLaunchpadPumpPumpupAiExecutor;
/// Exposes the reserved `launchpad/raydium_launchlab` executor.
pub use self::launchpad::ExLaunchpadRaydiumLaunchlabExecutor;
/// Exposes the reserved `amm/virtuals` executor.
pub use self::launchpad::ExLaunchpadVirtualsExecutor;
/// Exposes the reserved `lending/clone` executor.
pub use self::lending::ExLendingCloneExecutor;
/// Exposes the reserved `lending/jupiter_lend_borrow` executor.
@@ -207,10 +210,14 @@ pub use self::lending::ExLendingMarginfiV2Executor;
pub use self::lock::ExLockRaydiumLpExecutor;
/// Exposes the reserved `metadata/metaplex_token_metadata` executor.
pub use self::metadata::ExMetadataMetaplexTokenMetadataExecutor;
/// Reserved `kb-lib.executor.metadata.solana_program_metadata` executor.
pub use self::metadata::ExMetadataSolanaProgramMetadataExecutor;
/// Exposes the reserved `metadata/spl_name_service` executor.
pub use self::metadata::ExMetadataSplNameServiceExecutor;
/// Exposes the reserved `nft/metaplex_bubblegum` executor.
pub use self::nft::ExNftMetaplexBubblegumExecutor;
/// Reserved `kb-lib.executor.nft.tensor_cnft` executor.
pub use self::nft::ExNftTensorCnftExecutor;
/// Exposes the reserved `orderbook/jupiter_limit_order` executor.
pub use self::orderbook::ExOrderbookJupiterLimitOrderExecutor;
/// Exposes the reserved `orderbook/jupiter_limit_order_v2` executor.
@@ -221,6 +228,8 @@ pub use self::orderbook::ExOrderbookOpenbookV2Executor;
pub use self::perpetuals::ExPerpetualsDriftV2Executor;
/// Exposes the reserved `perpetuals/jupiter` executor.
pub use self::perpetuals::ExPerpetualsJupiterExecutor;
/// Reserved `kb-lib.executor.perpetuals.phoenix_eternal` executor.
pub use self::perpetuals::ExPerpetualsPhoenixEternalExecutor;
/// Exposes the reserved `perpetuals/zeta` executor.
pub use self::perpetuals::ExPerpetualsZetaExecutor;
/// Exposes the reserved `router/dflow_aggregator_v4` executor.
@@ -229,8 +238,6 @@ pub use self::router::ExRouterDflowAggregatorV4Executor;
pub use self::router::ExRouterJupiterAggregatorV4Executor;
/// Exposes the reserved `router/jupiter_aggregator_v6` executor.
pub use self::router::ExRouterJupiterAggregatorV6Executor;
/// Exposes the reserved `router/jupiter_dca` executor.
pub use self::router::ExRouterJupiterDcaExecutor;
/// Exposes the reserved `router/okx_labs_v1` executor.
pub use self::router::ExRouterOkxLabsV1Executor;
/// Exposes the reserved `router/okx_labs_v2` executor.
@@ -873,12 +880,18 @@ pub use self::stable::ExStableSwapJupiterStableExecutor;
pub use self::stable::ExStableSwapNumeraireExecutor;
/// Exposes the reserved `stable/swap_stabble` executor.
pub use self::stable::ExStableSwapStabbleExecutor;
/// Reserved `kb-lib.executor.staking.jito_tip_distribution` executor.
pub use self::staking::ExStakingJitoTipDistributionExecutor;
/// Exposes the reserved `staking/kamino_farm` executor.
pub use self::staking::ExStakingKaminoFarmExecutor;
/// Exposes the reserved `staking/marinade_finance` executor.
pub use self::staking::ExStakingMarinadeFinanceExecutor;
/// Exposes the reserved `staking/solayer` executor.
pub use self::staking::ExStakingSolayerExecutor;
/// Reserved `kb-lib.executor.storage.solana_record` executor.
pub use self::storage::ExStorageSolanaRecordExecutor;
/// Exposes the reserved `router/jupiter_dca` executor.
pub use self::strategy::ExStrategyJupiterDcaExecutor;
/// Exposes the reserved `treasury/helium_treasury_management` executor.
pub use self::treasury::ExTreasuryHeliumTreasuryManagementExecutor;
/// Exposes the reserved `vault/carrot_defi` executor.
@@ -893,6 +906,8 @@ pub use self::vault::ExVaultKaminoV2Executor;
pub use self::vault::ExVaultKaminoYvaultsExecutor;
/// Exposes the reserved `vault/meteora` executor.
pub use self::vault::ExVaultMeteoraExecutor;
/// Exposes the reserved `admin/jupiter_lock` executor.
pub use self::vesting::ExVestingJupiterLockExecutor;
/// Exposes the reserved `vesting/streamflow` executor.
pub use self::vesting::ExVestingStreamflowExecutor;
/// Exposes the reserved `wallet/jupiter_apepro_smart_wallet` executor.
@@ -983,10 +998,17 @@ pub(crate) use self::spl::executor_spl_token_build_prepared_plan;
mod reserved_executor_tests {
#[test]
fn every_reserved_executor_is_registered_and_builds_only_an_empty_plan() {
let executors: [&dyn crate::ExApiInstructionExecutor; 98] = [
let executors: [&dyn crate::ExApiInstructionExecutor; 105] = [
&crate::ExAdapterSaberDecimalWrapperExecutor,
&crate::ExAdminJupiterLockExecutor,
&crate::ExAdminPumpFeesExecutor,
&crate::ExAdapterSplTokenWrapExecutor,
&crate::ExGovernanceSquadsMultisigExecutor,
&crate::ExMetadataSolanaProgramMetadataExecutor,
&crate::ExNftTensorCnftExecutor,
&crate::ExPerpetualsPhoenixEternalExecutor,
&crate::ExStakingJitoTipDistributionExecutor,
&crate::ExStorageSolanaRecordExecutor,
&crate::ExVestingJupiterLockExecutor,
&crate::ExFeesPumpFeesExecutor,
&crate::ExAmmAldrinV1Executor,
&crate::ExAmmAldrinV2Executor,
&crate::ExAmmAlphaqExecutor,
@@ -998,7 +1020,7 @@ mod reserved_executor_tests {
&crate::ExAmmGoosefxV2Executor,
&crate::ExAmmGuacSwapExecutor,
&crate::ExAmmLifinitySwapV2Executor,
&crate::ExAmmMetadaoFutarchyAmmExecutor,
&crate::ExGovernanceMetadaoFutarchyExecutor,
&crate::ExAmmMetadaoV05Executor,
&crate::ExAmmMeteoraDammV1Executor,
&crate::ExAmmMeteoraDammV2Executor,
@@ -1009,7 +1031,7 @@ mod reserved_executor_tests {
&crate::ExAmmSolfiExecutor,
&crate::ExAmmSolfiV2Executor,
&crate::ExAmmVertigoExecutor,
&crate::ExAmmVirtualsExecutor,
&crate::ExLaunchpadVirtualsExecutor,
&crate::ExAmmWoofiExecutor,
&crate::ExAmmZeroFiExecutor,
&crate::ExAmmZoraExecutor,
@@ -1057,7 +1079,7 @@ mod reserved_executor_tests {
&crate::ExRouterDflowAggregatorV4Executor,
&crate::ExRouterJupiterAggregatorV4Executor,
&crate::ExRouterJupiterAggregatorV6Executor,
&crate::ExRouterJupiterDcaExecutor,
&crate::ExStrategyJupiterDcaExecutor,
&crate::ExRouterOkxLabsV1Executor,
&crate::ExRouterOkxLabsV2Executor,
&crate::ExRwaOndoGlobalMarketsExecutor,
@@ -1083,7 +1105,7 @@ mod reserved_executor_tests {
&crate::ExWalletJupiterApeproSmartWalletExecutor,
&crate::ExWeightedSwapStabbleExecutor,
];
assert_eq!(executors.len(), 98);
assert_eq!(executors.len(), 105);
for executor in executors {
assert!(!executor.program_ids().is_empty());
for program_id in executor.program_ids() {