Documentation Index
Fetch the complete documentation index at: https://docs.raydium.io/llms.txt
Use this file to discover all available pages before exploring further.
Esta página foi traduzida automaticamente por IA. A versão em inglês é a fonte oficial.Ver versão em inglês →
Esta página documenta o grafo de contas por lançamento: o
PoolState (a conta de estado raiz para um lançamento), seus dois vaults, o PDA de autoridade e as referências pós-graduação que ele ganha quando o lançamento é liquidado.Para a configuração em nível de protocolo que limita todos os lançamentos, veja products/launchlab/global-config. Para a camada por plataforma, veja products/launchlab/platform-config. Para contas de vesting (VestingSchedule em PoolState, VestingRecord por beneficiário), veja products/launchlab/vesting.Inventário de contas
| Conta | Proprietário | Propósito |
|---|---|---|
GlobalConfig | Programa LaunchLab | Regras em nível de protocolo: taxas, pisos de suprimento, carteiras de migração. Uma por (curve_type, index). |
PlatformConfig | Programa LaunchLab | Camada por plataforma: marca, taxa de plataforma, divisão de NFT na graduação, lista branca de forma de curva. |
PoolState | Programa LaunchLab | Estado raiz por lançamento: mints, vaults, parâmetros de curva, contadores vendidos, contadores de taxa, cronograma de vesting, status de graduação. |
authority | Programa LaunchLab | PDA único na seed [b"vault_auth_seed"] que possui vaults em todos os lançamentos e assina o CPI pós-graduação. |
base_vault | SPL Token / Token-2022 | Vault por lançamento contendo os tokens base não vendidos. |
quote_vault | SPL Token | Vault por lançamento contendo tokens quote acumulados. |
VestingRecord | Programa LaunchLab | Registro por beneficiário de cliff + desbloqueio linear. Opcional. |
creator_fee_vault | SPL Token | Vault por criador + por quote mint contendo taxas de criador acumuladas, limpas por ClaimCreatorFee. |
platform_fee_vault | SPL Token | Vault por plataforma + por quote mint contendo taxas de plataforma acumuladas, limpas por ClaimPlatformFeeFromVault. |
(pós-graduação) cpmm_pool_state ou amm_pool_state | Programa CPMM / AMM v4 | O pool criado por MigrateToCpswap / MigrateToAmm. |
| (pós-graduação) Fee Key NFT | Programa LP-Lock | Envolve a fatia do LP do criador na graduação CPMM; entitula o detentor a ClaimCreatorFee no pool CPMM. |
raydium.launchpad.getLaunchById do SDK retorna PoolState mais uma flag indicando se o lançamento foi graduado; se foi, o ID do pool pós-migração está incluído.
PoolState
O estado raiz por lançamento. Os nomes de campo abaixo correspondem à struct Rust on-chain (states/pool.rs); alguns valores são simplificados para legibilidade — consulte a fonte para o layout exato de memória.
PoolStatus (do IDL Anchor):
status— três valores, monotone (Funding → Migrate → Migrated). Leituras sempre seguras; escritas controladas.real_base,real_quote— estado de curva atual. Combinados comvirtual_base/virtual_quotesão suficientes para calcular o preço spot sem tocar nos vaults. Vejabonding-curve.total_base_sellvsreal_base— razão de “progresso em direção à graduação” para UIs.migrate_type— seleciona seMigrateToAmmouMigrateToCpswapé o caminho de graduação válido. Lançamentos Token-2022 devem usar CPMM.amm_creator_fee_on— apenas significativo ao graduar para CPMM. Escolhecreator_fee_on = OnlyQuoteToken(0) ouBothToken(1) no pool CPMM pós-graduação. Apesar do nome, este enum efetivamente também direciona o alvo de migração —BothTokené pareado comMigrateToAmmna prática operacional atual;QuoteTokencomMigrateToCpswap. Vejacreator-fees.quote_protocol_fee/platform_fee/migrate_fee— três contadores de taxa independentes. Cada um tem sua própria instrução de claim; vejainstructions.vesting_schedule— presente em todoPoolStatemas inativo quandototal_locked_amount == 0. Vejavestingpara o ciclo de vida completo.
O PDA de autoridade
LaunchLab usa um único PDA de autoridade em todos os lançamentos, derivado sem seed por lançamento:- A autoridade em cada
base_vaultequote_vaultde lançamento. - A
mint_authorityem cadabase_mintdo lançamento (pré-graduação). - O signatário no CPI pós-graduação para AMM v4 / CPMM (
MigrateTo*). - O signatário nas transferências
ClaimVestedTokenfora do base vault.
mint_authority é revogada imediatamente após MigrateToAmm / MigrateToCpswap para que o suprimento seja permanentemente fixo.
Dois PDAs adicionais controlam os vaults de taxa:
ClaimCreatorFee e ClaimPlatformFeeFromVault.
Base mint
Criado inline porInitialize com:
mint_authority = authority(revogada na graduação).freeze_authority = None.supply = supply, inteiramente cunhada embase_vault.decimalsescolhido pelo criador emInitialize(comumente 6).
base_mint.supply é constante para a vida útil do lançamento. Compras de curva movem tokens de base_vault para o comprador, mas não chamam mint_to.
Initialize / InitializeV2 criam lançamentos SPL Token. A instrução dedicada InitializeWithToken2022 permite que o base mint seja um mint Token-2022 (com TransferFeeConfig opcional); o quote mint ainda é SPL Token. Lançamentos Token-2022 devem graduar para um pool CPMM porque AMM v4 suporta apenas vaults SPL Token.
Vaults
Tantobase_vault quanto quote_vault são contas SPL Token padrão possuídas pelo PDA LaunchLab authority. Os endereços são armazenados em PoolState e também podem ser derivados:
Initialize da fonte antes de confiar em uma derivação em produção.)
Vaults de taxa
Dois PDAs agregam taxas em lançamentos:- Vault de taxa do criador — PDA nas seeds
[creator, quote_mint]. Todo lançamento que arrecada as mesmas taxas de criador no mesmo quote mint despeja no mesmo vault. O criador o limpa viaClaimCreatorFee. - Vault de taxa de plataforma — PDA nas seeds
[platform_config, quote_mint]. Todo lançamento roteado através da mesma plataforma que usa o mesmo quote mint despeja no mesmo vault. Aplatform_fee_walletda plataforma o limpa viaClaimPlatformFeeFromVault. Há também uma variante de limpeza por lançamento (ClaimPlatformFee) que extrai doquote_vaultdo lançamento diretamente sem passar pelo vault agregado.
Quote vault ↔ real_quote
quote_vault.balance e PoolState.real_quote devem permanecer em sincronização. Podem divergir no máximo pela soma dos três contadores de taxa pendentes (quote_protocol_fee, platform_fee, migrate_fee), que ficam no vault mas pertencem aos contadores de taxa e não à reserva de curva. A matemática da curva sempre usa real_quote, nunca o saldo bruto do vault.
Invariante pré-graduação:
Transições de contas do ciclo de vida
| Evento | Status | real_base | real_quote | Pool pós-graduação |
|---|---|---|---|---|
Initialize | Funding | 0 | 0 | — |
BuyExactIn / BuyExactOut | Funding | +base_out | +quote_in_after_fee | — |
SellExactIn / SellExactOut | Funding | −base_in | −quote_out_before_fee | — |
MigrateToAmm / MigrateToCpswap | Funding → Migrate → Migrated | (congelado) | (congelado) | criado, LP dividido por PlatformConfig |
ClaimCreatorFee / ClaimPlatformFee* | qualquer | — | — | drena um vault de taxa |
CreateVestingAccount | Funding | — | — | incrementa vesting_schedule.allocated_share_amount |
ClaimVestedToken | Migrated apenas | — | — | drena base_vault |
Próximos passos
products/launchlab/bonding-curve— a matemática por trás dereal_base↔real_quote.products/launchlab/instructions— listas de contas por instrução.products/launchlab/global-config— vinculação em nível de protocolo.products/launchlab/platform-config— camada de plataforma.products/launchlab/vesting— mecânica de suprimento bloqueado.products/cpmm/accounts— como ocpmm_pool_statepós-graduação se parece.
raydium-launch/programs/launchpad/src/states/pool.rs—PoolState,PoolStatus,VestingSchedule,AmmCreatorFeeOn.raydium-launch/programs/launchpad/src/lib.rs— constantes de seed de PDA (AUTH_SEED,CREATOR_FEE_VAULT_AUTH_SEED,PLATFORM_FEE_VAULT_AUTH_SEED).- Módulo
launchpaddo Raydium SDK v2.


