> ## 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.

# 2026-08-17 — LaunchLab: lanzamientos solo CPMM y controles de configuración de plataforma

> LaunchLab hace que CPMM sea obligatorio para nuevos lanzamientos, consolida la LP bloqueada bajo la plataforma, reemplaza la autorización de plataforma global con listas de permitidos gestionadas por la plataforma, y actualiza las cuentas de migración CPMM.

<Info>
  **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 →](/reference/changelog/2026-08-17-launchlab-cpmm-only-platform-config)
</Info>

<Info>
  Esta entrada cubre una actualización próxima del programa LaunchLab. Fue verificada contra la rama de lanzamiento local antes del despliegue. Confirma el programa desplegado e IDL publicado antes de habilitar las nuevas rutas en producción.
</Info>

Este lanzamiento hace que CPMM sea el único destino de graduación para lanzamientos recién inicializados. También cambia quién recibe derechos de LP bloqueada, mueve los controles de selección de `GlobalConfig` a administradores de plataforma, y expande las entradas CPI de migración CPMM.

## Resumen ejecutivo para integradores

* **Los nuevos lanzamientos son solo CPMM.** `Initialize`, `InitializeV2` e `InitializeWithToken2022` requieren `migrate_type = 1`. Un nuevo lanzamiento configurado para AMM v4 devuelve `MigrateTypeNotMatch`.
* **El estado heredado de AMM v4 sigue siendo compatible.** `MigrateToAmm` no se elimina. Aún puede graduar un pool existente cuyo tipo de migración almacenado sea `0`.
* **La LP bloqueada del creador se traslada a la plataforma después de esta actualización.** Antes de este lanzamiento, `creator_scale` producía una Fee Key separada propiedad del creador. Las migraciones ejecutadas después de la actualización combinan `platform_scale + creator_scale` en una única participación de LP bloqueada propiedad de la plataforma. `burn_scale` se quema.
* **Las tarifas del creador permanecen separadas.** Las tarifas del creador de curva de vinculación y las tarifas del creador CPMM no son derechos de Fee Key de LP. `platform_cp_creator` sigue determinando si el creador del lanzamiento original o una dirección seleccionada por la plataforma se convierte en el creador de registro de CPMM.
* **Las plataformas gestionan sus propias listas de permitidos de configuración.** `PlatformConfig.restrict_global_config` y `PlatformAllowConfig` reemplazan el modelo global gestionado por administrador `requires_platform_auth` / `PlatformGlobalAccess`.
* **Los constructores de migración CPMM deben cambiar.** La ruta actualizada requiere diez cuentas restantes fijas y agrega PDAs de `support_mint` CPMM para ambos mints ordenados.
* **Una autoridad delegada puede crear `GlobalConfig`.** No puede actualizar configuraciones existentes.

## Comportamiento de lanzamiento nuevo versus estado existente

La verificación solo CPMM se ejecuta durante la inicialización del pool. No reescribe cuentas `PoolState` existentes. Los lanzamientos vinculados a AMM v4 existentes mantienen su tipo de migración almacenado y pueden usar la instrucción de migración heredada retenida.

`amm_creator_fee_on` ahora solo controla el lado de tarifa del creador CPMM (`QuoteToken` o `BothToken`). Los clientes no deben usarlo para inferir el programa de destino.

## Cambio de propiedad de LP

Los tres campos de escala permanecen en `PlatformConfig`, y su suma debe seguir siendo igual a `1_000_000`. La distribución en tiempo de ejecución es ahora:

```text theme={null}
platform locked LP = floor(total LP × (platform_scale + creator_scale) / 1_000_000)
burned LP          = total LP − platform locked LP
```

Antes de este lanzamiento, LaunchLab bloqueaba `creator_scale` por separado y acuñaba su Fee Key al creador del token. Para migraciones ejecutadas después de la actualización, esa misma escala se suma a la participación de la plataforma. Si la participación combinada es distinta de cero, LaunchLab crea una Fee Key para `platform_nft_wallet` y no crea una nueva Fee Key de creador.

El cambio no modifica Fee Keys o registros de liquidez bloqueada creados por migraciones completadas antes de la actualización. Un lanzamiento creado antes de la actualización pero migrado después sigue la nueva distribución porque la división se aplica cuando `MigrateToCpswap` se ejecuta.

Debido a que el diseño de la cuenta se retiene, los indexadores no necesitan una migración de tamaño de cuenta, pero las interfaces de usuario y los sistemas de contabilidad deben interpretar `creator_scale` según la versión de migración.

## Migración de lista de permitidos de plataforma

`GlobalConfig.requires_platform_auth` se elimina y su byte vuelve al relleno. `PlatformConfig` reutiliza un byte de relleno para `restrict_global_config`, por lo que ambos tamaños de cuenta permanecen sin cambios.

Cuando `restrict_global_config = 1`, la inicialización debe incluir el PDA derivado de:

```text theme={null}
["platform_allow_config", platform_config, global_config]
```

El administrador de la plataforma crea y cierra estas cuentas. Las antiguas instrucciones `CreatePlatformGlobalAccess` y `ClosePlatformGlobalAccess` se eliminan, y los antiguos PDAs `PlatformGlobalAccess` no satisfacen la nueva verificación. No hay una ruta de conversión automática.

## Cambio de cuenta de migración CPMM

`MigrateToCpswap` ahora espera estos índices de `remaining_accounts` basados en cero:

| Índice | Propósito                                                                              |
| ------ | -------------------------------------------------------------------------------------- |
| 0–4    | Propietario de Fee Key de plataforma, mint, ATA, PDA de liquidez bloqueada y metadatos |
| 5      | Alternativa de creador original                                                        |
| 6      | PDA de permiso CPMM                                                                    |
| 7      | Cuenta `platform_cp_creator` configurada opcional                                      |
| 8–9    | PDAs de `support_mint` CPMM para mint0 y mint1 ordenados                               |

Los constructores antiguos que añaden cuentas de bloqueo de creador separadas u omiten los índices 8–9 son incompatibles con la ruta actualizada. Deriva ambas direcciones de support-mint usando `[b"support_mint", mint]` bajo el programa CPMM.

## Impacto de errores e IDL

Los códigos `6000`–`6021` permanecen estables. Las variantes antiguas de acceso global de plataforma se eliminan. `6022` ahora significa `InvalidPlatformAllowConfig`, y el antiguo `6023` ya no existe.

Actualiza el IDL de LaunchLab antes de construir instrucciones `PlatformAllowConfig`, decodificar los campos de configuración actualizados, o construir el nuevo diseño de migración CPMM.

## Páginas actualizadas

* `products/launchlab/instructions` y `accounts` — restricción de creación, límite heredado, permitir PDA y cuentas de migración.
* `products/launchlab/global-config` y `platform-config` — cambios de campos compatibles con diseño y modelo de autoridad.
* `products/launchlab/creator-fees`, `platforms` y gotchas de tarifas — LP bloqueada solo de plataforma y tarifas de creador CPMM separadas.
* Páginas `user-flows` LaunchLab y Burn & Earn — comportamiento corregido orientado al creador.
* `protocol-overview/architecture` — ruta de lanzamiento nuevo solo CPMM.
* `reference/program-addresses` — autoridades delegadas de crear configuración.
* `reference/error-codes` y `security/admin-and-multisig` — nuevo error y límites de rol.

**Verificado 2026-08-13 contra** rama local `feat/cpswap-only-and-platform-allow-config` en commit `2b1999f8e226ec84148cf818ea809d3cd5f30caa`, comparado con `master` en `13b5c5210b58ceaef1ea4f9d9fbb7626d20613ee`.

<Warning>
  Esta verificación cubre la rama de origen, no un despliegue en mainnet-beta. Confirma el programa desplegado e IDL publicado antes de habilitar las instrucciones actualizadas.
</Warning>
