このページは AI による自動翻訳です。すべての内容は英語版を正とします。英語版を表示 →
今後の CPMM プログラム更新に関するドキュメント変更ログエントリです。すべての更新のインデックスについては
reference/changelog を、プロトコル自体の歴史的タイムラインについては introduction/history-and-milestones を参照してください。PoolState.pool_creator に固定し、両方の宛先をそのクリエイターの正規関連トークンアカウントに固定します。既存のクリエイター署名インストラクションは変更されません。
また、専用の権限が CPMM Permission PDA を作成できるようにします。この委譲は意図的に非対称です。専用の権限は InitializeWithPermission へのアクセスを付与できますが、ClosePermissionPda で付与を取り消せるのはプログラム管理者のみです。
インテグレーター向け TL;DR
- 新しい追加インストラクション:
CollectCreatorFeePermissionless。 任意の署名者がpayerになれます。記録されたプール作成者は署名しません。 - 呼び出し元は資金をリダイレクトできません。
creatorはpool_state.pool_creatorと等しくなければなりません。creator_token_0とcreator_token_1は、プール金庫のミントとそれぞれのトークンプログラムに対するそのクリエイターの正規 ATA である必要があります。 - ペイヤーが不足している ATA をカバーします。 両方の受取人アカウントは
init_if_neededを使用します。どちらかのアカウントが存在しない場合、ペイヤーがレント資金を提供します。 - 回収はすべてか無かです。 インストラクションは両方の累積クリエイターフィーカウンターを転送し、両方をゼロにし、
recent_epochを更新します。両方のカウンターがゼロの場合、既存のNoFeeCollectエラーを返します。 - 既存のインテグレーションは互換性を保ちます。
CollectCreatorFeeは変更または削除されません。PoolState、AmmConfig、Permission、イベント、またはエラーコードレイアウトの変更はありません。 - Permission 作成には 2 番目の所有者があります。
CreatePermissionPdaはプログラム管理者または専用の create-permission-PDA 所有者を受け入れます。ClosePermissionPdaは管理者のみのままです。
新しいインストラクションアカウント
CollectCreatorFeePermissionless は、この順序で 14 個のアカウントを取ります:
CollectCreatorFee とは異なり、新しいレイアウトには個別の payer と署名しない creator アカウントがあり、amm_config を取りません。したがって、独自のディスクリミネーターとビルダーが必要です。
SDK と IDL への影響
プログラムソースブランチには、コミットされた SDK または IDL 更新は含まれていません。インテグレーターは、デプロイされた CPMM IDL をリフレッシュするか、CollectCreatorFeePermissionless を明示的にサポートするクライアントリリースを使用する必要があります。ドキュメントの固定された @raydium-io/raydium-sdk-v2@0.2.42-alpha ビルダーセットは、元のクリエイター署名パスのみをカバーしています。
セキュリティ境界
パーミッションレスな呼び出しは、パーミッションレスな管理を意味しません。呼び出し元は回収のタイミングを選択でき、不足しているクリエイター ATA を作成するために SOL を費やすことができます。呼び出し元は受益者を選択したり、任意のトークンアカウントを代用したり、部分的な金額をリクエストしたり、プールのクリエイターフィー設定を変更することはできません。 新しい permission-PDA クリエーター役割は、任意のpermission_authority に対して付与を作成でき、新しいアカウントのレント資金を支払います。この変更では、その PDA を閉じることはできません。これを完全な permission 管理者ではなく、委譲された付与権限として扱ってください。
マイグレーションノート
- 既存の
CollectCreatorFeeトランザクションは変更しないでください。 - パーミッションレスインストラクションは、ターゲット CPMM デプロイメントとクライアント IDL にそれが含まれた後にのみ追加してください。
- オートメーションは、ゼロ以外の
creator_fees_token_0またはcreator_fees_token_1を持つプールをスキャンし、クリエイターキーの管理なしに回収をトリガーできます。 - 別の呼び出し元がカウンターを最初にドレインした場合、
NoFeeCollectを良性のレースとして処理してください。 - 任意の受取人トークンアカウントを渡さないでください。
pool_state.pool_creator、各金庫ミント、および一致するトークンプログラムからクリエイター ATA を導出してください。
更新されたページ
products/cpmm/overview— クリエイターフィー回収更新と宛先安全性サマリー。products/cpmm/instructions— 新しいインストラクションサマリー、完全なアカウントリスト、効果、および状態変更マトリックス。products/cpmm/accounts— クリエイターフィーカウンター回収パスと委譲された Permission PDA 作成。products/cpmm/fees— パーミッションレス回収メカニクスと運用フロー。products/cpmm/code-demos— SDK 可用性警告とクライアントマイグレーション境界。products/launchlab/platform-config— 別のペイヤーが回収をトリガーする場合でも、記録された CPMM クリエイターが受益者のままであることを明確にしました。protocol-overview/shared-infrastructure— 権限ゲート付きおよび宛先制約付き回収パス。security/admin-and-multisig— 委譲された付与権限とパーミッションレスコレクター境界。reference/program-addresses— 正規の専用CreatePermissionPda所有者アドレス。reference/error-codes— クリエイターフィー回収をカバーするためにNoFeeCollectを拡張しました。
raydium-cp-swapブランチfeat/permissionless-collect-creator-fee。- コミット
9585ea1およびd99d542、masterの78f254eと比較。

