Skip to main content
Halaman ini diterjemahkan secara otomatis oleh AI. Versi bahasa Inggris adalah acuan resmi.Lihat versi bahasa Inggris →
Entri ini mencakup pembaruan program LaunchLab yang akan datang. Entri ini telah diverifikasi terhadap cabang rilis lokal sebelum deployment. Konfirmasi program yang di-deploy dan IDL yang dipublikasikan sebelum mengaktifkan jalur baru di production.
Rilis ini memungkinkan launch dikutip dalam Token-2022 mint. Sampai sekarang sisi quote terikat pada program SPL Token legacy, jadi hanya base mint yang bisa Token-2022. Setiap tempat quote mint disentuh — pembuatan GlobalConfig, inisialisasi pool, empat instruksi swap, semua klaim fee, dan migrasi CPMM — sekarang menerima salah satu token program, dan instruksi swap memperhitungkan transfer fee quote mint.

TL;DR untuk integrator

  • Quote mints bisa Token-2022. CreateConfig menerima Token-2022 quote_token_mint, dan InitializeV2 / InitializeWithToken2022 menerima salah satu token program di slot quote-program. Urutan akun tidak berubah — nilai yang Anda lewatkan di slot itu yang berubah.
  • Initialize yang sudah usang masih legacy-only. Akun quote-program-nya masih diketik ke SPL Token, jadi config yang quote mint-nya Token-2022 hanya bisa diluncurkan melalui InitializeV2 atau InitializeWithToken2022.
  • Batas slippage bergerak ke apa yang sebenarnya dibayar dan diterima payer. minimum_amount_out dan maximum_amount_in sekarang dibandingkan dengan jumlah bersih transfer fee quote mint, bukan jumlah yang dipindahkan vault. Logika quoting yang ada under-quote biaya dan over-quote proceeds pada quote mint yang membawa fee.
  • PoolState.token_program_flag bit1 menjadi bermakna. Selalu 0 saat quote mints legacy-only. Client yang membandingkan seluruh byte terhadap 0 sekarang akan membaca base mint legacy sebagai Token-2022 kapan pun quote mint adalah Token-2022. Ini adalah kemungkinan silent breakage terbesar dalam rilis ini.
  • MigrateToCpswap mengganti nama dua akun token-program-nya. base_token_program / quote_token_program menjadi token_program / token_program_2022. Keduanya selalu diperlukan, dan program memilih yang tepat per mint.
  • Pasangan mint/program sekarang divalidasi. Kedua swap mints mendapat constraint mint::token_program, begitu juga quote mint ClaimPlatformFee, jadi pasangan yang tidak cocok reverts daripada diabaikan.
  • Error baru 6023 CalculateOverflow. Kode 60006022 tidak berubah. 6023 dikosongkan oleh rilis sebelumnya dan sekarang digunakan kembali.
  • Fee vaults mengikuti quote mint. Creator dan platform fee vaults, dan token account penerima share-fee, berada di program mana pun yang memiliki quote mint.

Akun mana yang berubah tipe

Tidak ada yang mengubah posisi dalam daftar akun mereka. Hanya nilai yang diizinkan yang berubah. Initialize (jalur V1 yang sudah usang) sengaja tidak ada di tabel ini. Akun quote-program-nya tetap diketik ke SPL Token. Beberapa dari ini juga memperketat constraint mint mereka, jadi pasangan mint/program yang tidak cocok sekarang reverts di mana sebelumnya diterima atau tidak diperiksa:
  • Empat instruksi swap membatasi base_token_mint dan quote_token_mint ke program yang dilewatkan di slot yang cocok. Tidak ada yang membawa constraint itu sebelumnya, jadi program base yang salah diterima secara diam-diam.
  • ClaimPlatformFee menambahkan constraint yang sama pada quote_mint.
  • ClaimPlatformFeeFromVault memperbaiki constraint-nya dari bentuk token-account ke bentuk mint pada apa yang merupakan akun mint.

Akuntansi transfer-fee sisi quote

Ini adalah bagian yang mengubah angka daripada daftar akun. Pada quote mint tanpa TransferFeeConfig setiap formula di bawah runtuh ke perilaku sebelumnya, jadi pool legacy dan pool Token-2022 bebas fee adalah bit-for-bit tidak berubah. Dua konsekuensi yang patut dinyatakan dengan jelas:
  • Batas yang dihitung dari pool bebas fee yang setara tidak lagi dapat diterima. BuyExactOut dengan biaya bebas fee sebagai maximum_amount_in sekarang reverts dengan ExceededSlippage, begitu juga SellExactIn dengan proceeds bebas fee sebagai minimum_amount_out. Itu adalah perilaku yang dimaksudkan — perbandingan lama membiarkan payer dikenakan transfer fee di atas batas yang sudah mereka setujui.
  • Pool hanya membukukan apa yang mencapai vault. Setelah BuyExactIn dari amount_in pada mint quote 5%, real_quote maju sebesar amount_in × 0.95, bukan amount_in.
get_transfer_inverse_fee juga menghilangkan kasus khusus untuk mint dengan fee 100%: daripada kembali ke maximum_fee, sekarang mengembalikan error CalculateOverflow baru ketika inverse fee tidak dapat dihitung. Quote mint pada 10000 basis points oleh karena itu gagal pada jalur exact-out daripada secara diam-diam bertransaksi pada batas fee.

Bit1 token_program_flag

PoolState.token_program_flag adalah bitfield, dan selalu demikian:
Field, posisi bit, dan kode yang menulis kedua bit semuanya mendahului rilis ini. Apa yang berubah adalah bit1 sekarang benar-benar bisa 1, karena quote mint sekarang bisa menjadi Token-2022 mint. Empat nilai adalah: Baca program setiap mint dengan (token_program_flag >> bit) & 1. Setiap client yang memperlakukan byte sebagai boolean untuk base mint — flag === 0 ? Token : Token-2022 — menyelesaikan nilai 2 ke base mint Token-2022 dan akan membangun token account sisi base dan transfer terhadap program yang salah. Tidak ada perubahan ukuran akun atau offset field, jadi indexer tidak memerlukan migrasi storage, hanya perbaikan decode.

Penggantian nama akun migrasi CPMM

MigrateToCpswap sebelumnya mengambil satu token program per mint, dan caller memutuskan mana yang mana. Sekarang mengambil kedua program tanpa syarat dan menurunkan pemetaan dari mint itu sendiri: Dua posisi tidak berubah, jadi ini adalah perubahan nilai, bukan perubahan layout — tetapi nilainya hampir terbalik, dan builder yang terus melewatkan pasangan lamanya akan melewatkan Token-2022 di mana program legacy diperlukan segera setelah salah satu mint adalah Token-2022 mint. Program legacy masih diperlukan tanpa syarat terlepas dari mint mana pun, karena LP mint CPMM dan NFT Fee Key yang terkunci selalu berada di atasnya. Layout remaining_accounts dari rilis 2026-08-17 tidak berubah.

Quote mints diterima atas kebijakan admin saja

Tidak seperti CPMM dan CLMM, LaunchLab menjalankan tidak ada extension allow-list terhadap quote mint. CreateConfig menerima akun mint apa adanya, jadi satu-satunya gate adalah mint mana yang admin ikat ke GlobalConfig. Pemeriksaan NoSupportExtension program berlaku hanya pada Token-2022 base mints yang dibuat LaunchLab sendiri, di mana hanya MetadataPointer dan TransferFeeConfig yang diizinkan. Perlakukan pengikatan Token-2022 quote mint sebagai tindakan kepercayaan tinggi dengan alasan yang sama seperti whitelist statis CPMM/CLMM di reference/token-2022-support. Quote mint TransferHook atau PermanentDelegate akan diterima pada waktu pembuatan config dan kemudian akan berjalan pada, atau dapat menyapu, setiap pool yang dikutip di dalamnya.

Gate timestamp amm_creator_fee_on

InitializeV2 menghilangkan gate timestamp yang menolak amm_creator_fee_on apa pun selain BothToken sebelum timestamp upgrade. Gate yang setara masih ada di InitializeWithToken2022. Dalam praktik kedua jalur menerima nilai apa pun di mainnet-beta hari ini, karena timestamp itu (1755522000, 2025-08-18 13:00 UTC) sudah lama berlalu — ini adalah pembersihan, bukan perubahan perilaku untuk caller saat ini.

Dampak error dan IDL

Kode 60006022 tidak berubah, termasuk 6022 InvalidPlatformAllowConfig. Rilis sebelumnya menghentikan 6023 lama dan meninggalkannya kosong; rilis ini menggunakan kembali nomor itu. Jangan decode 6023 dengan IDL dari versi mana pun yang lebih awal. Refresh IDL LaunchLab sebelum melewatkan Token-2022 quote program, decode bit1 token_program_flag, atau membangun daftar akun MigrateToCpswap yang diganti nama.

Dampak SDK

Sisi quote modul launchpad SDK dikode keras ke TOKEN_PROGRAM_ID di tempat yang sama program itu. Cabang yang menyertai rilis ini menyelesaikan pemilik quote mint sebagai gantinya, melewatkannya melalui pembuatan token-account, ATA penerima share-fee, dan slot quote-program instruksi, dan menambahkan transferFeeConfigB opsional ke empat metode Curve sehingga quote mencerminkan formula di atas. Hasil Curve mendapat field transferFeeB; amountB mempertahankan artinya — apa yang dibelanjakan payer atau diterima penjual — jadi quote mint bebas fee menghasilkan angka identik dengan sebelumnya. Perubahan SDK ini belum dirilis. Pin kanonik pada halaman code-demo dalam set dokumentasi ini tidak berubah; periksa versi yang dipublikasikan sebelum mengandalkan parameter baru.

Implementasi referensi

Demo baru berlangganan program LaunchLab melalui Yellowstone gRPC dan mencatat, untuk setiap pembaruan GlobalConfig dan PoolState, apakah setiap mint adalah Token atau Token-2022 mint: raydium-sdk-V2-demo/src/grpc/launchpadPoolInfo.ts Ini adalah referensi ringkas untuk dua hal yang rilis ini buat perlu. Pool diklasifikasikan langsung dari token_program_flag, decode kedua bit tanpa fetch mint sama sekali — itu adalah perbaikan untuk breakage bit1 yang dijelaskan di atas. Config tidak dapat diklasifikasikan dengan cara itu, karena GlobalConfig hanya menyimpan alamat quote mint-nya dan tidak ada program flag, jadi demo membaca pemilik akun mint sekali dan cache-nya per mint. Melihat kedua jalur berdampingan adalah cara tercepat untuk memeriksa decoder Anda sendiri. Lihat products/launchlab/code-demos untuk panduan.

Halaman yang diperbarui

  • products/launchlab/accounts — token program quote-mint, layout bit token_program_flag, dan kepemilikan vault.
  • products/launchlab/instructions — akun quote-program, semantik slippage swap, dan akun migrasi yang diganti nama.
  • products/launchlab/global-configquote_mint mungkin Token-2022 mint, dan apa yang melakukan dan tidak melakukan gate-nya.
  • products/launchlab/code-demos — pemantau config/pool gRPC.
  • reference/token-2022-support — baris LaunchLab dan bagian quote-mint.
  • reference/error-codes6023 CalculateOverflow.