Skip to main content
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 versión añade una ruta operacional sin permisos para la recopilación de comisiones del creador. Cualquiera puede pagar para activar la transferencia, pero el programa fija el propietario del destinatario a PoolState.pool_creator y fija ambos destinos a las cuentas de token asociadas canónicas de ese creador. La instrucción firmada por el creador existente permanece sin cambios. También permite que una autoridad dedicada cree PDAs de Permission en CPMM. Esta delegación es intencionalmente asimétrica: la autoridad dedicada puede otorgar acceso a InitializeWithPermission, mientras que solo el administrador del programa puede revocar un otorgamiento con ClosePermissionPda.

Resumen para integradores

  • Nueva instrucción aditiva: CollectCreatorFeePermissionless. Cualquier firmante puede ser el payer. El creador del pool registrado no firma.
  • El llamador no puede redirigir fondos. creator debe ser igual a pool_state.pool_creator. creator_token_0 y creator_token_1 deben ser las ATAs canónicas de ese creador para los mints de la bóveda del pool y sus respectivos programas de token.
  • El pagador cubre las ATAs faltantes. Ambas cuentas destinatarias usan init_if_needed; el pagador financia la renta cuando alguna cuenta no existe.
  • La recopilación es todo o nada. La instrucción transfiere ambos contadores de comisiones del creador acumuladas en su totalidad, pone ambos en cero y actualiza recent_epoch. Devuelve el error NoFeeCollect existente cuando ambos contadores son cero.
  • Las integraciones existentes permanecen compatibles. CollectCreatorFee no se modifica ni se elimina. No hay cambios en el diseño de PoolState, AmmConfig, Permission, eventos o códigos de error.
  • La creación de permisos tiene un segundo propietario. CreatePermissionPda acepta el administrador del programa o un propietario dedicado de crear-PDA-de-permiso. ClosePermissionPda sigue siendo solo para administrador.

Nuevas cuentas de instrucción

CollectCreatorFeePermissionless toma 14 cuentas en este orden: A diferencia de CollectCreatorFee, el nuevo diseño tiene cuentas separadas de payer y creator sin firma y no toma amm_config. Por lo tanto, requiere su propio discriminador y constructor.

Impacto en SDK e IDL

La rama del código fuente del programa no incluye una actualización comprometida de SDK o IDL. Los integradores deben actualizar el IDL de CPMM implementado o usar una versión de cliente que explícitamente soporte CollectCreatorFeePermissionless. El conjunto de constructores @raydium-io/raydium-sdk-v2@0.2.42-alpha fijado en la documentación cubre solo la ruta original firmada por el creador.

Límite de seguridad

La invocación sin permisos no significa custodia sin permisos. El llamador puede elegir cuándo recopilar y puede gastar SOL para crear ATAs del creador faltantes. El llamador no puede elegir el beneficiario, sustituir cuentas de token arbitrarias, solicitar una cantidad parcial o cambiar la configuración de comisiones del creador del pool. El nuevo rol de creador de PDA de permiso puede crear un otorgamiento para cualquier permission_authority y paga la renta de la nueva cuenta. No puede cerrar ese PDA bajo este cambio. Trátalo como una autoridad de otorgamiento delegada, no como un administrador de permisos completo.

Notas de migración

  • Mantén las transacciones existentes de CollectCreatorFee sin cambios.
  • Añade la instrucción sin permisos solo después de que la implementación de CPMM de destino y el IDL del cliente la incluyan.
  • La automatización puede escanear pools con creator_fees_token_0 o creator_fees_token_1 distintos de cero y activar la recopilación sin custodia de claves del creador.
  • Maneja NoFeeCollect como una carrera benigna cuando otro llamador drena los contadores primero.
  • No pases cuentas de token destinatarias arbitrarias; deriva las ATAs del creador de pool_state.pool_creator, cada mint de bóveda y el programa de token coincidente.

Páginas actualizadas

  • products/cpmm/overview — actualización de recopilación de comisiones del creador y resumen de seguridad de destino.
  • products/cpmm/instructions — resumen de nueva instrucción, lista completa de cuentas, efectos y matriz de cambio de estado.
  • products/cpmm/accounts — rutas de recopilación de contadores de comisiones del creador y creación de PDA de Permiso delegada.
  • products/cpmm/fees — mecánica de recopilación sin permisos y flujo operacional.
  • products/cpmm/code-demos — advertencia de disponibilidad de SDK y límite de migración del cliente.
  • products/launchlab/platform-config — aclarado que el creador de CPMM registrado sigue siendo el beneficiario incluso cuando otro pagador activa la recopilación.
  • protocol-overview/shared-infrastructure — rutas de recopilación restringidas por autoridad y restringidas por destino.
  • security/admin-and-multisig — autoridad de otorgamiento delegada y límites de recopilador sin permisos.
  • reference/program-addresses — direcciones de propietario dedicado de CreatePermissionPda canónicas.
  • reference/error-codesNoFeeCollect expandido para cubrir la recopilación de comisiones del creador.
Verificado 2026-08-13 contra:
Esta verificación cubre la rama de origen, no una implementación en mainnet-beta. Confirma el programa implementado y el IDL publicado antes de habilitar la nueva ruta en producción.