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 →
Una entrada del registro de cambios de documentación para una actualización próxima del programa CPMM. Para el índice de todas las actualizaciones, consulta
reference/changelog. Para la línea de tiempo histórica del protocolo, consulta introduction/history-and-milestones.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 ejecutivo para integradores
- Nueva instrucción aditiva:
CollectCreatorFeePermissionless. Cualquier firmante puede ser elpayer. El creador del pool registrado no firma. - El llamador no puede redirigir fondos.
creatordebe ser igual apool_state.pool_creator.creator_token_0ycreator_token_1deben 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 de destinatario 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 errorNoFeeCollectexistente cuando ambos contadores son cero. - Las integraciones existentes permanecen compatibles.
CollectCreatorFeeno se modifica ni se elimina. No hay cambios en el diseño dePoolState,AmmConfig,Permission, eventos o códigos de error. - La creación de permisos tiene un segundo propietario.
CreatePermissionPdaacepta el administrador del programa o un propietario dedicado de crear-PDA-de-permiso.ClosePermissionPdasigue 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 payer y creator separadas sin firma y no toma amm_config. Por lo tanto, requiere su propio discriminador y constructor.
Impacto en SDK e IDL
La rama de origen del programa no incluye una actualización de SDK o IDL comprometida. Los integradores deben actualizar el IDL de CPMM implementado o usar una versión de cliente que admita explícitamenteCollectCreatorFeePermissionless. 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 cualquierpermission_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
CollectCreatorFeeexistentes sin cambios. - Añade la instrucción sin permisos solo después de que la implementación de CPMM de destino e IDL de cliente la incluyan.
- La automatización puede escanear pools con
creator_fees_token_0ocreator_fees_token_1distintos de cero y activar la recopilación sin custodia de claves del creador. - Maneja
NoFeeCollectcomo una carrera benigna cuando otro llamador drena los contadores primero. - No pases cuentas de token de destinatario 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 operativo.products/cpmm/code-demos— advertencia de disponibilidad de SDK y límite de migración de 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— límites de autoridad de otorgamiento delegada y recopilador sin permisos.reference/program-addresses— direcciones de propietario dedicado deCreatePermissionPdacanónicas.reference/error-codes—NoFeeCollectexpandido para cubrir la recopilación de comisiones del creador.
raydium-cp-swapcommit244e124— Feat/permissionless collect creator fee (#76), la fusión de la ramafeat/permissionless-collect-creator-feecontra la cual se escribió esta entrada. La rama en sí se eliminó después de la fusión.- Commits
9585ea1yd99d542, comparados conmasteren78f254e.

