> ## 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-26 — LaunchLab: nâng giới hạn tỷ lệ phí nền tảng lên 500 bps

> Giới hạn trên của fee_rate nền tảng được nâng lên 500 bps trên cả đường dẫn create và update. CreatePlatformConfig trước đó bị giới hạn ở 100 bps và UpdatePlatformConfig ở 250 bps; cả hai hiện đều là 50000. Không có thay đổi về bố cục tài khoản, instruction hay lỗi.

<Info>
  **Trang này được dịch tự động bằng AI. Phiên bản tiếng Anh là bản chính thức.**

  [Xem bản tiếng Anh →](/reference/changelog/2026-08-26-launchlab-platform-fee-rate-cap)
</Info>

<Info>
  Mục này bao gồm một bản cập nhật LaunchLab program sắp tới. Nó đã được xác minh so với nhánh phát hành cục bộ trước khi triển khai. Hãy xác nhận program đã triển khai trước khi tạo hoặc cập nhật nền tảng vượt quá các giới hạn cũ.
</Info>

Bản phát hành này nâng giới hạn phí nền tảng lên 500 bps. `PlatformConfig.fee_rate` được xác thực ở hai nơi — một lần khi `CreatePlatformConfig` xây dựng tài khoản, và một lần trên mỗi biến thể `UpdatePlatformConfig` ghi trường này — và cả hai hiện đều chấp nhận tối đa `50000`. Với mẫu số tỷ lệ `1/1_000_000` của program, đó là 5% khối lượng giao dịch trên mỗi lần mua và bán trước khi tốt nghiệp.

Trước bản phát hành này, hai kiểm tra không nhất quán: create cho phép 100 bps và update cho phép 250 bps. Bây giờ chúng giữ cùng một giá trị, vì vậy tỷ lệ mà nền tảng có thể được tạo chính xác là tỷ lệ mà nó có thể được cập nhật.

Không có gì khác thay đổi. Không có tài khoản nào phát triển hoặc thu hẹp, không có instruction nào được thêm hoặc bớt tài khoản, và không có mã lỗi nào di chuyển.

## TL;DR cho các nhà tích hợp

* **Giới hạn phí nền tảng là 500 bps trên cả hai đường dẫn.** `CreatePlatformConfig` và `UpdatePlatformConfig` đều chấp nhận `fee_rate` tối đa `50000`.
* **Create được nâng từ 100 bps.** `PlatformParams::check()` đã là `<= 10000` kể từ bản phát hành đầu tiên của program.
* **Update được nâng từ 250 bps.** `update_platform_fee_rate` là `<= 25000`, chính nó đã được nâng từ 100 bps vào 2026-01-27.
* **Sự không nhất quán giữa create/update đã biến mất.** Một config được tạo trên 250 bps trước đó không thể tồn tại sau khi gọi `UpdatePlatformConfig`, vì `AllInfo` xác thực lại `fee_rate` trong khi viết lại mọi trường khác. Cả hai kiểm tra hiện đều nhất quán, vì vậy đường dẫn chỉnh sửa đó hoạt động ở bất kỳ tỷ lệ nào được phép.
* **`creator_fee_rate` không thay đổi** ở `MAX_CREATOR_FEE_RATE = 5000` (50 bps) trên cả hai đường dẫn.
* **`GlobalConfig.max_share_fee_rate` không thay đổi** ở `10_000` (100 bps), và không bao giờ giới hạn phí nền tảng. Nó giới hạn đối số `share_fee_rate` giới thiệu trên mỗi giao dịch. Các phiên bản trước của tài liệu này nói khác; bản phát hành này sửa lại điều đó.
* **Không có gì hiện tại được định giá lại.** Những hằng số này gating ghi vào `fee_rate`, không phải đọc. Mỗi `PlatformConfig` đã trên chuỗi giữ tỷ lệ hiện tại của nó, và mỗi launch được liên kết với một giữ phí hiện tại của nó.
* **Không cần làm mới IDL.** Không có bố cục, tài khoản, đối số hay mã lỗi nào thay đổi.

## Những gì đã thay đổi

```rust theme={null}
// states/platform_config.rs — PlatformParams::check(), chạy bởi CreatePlatformConfig
- require!(self.fee_rate <= 10000, ErrorCode::InvalidInput);
+ require!(self.fee_rate <= 50000, ErrorCode::InvalidInput);

// instructions/platform/update_platform_config.rs — update_platform_fee_rate
- require!(fee_rate <= 25000, ErrorCode::InvalidPlatformInfo);
+ require!(fee_rate <= 50000, ErrorCode::InvalidPlatformInfo);
```

Tỷ lệ trong LaunchLab được tính bằng `1/1_000_000` (`RATE_DENOMINATOR_VALUE`), vì vậy:

| Giá trị | Tỷ lệ | Basis points | Nơi xuất hiện                                                                                                                                          |
| ------- | ----- | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `10000` | 1%    | 100 bps      | Cả hai giới hạn phí ở bản phát hành đầu tiên của program. Cũng là `GlobalConfig.max_share_fee_rate` hiện tại, đó là một giới hạn khác, không thay đổi. |
| `25000` | 2.5%  | 250 bps      | Giới hạn update giữa 2026-01-27 và bản phát hành này. Không còn được sử dụng.                                                                          |
| `50000` | 5%    | 500 bps      | Cả hai giới hạn sau bản phát hành này.                                                                                                                 |

## Nơi hai kiểm tra nằm

Giới hạn được thực thi bởi hai lệnh gọi `require!` riêng biệt trong hai tệp. Chúng hiện giữ cùng một giá trị, nhưng chúng vẫn tăng các lỗi khác nhau, vì vậy xử lý lỗi cần nhận ra cả hai:

| Đường dẫn                       | Hàm                        | Lỗi khi vi phạm                |
| ------------------------------- | -------------------------- | ------------------------------ |
| `CreatePlatformConfig`          | `PlatformParams::check()`  | `InvalidInput` (`6002`)        |
| `UpdatePlatformConfig::FeeRate` | `update_platform_fee_rate` | `InvalidPlatformInfo` (`6014`) |
| `UpdatePlatformConfig::AllInfo` | `update_platform_fee_rate` | `InvalidPlatformInfo` (`6014`) |

`AllInfo` là biến thể cập nhật hàng loạt: nó viết lại các ví, chuỗi branding, thang vesting, chia NFT, cơ quan chuyển phí, tỷ lệ phí người tạo và `fee_rate` trong một lệnh gọi, chạy cùng một kiểm tra trên `fee_rate` mà biến thể trường đơn làm. Dưới các hằng số cũ, điều đó làm cho `AllInfo` không thể sử dụng được cho nền tảng được tạo trong dải 250–500 bps, ngay cả đối với chỉnh sửa chỉ chạm vào URL hình ảnh. Căn chỉnh hai hằng số loại bỏ cái bẫy đó.

## Những gì không thay đổi

* **Kế toán phí và phân phối.** `platform_fee = amount_in × platform_config.fee_rate / 1_000_000` là công thức tương tự, tích lũy vào cùng một kho lưu trữ trên mỗi nền tảng, được quét bởi cùng các instruction `ClaimPlatformFee` và `ClaimPlatformFeeFromVault`.
* **Các nền tảng và launch hiện tại.** Các hằng số gating ghi, không phải đọc. Không có tỷ lệ lưu trữ nào thay đổi, vì vậy không có launch trực tiếp nào được định giá lại.
* **`creator_fee_rate`.** Vẫn bị giới hạn ở `MAX_CREATOR_FEE_RATE = 5000` (50 bps) trên cả hai đường dẫn.
* **`GlobalConfig.max_share_fee_rate`.** Vẫn `10_000`, vẫn chỉ giới hạn đối số `share_fee_rate` trên bốn instruction swap.
* **Mã lỗi.** `6000`–`6023` không thay đổi; bản phát hành này không thêm mã nào.
* **Bố cục tài khoản và IDL.** Không thay đổi.

## Sửa lỗi tài liệu

Hai trang quy cho giới hạn phí nền tảng `GlobalConfig.max_share_fee_rate`. Program không bao giờ làm điều đó — nó so sánh `max_share_fee_rate` với đối số instruction `share_fee_rate`, và chỉ xác thực `PlatformConfig.fee_rate` trong hai hàm được liệt kê ở trên. Bản phát hành này sửa lại những câu đó. Giới hạn phí giới thiệu chính nó không thay đổi ở 100 bps, vì vậy nếu bạn đọc cách diễn đạt cũ là "phí nền tảng bị giới hạn ở 100 bps", con số đó là đúng cho đường dẫn create cho đến bản phát hành này mặc dù lý do không phải.

## Các trang được cập nhật

* `products/launchlab/platform-config` — phần "Rate caps" mới bao gồm cả hai tỷ lệ, cả hai điểm thực thi và lịch sử tỷ lệ.
* `products/launchlab/global-config` — `max_share_fee_rate` được sửa để mô tả phí chia sẻ giới thiệu mà nó thực sự giới hạn.
