Skip to main content
このページは AI による自動翻訳です。すべての内容は英語版を正とします。英語版を表示 →
このエントリは 2026-10-22 に予定されている CLMM プログラムアップグレードについて説明しています。デプロイ前に raydium-clmm の feat/create-customizable-pool-v2 ブランチ(ヘッド 18f5db1)に対して検証されました。新しい命令名またはアカウントリストに依存する前に、デプロイされたプログラムを確認してください。
2026-07-30 リリースでは CreatePermissionedPool が追加され、呼び出し元が seed_index をプール PDA に組み込むことで、同じ (amm_config, token_mint_0, token_mint_1) に対して複数のプールを作成できるようになりました。ただし、ゲートがありました。ペイヤーは管理者が発行した Permission PDA を保有する必要がありました。 このリリースではそのゲートが削除されます。命令は CreateCustomizablePoolV2 に改名され、誰でも呼び出せるようになり、プログラムから権限管理機構全体が削除されます。プール数学、スワップ、リクイディティ、リミットオーダー、フィー、リワードは変更されません。

インテグレーター向け TL;DR

  • CreatePermissionedPool → CreateCustomizablePoolV2。 同じ引数(CreateCustomizableParams、seed_index: u16)と同じプールアドレス派生。Anchor ディスクリミネータは名前とともに変わるため、古い命令に対して構築されたトランザクションはアップグレード後に失敗します。新しい IDL に対して再構築してください。
  • permission アカウントはアカウントリストから削除されました。 スロット 3 にありましたので、amm_config 以降のすべてのアカウントが 1 つ上に移動します。新しいアカウントリストを参照してください。
  • 複数プール作成はパーミッションレスになりました。 任意のペイヤーが 0 以外の seed_index でペアとフィーティアに対して追加プールを作成できます。ペアはフィーティアごとに多くの CLMM プールを持つ可能性があり、誰でも作成できるものとして扱ってください。
  • Permission、CreatePermissionPda、ClosePermissionPda は削除されました。 プログラムと IDL は Permission タイプを認識しなくなります。
  • IDL を更新してください。 2 つの命令と 1 つのアカウントタイプが削除され、37 個の命令と 53 個のエラーになります。
  • アカウントレイアウトは変更されず、エラーコードも追加されていません。 PoolState.seed_index はオフセットを保持します。意味は「パーミッション付きプール」から「任意の V2 プール」に拡張されるだけです。

プログラムで変更されたもの

CreatePermissionedPool が CreateCustomizablePoolV2 に改名

ハンドラーは新しい名前の下で同じコードです。以下の処理は変わりません:
  • seed_index > 0 が必須;
  • ["pool", amm_config, token_mint_0, token_mint_1, seed_index.to_le_bytes()] でプールを派生;
  • CreateCustomizablePool と同じ CreateCustomizableParams を取得するため、片側フィー(collect_fee_on)と動的フィーオプトインは同じように機能;
  • CreatePool と同じ Token-2022 サポートミントチェックを適用;
  • pool_creator を pool_state.owner として記録し、seed_index を PoolState に書き込み;
  • PoolCreatedEvent を発行。
Permission PDA チェックは削除された唯一の動作です。

CreateCustomizablePoolV2 アカウントリスト

remaining_accounts は変更されません。Token-2022 ミントが必要な場合のサポートミントレジストリ PDA、および enable_dynamic_fee = true の場合の DynamicFeeConfig(最後)です。
pool_creator は認証されません。任意のペイヤーが任意のアドレスを pool_state.owner に書き込むことができます。そのアドレスはプール上で InitializeReward を呼び出す権利を得ますが、それを作成者の証明として使用することはできません。V2 プールを owner フィールドでランク付け、ラベル付け、または信頼しないでください。

削除:Permission、CreatePermissionPda、ClosePermissionPda

  • Permission アカウントタイプ(["permission", authority]、280 バイト)はプログラムから削除されました。
  • CreatePermissionPda と ClosePermissionPda は削除され、それらに署名できる専用の permission_pda_admin キーも削除されました。
  • アップグレード前に作成された Permission PDA はチェーン上に残ります。プログラムはそれらを読み込まなくなり、それらを閉じる命令もなくなります。

エラーコード

変更なし。6000–6052 は番号を保持します。NotApproved(6000)は「署名者が admin でも permission_pda_admin でもない」ケースを持たなくなります。これらの命令が削除されたためです。

マイグレーションノート

  • プール作成者。 CreatePermissionedPool から CreateCustomizablePoolV2 に切り替え、permission アカウントを削除し、残りのアカウントを 1 スロット上に移動してください。管理者の許可は不要になります。
  • インデクサーとルーター。 PoolCreatedEvent から CLMM プールをインデックスするか、4 シード PDA を派生させるのではなく PoolState アカウントをスキャンしてください。0 以外の seed_index を持つプールについては seed_index を保存してください。アドレスを再派生させるために必要です。誰でもプールを作成できるようになったため、より多くの非正規プールが存在することを予想し、最も深いプールが正規であると仮定しないでください。
  • UI。 ペアとフィーティアは異なる開始価格を持つ多くのプールを持つことができます。リクイディティとプールアドレスを表示し、owner のためにプールを公式として提示しないでください。
  • IDL コンシューマー。 Permission、CreatePermissionPda、ClosePermissionPda のデコーダーまたはクライアントコードを削除してください。

変更されなかったもの

  • すべてのアカウントレイアウト(PoolState を含む。seed_index フィールドとそのオフセットは同じ)。
  • CreatePool と CreateCustomizablePool。 引き続き、ペアとティアごとに単一の正規プールを作成し、seed_index = [0, 0] です。
  • アップグレード前に CreatePermissionedPool を通じて作成されたプール。 それらのアドレス、状態、seed_index は変更されません。
  • エラーコード、スワップ、リクイディティ、フィー、動的フィー、リワード、リミットオーダーの動作。
  • プログラム ID。

更新されたページ

  • products/clmm/instructions:アップグレードバナー;インベントリと管理者ゲート行;新しいアカウントリスト付き CreateCustomizablePoolV2 セクション。
  • products/clmm/accounts:インベントリから Permission を削除し、廃止として記録;seed_index 説明;PDA ヘルパーを deriveCustomizablePoolV2 に改名;ライフサイクル行。
  • products/clmm/overview:「新機能」ノート。
  • security/admin-and-multisig:CLMM テーブルから permission_pda_admin ロールを削除。
  • reference/error-codes:NotApproved 説明。
  • reference/token-2022-support:CLMM プール作成パス。
  • sdk-api/anchor-idl:CLMM 命令数。
  • protocol-overview/versions-and-migration:CLMM アップグレード履歴箇条書き。
検証対象:raydium-clmm ブランチ feat/create-customizable-pool-v2(18f5db1):instructions/create_customizable_pool_v2.rs、instructions/mod.rs、instructions/admin/mod.rs、states/mod.rs、states/pool.rs、lib.rs、および削除された admin/create_permission_pda.rs、admin/close_permission_pda.rs、states/permission.rs。