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 sebelum mengandalkan penarikan withheld-fee pra-kelulusan.
Mint dasar Token-2022 yang dibuat oleh InitializeWithToken2022 dapat membawa TransferFeeConfig. Ekstensi ini memiliki dua authority: transfer_fee_config_authority, yang mengubah tingkat biaya dan biaya maksimum, dan withdraw_withheld_authority, yang menarik biaya yang Token-2022 tahan pada akun token. Hingga rilis ini, program menempatkan launch authority PDA pada keduanya saat pembuatan mint dan menyerahkan keduanya ke PlatformConfig.transfer_fee_extension_auth saat kelulusan. Program launchpad tidak memiliki instruksi withdraw-withheld atau harvest, jadi selama seluruh fase bonding-curve, tidak ada yang bisa menarik saldo yang ditahan — satu-satunya kunci yang bisa adalah PDA tanpa instruksi untuk menandatangani dengannya. Rilis ini menulis transfer_fee_extension_auth langsung ke dalam withdraw_withheld_authority saat pembuatan mint, sehingga platform dapat menyapu biaya yang ditahan dari perdagangan pertama. MigrateToCpswap mendapatkan guard sehingga hanya menetapkan ulang authority tersebut ketika PDA masih yang memegangnya, yang membuat kelulusan berfungsi untuk mint dari kedua generasi. Tidak ada yang berubah selain itu. Tidak ada akun yang bertambah atau berkurang, tidak ada instruksi yang mendapatkan atau kehilangan akun, tidak ada argumen yang berubah, dan tidak ada kode error yang bergerak.

TL;DR untuk integrator

  • Biaya transfer yang ditahan dapat ditarik selama peluncuran. Pada peluncuran Token-2022 baru yang platformnya memiliki transfer_fee_extension_auth yang ditetapkan, kunci tersebut adalah withdraw_withheld_authority mint dari pembuatan. Panggil WithdrawWithheldTokensFromAccounts / WithdrawWithheldTokensFromMint Token-2022 secara langsung; LaunchLab tidak memiliki instruksi untuk ini dan tidak pernah memilikinya.
  • Waktu transfer_fee_config_authority tidak berubah. Masih merupakan launch authority PDA hingga kelulusan, dan masih berpindah ke transfer_fee_extension_auth dalam MigrateToCpswap. Tingkat biaya tidak dapat diubah di tengah peluncuran.
  • Tetapkan transfer_fee_extension_auth sebelum meluncurkan. Ketika Pubkey::default() saat pembuatan mint, withdraw authority kembali ke authority PDA — perilaku lama. Menetapkan field setelahnya masih memulihkan authority saat kelulusan, tetapi saldo yang ditahan terperangkap hingga saat itu.
  • Jangan rotasi field di tengah peluncuran. Dua authority dibaca pada dua momen berbeda, jadi nilai yang berubah di antaranya meninggalkan mereka pada kunci berbeda. Detail di Rotasi memisahkan dua authority.
  • MigrateToCpswap tidak berubah untuk pemanggil. Akun yang sama, argumen yang sama, error yang sama. Guard baru bersifat internal; tanpanya, migrasi mint generasi baru akan kembali di dalam Token-2022 karena PDA tidak lagi dapat menandatangani authority yang tidak dipegang.
  • Peluncuran yang ada tidak terpengaruh. Mint yang sudah on-chain menyimpan PDA pada kedua authority dan masih mendapatkan keduanya diserahkan saat kelulusan.
  • Penyegaran IDL tidak diperlukan. Tidak ada layout, akun, argumen, atau kode error yang berubah.

Siapa yang memegang apa, dan kapan

Kedua penyerahan masih berada di belakang kondisi luar yang sama seperti sebelumnya: mint dasar harus membawa TransferFeeConfig dan transfer_fee_extension_auth harus non-default. Platform yang tidak pernah menetapkan field menyimpan kedua authority pada authority PDA selamanya — tingkat biaya tidak pernah dapat diubah dan saldo yang ditahan tidak pernah dapat ditarik.

Rotasi memisahkan dua authority

transfer_fee_extension_auth dibaca dua kali per peluncuran, pada dua momen yang dapat berselang berhari-hari:
  1. Pada InitializeWithToken2022, untuk withdraw_withheld_authority.
  2. Pada MigrateToCpswap, untuk transfer_fee_config_authority — dan untuk withdraw_withheld_authority hanya ketika PDA masih memegangnya.
Rotasi field melalui UpdatePlatformConfig di antaranya dan dua authority mendarat pada kunci berbeda: sisi withdraw menyimpan kunci yang dikonfigurasi saat pembuatan, karena PDA tidak lagi memegangnya dan migrasi melewati penyerahan itu, sementara sisi fee-config pergi ke kunci baru. Tidak ada panggilan yang gagal; pemisahan bersifat senyap. Rotasi antar peluncuran, atau rekonsiliasi kunci setelahnya melalui Token-2022 secara langsung dengan kunci lama menandatangani.

Mengapa guard diperlukan, bukan hanya defensif

SetAuthority Token-2022 memerlukan authority saat ini untuk menandatangani. Di bawah aturan pembuatan baru, launch authority PDA bukan withdraw-withheld authority pada mint baru, jadi CPI tanpa syarat yang biasa dibuat program akan gagal — dan karena berada di dalam MigrateToCpswap, kegagalan itu akan memblokir kelulusan untuk setiap peluncuran Token-2022 dengan biaya transfer pada platform yang telah mengonfigurasi field. Dua perubahan hanya berfungsi sebagai pasangan.

Apa yang tidak berubah

  • Matematika dan akuntansi biaya transfer. MAX_TRANSFER_FEE_RATE masih 500 (5%, penyebut 10_000), biaya masih dihargai ke dalam kurva dengan cara yang sama, dan saldo yang ditahan masih terakumulasi pada akun token yang Token-2022 letakkan.
  • Antarmuka MigrateToCpswap. Daftar akun yang sama, indeks remaining_accounts yang sama, dua program token yang sama, tidak ada argumen.
  • Antarmuka InitializeWithToken2022. Akun yang sama, TransferFeeExtensionParams yang sama, penolakan NoSupportExtension untuk apa pun di luar MetadataPointer dan TransferFeeConfig.
  • Penanganan Token-2022 sisi quote. Tidak berubah dari 2026-08-24.
  • Kode error. 60006023 tidak berubah; rilis ini tidak menambahkan yang baru.
  • Layout akun dan IDL. Tidak berubah. PlatformConfig.transfer_fee_extension_auth menyimpan offset dan tipenya; hanya ketika program membacanya yang berubah.

Halaman yang diperbarui

  • products/launchlab/platform-config — bagian “Token-2022 transfer-fee authorities” baru mencakup kedua authority, kedua titik penyerahan, dan perangkap rotasi; komentar layout dan daftar pitfall diperbaiki.
  • products/launchlab/instructionsMigrateToCpswap mendapatkan blok “Token-2022 transfer-fee authority handover”; postcondition Initialize mencatat authority pembuatan mint baru.
  • products/launchlab/accounts — daftar peran authority-PDA dan bagian base-mint mencatat authority transfer-fee mana yang benar-benar dipegang PDA.
  • reference/token-2022-support — entri base-mint LaunchLab menyatakan siapa yang memegang transfer-fee authorities dan kapan.