dynamic-bonding-curve IDL exposes many instructions. Integrators can choose to either use the TypeScript SDK for transaction construction or build through CPI.
Partner Instructions
Creator And Pool Instructions
Swap Instructions
SwapParameters2 uses these fields:
Existing rate-limiter pools, or configs with
enable_first_swap_with_min_fee enabled, require the instructions sysvar in remaining accounts on swap instructions. The SDK adds SYSVAR_INSTRUCTIONS_PUBKEY when needed.Token Badge Remaining Accounts
Config and pool creation readtoken_badge from remaining account index 0 when the quote mint is not permissionless-supported.
The token badge PDA is derived from
["token_badge", quote_mint]. It is read-only and not a signer. Permissionless-supported quote mints do not need this account. A missing or mismatched badge returns InvalidTokenBadge. A badge does not bypass the zero transfer-fee rule.
Transfer-hook swaps also pass extra remaining accounts described by TransferHookAccountsInfo.
Standard swap instructions reject
TransferHookPool accounts, and swap2_with_transfer_hook rejects standard VirtualPool accounts with PoolTypeMismatch.
Migration Instructions
DAMM v1 migration instructions remain for existing pools. New configs and new pools cannot select
MigrationOption::MeteoraDamm. DAMM v2 migration uses a DAMM v2 config with CreatePoolWithoutMintValidation so a DBC-badged quote mint can still graduate. DBC still requires the quote mint transfer fee to be zero at migration time.
Operator Instructions
claim_protocol_fee and zap_protocol_fee are removed. Use claim_protocol_fee2 through the protocol fee wrapper program.
