> ## 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 — LaunchLab：CPMM 專用啟動與平台設定控制

> LaunchLab 將 CPMM 設為新啟動的唯一畢業目標、將鎖定流動性集中到平台、以平台管理的設定允許清單取代全域平台授權，並更新 CPMM 遷移帳戶。

<Info>
  **本頁內容由 AI 自動翻譯，所有內容以英文版本為準。**

  [查看英文版 →](/reference/changelog/2026-08-17-launchlab-cpmm-only-platform-config)
</Info>

<Info>
  本條目涵蓋即將推出的 LaunchLab 程式更新。在部署前已針對本地發佈分支進行驗證。在生產環境中啟用新路徑前，請確認已部署的程式和已發佈的 IDL。
</Info>

此版本將 CPMM 設為新初始化啟動的唯一畢業目標。它也改變了誰獲得鎖定流動性權利、將 `GlobalConfig` 選擇控制移至平台管理員，並擴展了 CPMM 遷移 CPI 輸入。

## 整合者速覽

* **新啟動為 CPMM 專用。** `Initialize`、`InitializeV2` 和 `InitializeWithToken2022` 要求 `migrate_type = 1`。為 AMM v4 設定的新啟動會返回 `MigrateTypeNotMatch`。
* **舊版 AMM v4 狀態仍受支援。** `MigrateToAmm` 未被移除。它仍可畢業一個儲存遷移類型為 `0` 的現有池。
* **建立者鎖定流動性在升級後移至平台。** 在此版本之前，`creator_scale` 產生一個單獨的建立者擁有的費用金鑰。升級後執行的遷移將 `platform_scale + creator_scale` 合併為一個平台擁有的鎖定流動性份額。`burn_scale` 被銷毀。
* **建立者費用保持分開。** 結合曲線建立者費用和 CPMM 建立者費用不是流動性費用金鑰權利。`platform_cp_creator` 仍決定原始啟動建立者或平台選定的地址是否成為 CPMM 建立者記錄。
* **平台管理自己的設定允許清單。** `PlatformConfig.restrict_global_config` 和 `PlatformAllowConfig` 取代全域管理員管理的 `requires_platform_auth` / `PlatformGlobalAccess` 模型。
* **CPMM 遷移建構者必須變更。** 升級後的路徑需要十個固定的剩餘帳戶，並為兩個排序的代幣新增 CPMM `support_mint` PDA。
* **委派的授權可能建立 `GlobalConfig`。** 它無法更新現有設定。

## 新啟動與現有狀態行為

CPMM 專用檢查在池初始化期間執行。它不會重寫現有的 `PoolState` 帳戶。現有 AMM v4 綁定的啟動保留其儲存的遷移類型，並可使用保留的舊版遷移指令。

`amm_creator_fee_on` 現在僅控制 CPMM 建立者費用側（`QuoteToken` 或 `BothToken`）。用戶端不得使用它來推斷目標程式。

## 流動性所有權變更

三個規模欄位保留在 `PlatformConfig` 中，其總和仍必須等於 `1_000_000`。執行時分配現為：

```text theme={null}
platform locked LP = floor(total LP × (platform_scale + creator_scale) / 1_000_000)
burned LP          = total LP − platform locked LP
```

在此版本之前，LaunchLab 單獨鎖定 `creator_scale` 並將其費用金鑰鑄造給代幣建立者。對於升級後執行的遷移，該相同規模被新增到平台份額。如果合併份額非零，LaunchLab 為 `platform_nft_wallet` 建立一個費用金鑰，不建立新的建立者費用金鑰。

此變更不修改升級前完成的遷移所建立的費用金鑰或鎖定流動性記錄。在升級前建立但之後遷移的啟動遵循新分配，因為分割在 `MigrateToCpswap` 執行時應用。

由於帳戶佈局被保留，索引器不需要帳戶大小遷移，但 UI 和會計系統必須根據遷移版本解釋 `creator_scale`。

## 平台允許清單遷移

`GlobalConfig.requires_platform_auth` 被移除，其位元組返回到填充。`PlatformConfig` 為 `restrict_global_config` 重用一個填充位元組，因此兩個帳戶大小保持不變。

當 `restrict_global_config = 1` 時，初始化必須包括從以下衍生的 PDA：

```text theme={null}
["platform_allow_config", platform_config, global_config]
```

平台管理員建立和關閉這些帳戶。舊版 `CreatePlatformGlobalAccess` 和 `ClosePlatformGlobalAccess` 指令被移除，舊版 `PlatformGlobalAccess` PDA 不滿足新檢查。沒有自動轉換路徑。

## CPMM 遷移帳戶變更

`MigrateToCpswap` 現在期望這些以零為基礎的 `remaining_accounts` 索引：

| 索引  | 用途                                     |
| --- | -------------------------------------- |
| 0–4 | 平台費用金鑰擁有者、代幣、ATA、鎖定流動性 PDA 和中繼資料       |
| 5   | 原始建立者後備                                |
| 6   | CPMM 權限 PDA                            |
| 7   | 可選設定的 `platform_cp_creator` 帳戶         |
| 8–9 | 排序代幣 0 和代幣 1 的 CPMM `support_mint` PDA |

附加單獨建立者鎖定帳戶或省略索引 8–9 的舊版建構者與升級後的路徑不相容。使用 CPMM 程式下的 `[b"support_mint", mint]` 衍生兩個支援代幣地址。

## 錯誤和 IDL 影響

代碼 `6000`–`6021` 保持穩定。舊版平台全域存取變體被移除。`6022` 現在表示 `InvalidPlatformAllowConfig`，舊版 `6023` 不再存在。

在建構 `PlatformAllowConfig` 指令、解碼更新的設定欄位或建立新 CPMM 遷移佈局前，重新整理 LaunchLab IDL。

## 更新的頁面

* `products/launchlab/instructions` 和 `accounts` — 建立限制、舊版邊界、允許 PDA 和遷移帳戶。
* `products/launchlab/global-config` 和 `platform-config` — 佈局相容欄位變更和授權模型。
* `products/launchlab/creator-fees`、`platforms` 和費用陷阱 — 僅平台鎖定流動性和單獨的 CPMM 建立者費用。
* `user-flows` LaunchLab 和燒毀與賺取頁面 — 更正的建立者面向行為。
* `protocol-overview/architecture` — CPMM 專用新啟動路徑。
* `reference/program-addresses` — 委派建立設定授權。
* `reference/error-codes` 和 `security/admin-and-multisig` — 新錯誤和角色邊界。

**驗證於 2026-08-13 針對**本地分支 `feat/cpswap-only-and-platform-allow-config` 在提交 `2b1999f8e226ec84148cf818ea809d3cd5f30caa`，與 `master` 在 `13b5c5210b58ceaef1ea4f9d9fbb7626d20613ee` 比較。

<Warning>
  此驗證涵蓋源分支，不是 mainnet-beta 部署。在啟用更新的指令前，確認已部署的程式和已發佈的 IDL。
</Warning>
