> ## 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 — CPMM: パーミッションレスなクリエイターフィー回収

> CPMM は、任意のペイヤーがクリエイターフィーをプール作成者の正規 ATA にスイープできる宛先制約付きインストラクションを追加し、Permission PDA 作成の委譲を取り消し権の委譲なしで実現します。

<Info>
  **このページは AI による自動翻訳です。すべての内容は英語版を正とします。**

  [英語版を表示 →](/reference/changelog/2026-08-17-cpmm-permissionless-creator-fee-collection)
</Info>

<Info>
  今後の CPMM プログラム更新に関するドキュメント変更ログエントリです。すべての更新のインデックスについては [`reference/changelog`](/ja/reference/changelog) を、プロトコル自体の歴史的タイムラインについては [`introduction/history-and-milestones`](/ja/introduction/history-and-milestones) を参照してください。
</Info>

このリリースでは、クリエイターフィー回収のためのパーミッションレスな運用パスを追加します。誰でもペイを支払ってスイープをトリガーできますが、プログラムは受取人の所有者を `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 個のアカウントを取ります:

| #     | アカウント                                | 制約または役割                                         |
| ----- | ------------------------------------ | ----------------------------------------------- |
| 1     | `payer`                              | 書き込み可能な署名者。不足しているクリエイター ATA に資金を提供します。          |
| 2     | `creator`                            | `pool_state.pool_creator` と等しくなければなりません。署名しません。 |
| 3     | `authority`                          | CPMM グローバル金庫権限 PDA。                             |
| 4     | `pool_state`                         | 書き込み可能。クリエイターフィーカウンターを保持します。                    |
| 5–6   | `token_0_vault`, `token_1_vault`     | 書き込み可能。プールに保存されている金庫と一致する必要があります。               |
| 7–8   | `vault_0_mint`, `vault_1_mint`       | 対応する金庫ミントと一致する必要があります。                          |
| 9–10  | `creator_token_0`, `creator_token_1` | 書き込み可能な正規クリエイター ATA。必要に応じて初期化されます。              |
| 11–12 | `token_0_program`, `token_1_program` | 各ミント用の SPL Token または Token-2022。                |
| 13    | `associated_token_program`           | 不足しているクリエイター ATA を作成します。                        |
| 14    | `system_program`                     | ペイヤー資金による アカウント作成をサポートします。                      |

`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` を拡張しました。

**2026-08-13 に検証済み**:

* [`raydium-cp-swap` ブランチ `feat/permissionless-collect-creator-fee`](https://github.com/raydium-io/raydium-cp-swap/tree/feat/permissionless-collect-creator-fee)。
* コミット [`9585ea1`](https://github.com/raydium-io/raydium-cp-swap/commit/9585ea1efeb27be7be7eab1ebc033449f9c793b4) および [`d99d542`](https://github.com/raydium-io/raydium-cp-swap/commit/d99d5420c65b973af05d4efa009a2a9d060461f9)、`master` の [`78f254e`](https://github.com/raydium-io/raydium-cp-swap/commit/78f254e1023751e706df7dc15c453fc3e046697c) と比較。

<Warning>
  この検証はソースブランチをカバーしており、mainnet-beta デプロイメントではありません。本番環境で新しいパスを有効にする前に、デプロイされたプログラムと公開された IDL を確認してください。
</Warning>
