Esta página fue traducida automáticamente por IA. La versión en inglés es la fuente autorizada.Ver versión en inglés →
Esta página documenta el gráfico de cuentas por lanzamiento: el
PoolState (la cuenta de estado raíz para un lanzamiento), sus dos vaults, el PDA de autoridad, y las referencias posteriores a la graduación que adquiere cuando el lanzamiento se liquida.Para la configuración a nivel de protocolo que vincula cada lanzamiento, consulta products/launchlab/global-config. Para la superposición por plataforma, consulta products/launchlab/platform-config. Para cuentas de vesting (VestingSchedule en PoolState, VestingRecord por beneficiario), consulta products/launchlab/vesting.Inventario de cuentas
El método
raydium.launchpad.getLaunchById del SDK devuelve PoolState más una bandera indicando si el lanzamiento se ha graduado; si es así, se incluye el ID del pool posterior a la migración.
PoolState
El estado raíz por lanzamiento. Los nombres de campo a continuación coinciden con la estructura Rust en cadena (states/pool.rs); algunos valores se simplifican para legibilidad — consulta la fuente para el diseño exacto de memoria.
PoolStatus (del IDL de Anchor):
status— tres valores, monótonos (Funding → Migrate → Migrated). Las lecturas siempre son seguras; las escrituras están controladas.real_base,real_quote— estado actual de la curva. Combinados convirtual_base/virtual_quoteson suficientes para calcular el precio spot sin tocar los vaults. Consultabonding-curve.total_base_sellvsreal_base— relación de “progreso hacia graduación” para interfaces de usuario.migrate_type— la nueva inicialización requiere1(CPSWAP). Un0almacenado sigue siendo significativo solo para un lanzamiento existente creado antes de la aplicación exclusiva de CPMM.amm_creator_fee_on— eligecreator_fee_on = OnlyQuoteToken(0) oBothToken(1) en el pool CPMM posterior a la graduación. No elige el destino de migración. Consultacreator-fees.quote_protocol_fee/platform_fee/migrate_fee— tres contadores de comisiones independientes. Cada uno tiene su propia instrucción de reclamación; consultainstructions.vesting_schedule— presente en cadaPoolStatepero inactivo cuandototal_locked_amount == 0. Consultavestingpara el ciclo de vida completo.
El PDA de autoridad
LaunchLab utiliza un único PDA de autoridad en todos los lanzamientos, derivado sin semilla por lanzamiento:- La autoridad en cada
base_vaultyquote_vaultdel lanzamiento. - El
mint_authorityen cadabase_mintdel lanzamiento (pre-graduación). - El firmante en el CPI de graduación de CPMM, y en la graduación heredada de AMM v4 para estado existente.
- El firmante en las transferencias de
ClaimVestedTokenfuera del vault base.
mint_authority se revoca inmediatamente después de MigrateToCpswap o una llamada heredada de MigrateToAmm, por lo que el suministro se fija permanentemente.
Dos PDAs adicionales controlan los vaults de comisiones:
ClaimCreatorFee y ClaimPlatformFeeFromVault.
Mint base
Creado en línea porInitialize con:
mint_authority = authority(revocado en graduación).freeze_authority = None.supply = supply, completamente acuñado enbase_vault.decimalselegido por el creador enInitialize(comúnmente 6).
base_mint.supply es constante durante la vida del lanzamiento. Las compras de curva mueven tokens de base_vault al comprador, pero no llaman a mint_to.
Initialize / InitializeV2 crean lanzamientos de SPL Token. La instrucción dedicada InitializeWithToken2022 permite que el mint base sea un mint de Token-2022 (con TransferFeeConfig opcional); el mint quote sigue siendo SPL Token. Las tres rutas de inicialización requieren graduación de CPMM.
Vaults
Tantobase_vault como quote_vault son cuentas estándar de SPL Token propiedad del PDA authority de LaunchLab. Las direcciones se almacenan en PoolState y también se pueden derivar:
Initialize de la fuente antes de confiar en una derivación en producción.)
Vaults de comisiones
Dos PDAs agregan comisiones en todos los lanzamientos:- Vault de comisión del creador — PDA con semillas
[creator, quote_mint]. Cada lanzamiento que gana las mismas comisiones de creador en el mismo mint de quote vierte en el mismo vault. El creador lo barre a través deClaimCreatorFee. - Vault de comisión de plataforma — PDA con semillas
[platform_config, quote_mint]. Cada lanzamiento enrutado a través de la misma plataforma que usa el mismo mint de quote vierte en el mismo vault. Laplatform_fee_walletde la plataforma lo barre a través deClaimPlatformFeeFromVault. También hay una variante de barrido por lanzamiento (ClaimPlatformFee) que extrae delquote_vaultdel lanzamiento directamente sin pasar por el vault agregado.
Quote vault ↔ real_quote
quote_vault.balance y PoolState.real_quote deben mantenerse sincronizados. Pueden desviarse como máximo por la suma de los tres contadores de comisiones pendientes (quote_protocol_fee, platform_fee, migrate_fee), que se encuentran en el vault pero pertenecen a los contadores de comisiones y no a la reserva de curva. Las matemáticas de la curva siempre usan real_quote, nunca el saldo bruto del vault.
Invariante pre-graduación:
Transiciones de cuentas del ciclo de vida
Dónde ir a continuación
products/launchlab/bonding-curve— las matemáticas detrás dereal_base↔real_quote.products/launchlab/instructions— listas de cuentas por instrucción.products/launchlab/global-config— vinculación a nivel de protocolo.products/launchlab/platform-config— superposición de plataforma.products/launchlab/vesting— mecánica de suministro bloqueado.products/cpmm/accounts— cómo se ve elcpmm_pool_stateposterior a la graduación.
raydium-launch/programs/launchpad/src/states/pool.rs—PoolState,PoolStatus,VestingSchedule,AmmCreatorFeeOn.raydium-launch/programs/launchpad/src/lib.rs— constantes de semilla de PDA (AUTH_SEED,CREATOR_FEE_VAULT_AUTH_SEED,PLATFORM_FEE_VAULT_AUTH_SEED).- Módulo
launchpaddel SDK de Raydium v2.

