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 →
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 và IDL được công bố trước khi bật các đường dẫn mới trong production.
GlobalConfig creation, pool initialization, bốn swap instructions, tất cả fee claims, và CPMM migration — giờ đây chấp nhận bất kỳ token program nào, và swap instructions tính đến transfer fee của quote mint.
TL;DR cho các nhà tích hợp
- Quote mints có thể là Token-2022.
CreateConfigchấp nhận Token-2022quote_token_mint, vàInitializeV2/InitializeWithToken2022chấp nhận bất kỳ token program nào trong quote-program slot. Thứ tự account không thay đổi — giá trị bạn truyền vào slot đó thay đổi. Initializekhông dùng nữa vẫn chỉ hỗ trợ legacy. Quote-program account của nó vẫn được gõ thành SPL Token, vì vậy config có quote mint là Token-2022 chỉ có thể được khởi chạy thông quaInitializeV2hoặcInitializeWithToken2022.- Slippage bounds chuyển sang những gì người trả thực tế trả và nhận.
minimum_amount_outvàmaximum_amount_ingiờ đây được so sánh với số tiền ròng sau transfer fee của quote mint, không phải số tiền vault di chuyển. Logic quoting hiện tại dưới-định giá chi phí và quá-định giá lợi nhuận trên quote mint có phí. PoolState.token_program_flagbit1 trở nên có ý nghĩa. Nó luôn là0khi quote mints chỉ là legacy. Các client so sánh toàn bộ byte với0sẽ đọc base mint legacy là Token-2022 bất cứ khi nào quote mint là Token-2022. Đây là lỗi im lặng có khả năng xảy ra nhất trong bản phát hành này.MigrateToCpswapđổi tên hai token-program accounts.base_token_program/quote_token_programtrở thànhtoken_program/token_program_2022. Cả hai luôn được yêu cầu, và program chọn cái đúng cho mỗi mint.- Cặp Mint/program giờ đây được xác thực. Cả hai swap mints đều có
mint::token_programconstraint, nhưClaimPlatformFee’s quote mint, vì vậy cặp không khớp sẽ revert thay vì bị bỏ qua. - Error mới
6023CalculateOverflow. Codes6000–6022không thay đổi.6023được giải phóng bởi bản phát hành trước và giờ đây được sử dụng lại. - Fee vaults theo quote mint. Creator và platform fee vaults, và token account của share-fee receiver, nằm trên bất kỳ program nào sở hữu quote mint.
Những accounts nào thay đổi type
Không có accounts nào thay đổi vị trí trong danh sách account của chúng. Chỉ giá trị được phép thay đổi.Initialize (đường dẫn V1 không dùng nữa) cố ý không có trong bảng này. Quote-program account của nó vẫn được gõ thành SPL Token.
Một số trong số này cũng siết chặt mint constraints của chúng, vì vậy cặp mint/program không khớp giờ đây sẽ revert nơi nó trước đây được chấp nhận hoặc không được kiểm tra:
- Bốn swap instructions ràng buộc cả
base_token_mintvàquote_token_mintvới program được truyền vào slot phù hợp. Không ai trong số đó mang constraint đó trước đây, vì vậy base program sai đã được im lặng chấp nhận. ClaimPlatformFeethêm constraint tương tự trênquote_mint.ClaimPlatformFeeFromVaultsửa constraint của nó từ dạng token-account thành dạng mint trên những gì là mint account.
Quote-side transfer-fee accounting
Đây là phần thay đổi số thay vì danh sách account. Trên quote mint không cóTransferFeeConfig, mọi công thức dưới đây sẽ sụp đổ thành hành vi trước đây, vì vậy legacy pools và fee-free Token-2022 pools không thay đổi bit-for-bit.
Hai hệ quả đáng nêu rõ:
- Bound được tính từ fee-free pool tương đương không còn được chấp nhận.
BuyExactOutvới chi phí fee-free nhưmaximum_amount_ingiờ đây revert vớiExceededSlippage, vàSellExactInvới lợi nhuận fee-free nhưminimum_amount_outcũng vậy. Đó là hành vi dự định — so sánh cũ cho phép người trả được tính phí transfer trên top của bound họ đã đồng ý. - Pool chỉ ghi lại những gì đến vault. Sau
BuyExactIncủaamount_intrên 5% quote mint,real_quotetăng thêmamount_in × 0.95, không phảiamount_in.
get_transfer_inverse_fee cũng bỏ trường hợp đặc biệt của nó cho 100%-fee mint: thay vì quay lại maximum_fee, nó giờ đây trả về error CalculateOverflow mới khi inverse fee không thể được tính toán. Quote mint ở 10000 basis points do đó thất bại các exact-out paths thay vì im lặng giao dịch ở fee cap.
token_program_flag bit1
PoolState.token_program_flag là bitfield, và luôn luôn là:
1, vì quote mint giờ đây có thể là Token-2022 mint. Bốn giá trị là:
Đọc program của mỗi mint với
(token_program_flag >> bit) & 1. Bất kỳ client nào coi byte như boolean cho base mint — flag === 0 ? Token : Token-2022 — giải quyết giá trị 2 thành Token-2022 base mint và sẽ xây dựng base-side token account và transfer chống lại program sai. Không có account size hoặc field offset changes, vì vậy indexers không cần storage migration, chỉ cần decode fix.
CPMM migration account rename
MigrateToCpswap trước đây lấy một token program cho mỗi mint, và caller quyết định cái nào là cái nào. Giờ đây nó lấy cả hai programs vô điều kiện và lấy mapping từ mints:
Hai vị trí không thay đổi, vì vậy đây là value change, không phải layout change — nhưng các giá trị gần như bị đảo ngược, và builder giữ truyền cặp cũ của nó sẽ truyền Token-2022 nơi legacy program được yêu cầu ngay khi bất kỳ mint nào là Token-2022 mint.
Legacy program vẫn được yêu cầu vô điều kiện bất kể mint nào, vì CPMM LP mint và locked-liquidity Fee Key NFT luôn nằm trên nó.
remaining_accounts layout từ bản phát hành 2026-08-17 không thay đổi.
Quote mints được chấp nhận bằng quyết định admin duy nhất
Không giống CPMM và CLMM, LaunchLab chạy không extension allow-list chống lại quote mint.CreateConfig chấp nhận mint account như-là, vì vậy gate duy nhất là mints nào admin ràng buộc với GlobalConfig. NoSupportExtension check của program áp dụng chỉ cho Token-2022 base mints mà LaunchLab tạo ra chính nó, nơi chỉ MetadataPointer và TransferFeeConfig được phép.
Coi ràng buộc Token-2022 quote mint như hành động high-trust, vì lý do tương tự đăng ký mint trong CPMM/CLMM support-mint registry — xem reference/token-2022-support. Quote mint TransferHook hoặc PermanentDelegate sẽ được chấp nhận tại config-creation time và sau đó sẽ chạy trên, hoặc có thể quét, mọi pool được định giá trong nó.
amm_creator_fee_on timestamp gate
InitializeV2 bỏ timestamp gate từng từ chối bất kỳ amm_creator_fee_on nào khác BothToken trước upgrade timestamp. Gate tương đương vẫn có trong InitializeWithToken2022. Trong thực tế cả hai paths chấp nhận giá trị bất kỳ trên mainnet-beta hôm nay, vì timestamp đó (1755522000, 2025-08-18 13:00 UTC) đã lâu rồi — đây là cleanup, không phải behavior change cho callers hiện tại.
Error và IDL impact
Codes6000–6022 không thay đổi, bao gồm 6022 InvalidPlatformAllowConfig.
Bản phát hành trước đó đã loại bỏ
6023 cũ và để nó trống; bản phát hành này sử dụng lại số. Không giải mã 6023 với IDL từ bất kỳ phiên bản nào trước đó.
Làm mới LaunchLab IDL trước khi truyền Token-2022 quote program, giải mã token_program_flag bit1, hoặc xây dựng danh sách MigrateToCpswap account được đổi tên.
SDK impact
Phía quote của SDK’s launchpad module được hard-coded thànhTOKEN_PROGRAM_ID ở những nơi tương tự program. Nhánh đi kèm với bản phát hành này giải quyết chủ sở hữu quote mint thay thế, luồng nó thông qua token-account creation, ATA của share-fee receiver, và quote-program slot của instruction, và thêm transferFeeConfigB tùy chọn vào bốn Curve methods để quotes phản ánh các công thức trên. Curve results đạt được transferFeeB field; amountB giữ ý nghĩa của nó — những gì người trả chi tiêu hoặc người bán nhận — vì vậy fee-free quote mint tạo ra số giống hệt như trước.
Những SDK changes này chưa được phát hành. Pin chính tắc trên code-demo pages trong bộ tài liệu này không thay đổi; kiểm tra phiên bản được công bố trước khi dựa vào các parameters mới.
Reference implementation
Demo code để tức thì lấy newly create quote configurations:raydium-sdk-V2-demo/src/grpc/launchpadPoolInfo.ts
Nó là reference nhỏ gọn cho hai điều bản phát hành này làm cần thiết. Pools được phân loại thẳng từ token_program_flag, giải mã cả hai bits mà không cần mint fetch cả — đó là fix cho bit1 breakage được mô tả ở trên. Configs không thể được phân loại bằng cách đó, vì GlobalConfig chỉ lưu trữ địa chỉ quote mint của nó và không có program flag, vì vậy demo đọc mint account’s owner một lần và cache nó per mint. Thấy cả hai paths bên cạnh nhau là cách nhanh nhất để kiểm tra decoder của riêng bạn.
Xem products/launchlab/code-demos cho walkthrough.
Pages updated
products/launchlab/accounts— quote-mint token program,token_program_flagbit layout, và vault ownership.products/launchlab/instructions— quote-program accounts, swap slippage semantics, và renamed migration accounts.products/launchlab/global-config—quote_mintcó thể là Token-2022 mint, và cái gì gate và không gate nó.products/launchlab/code-demos— gRPC config/pool watcher.reference/token-2022-support— LaunchLab row và quote-mint section.reference/error-codes—6023CalculateOverflow.

