Halaman ini diterjemahkan secara otomatis oleh AI. Versi bahasa Inggris adalah acuan resmi.Lihat versi bahasa Inggris →
GlobalConfig adalah akun konfigurasi tingkat protokol. Dapat ada banyak dari mereka — dikunci oleh (curve_type, index) — dan setiap peluncuran memilih tepat satu pada waktu Initialize. Nilai pada GlobalConfig yang dipilih kemudian menjadi batas keras untuk parameter peluncuran tersebut. Untuk penyesuaian tingkat platform (tarif biaya per-platform, bentuk kurva yang diizinkan, pembagian NFT saat kelulusan), lihat products/launchlab/platform-config.Apa itu
GlobalConfig adalah PDA singleton-per-(curve_type, index) yang menetapkan aturan sisi protokol yang harus dipatuhi setiap peluncuran:
- Jenis kurva ikatan yang diizinkan (
curve_type). - Tarif biaya perdagangan yang dikenakan kurva pada setiap pembelian dan penjualan.
- Biaya migrasi yang dikenakan saat kelulusan.
- Lantai pada pasokan, tingkat kunci, tingkat penjualan, dan tingkat migrasi.
- Mint kutipan (biasanya SOL terbungkus atau USDC) — aset yang dibeli pengguna.
- Empat dompet sisi protokol: pemilik biaya protokol, pemilik biaya migrasi, dan dua dompet kontrol migrasi yang disimpan untuk kelulusan CPMM dan AMM v4 warisan.
GlobalConfig dapat dibuat oleh admin program LaunchLab atau otoritas delegasi buat-konfigurasi. Hanya admin yang memperbarui konfigurasi yang ada. Lihat reference/program-addresses untuk otoritas kanonik.
Tata Letak
create_config program adalah sumber kebenaran.)
Semantik Bidang
curve_type dan index
Bersama-sama ini mengunci GlobalConfig secara unik. Ada satu GlobalConfig per pasangan (curve_type, index):
curve_type = 0— Kurva cadangan virtual produk-konstan. Default dan paling banyak digunakan.curve_type = 1— Kurva harga tetap.curve_type = 2— Kurva harga linier.
index adalah u16 yang memungkinkan admin menerbitkan beberapa konfigurasi per jenis kurva (misalnya, satu dengan biaya yang lebih ketat, satu dengan minimum kutipan yang lebih tinggi). Pada Initialize peluncuran menyediakan pasangan (curve_type, index) dan program memuat GlobalConfig yang cocok.
Biaya
trade_fee_rate— dinyatakan dalam1/1_000_000dari volume perdagangan. Diterapkan pada setiap pembelian dan penjualan di kurva.protocol_fee_ownermengklaim bagiannya melaluiCollectFee.migrate_fee— biaya tetap dalam lamport (atau unit kutipan, tergantung konfigurasi) yang dikenakan sekali saat kelulusan. Diklaim olehmigrate_fee_ownermelaluiCollectMigrateFee.max_share_fee_rate— diinisialisasi ke10_000(100 bps). Membatasi argumenshare_fee_rateyang diterimaBuyExactIn,BuyExactOut,SellExactIn, danSellExactOut— biaya rujukan yang dibayarkan langsung ke penerima bagian selama perdagangan. Ini tidak membatasiPlatformConfig.fee_rate; tingkat itu memiliki batas sendiri, dijelaskan dalamplatform-config. BaikCreateConfigmaupunUpdateConfigmemberlakukantrade_fee_rate + max_share_fee_rate < RATE_DENOMINATOR_VALUE.
Lantai pasokan dan tingkat
Lantai ini membatasi parameter bentuk kurva apa yang dapat dipilih peluncuran padaInitialize. Jika CurveParams kreator melanggar salah satunya, Initialize kembali dengan InvalidInput.
min_base_supply— minimumsupply(tanpa desimal) yang dapat dideklarasikan kurva. Default ke10_000_000.max_lock_rate— dinyatakan dalam1/1_000_000; default300_000(30%). Membatasi vesting melaluitotal_locked_amount <= supply * max_lock_rate / 1_000_000.min_base_sell_rate— dinyatakan dalam1/1_000_000; default200_000(20%). Membatasibase_supply_graduation / supplydari bawah.min_base_migrate_rate— dinyatakan dalam1/1_000_000; default200_000(20%). Membatasi jumlah token yang tersisa untuk menabur pool pasca-kelulusan.min_quote_fund_raising— minimumquote_reserve_targetyang dapat dideklarasikan peluncuran (dengan desimal). Default ke30_000_000_000unit mint kutipan.
Mint kutipan dan dompet protokol
quote_mint— aset yang dibeli pengguna. Sebagian besar peluncuran menggunakan SOL terbungkus (So111…112) atau USDC (EPjF…Dt1v). SatuGlobalConfigterikat pada satu mint kutipan; peluncuran yang membutuhkan target kutipan berbeda menargetkan(curve_type, index)yang berbeda. Mint dapat dimiliki oleh program SPL Token atau Token-2022 — lihat di bawah.protocol_fee_owner— pubkey yang menandatanganiCollectFeedan mengklaim biaya protokol yang terkumpul pada setiap peluncuran yang terikat pada konfigurasi ini. Disimpan on-chain; admin dapat merotasinya melaluiUpdateConfig.migrate_fee_owner— pubkey yang menandatanganiCollectMigrateFee.
Mint kutipan Token-2022
CreateConfig menerima quote_mint Token-2022, dan pool yang terikat pada konfigurasi seperti itu membawanya dari awal hingga akhir: vault kutipan, kedua vault biaya, dan akun token penerima biaya bagian semuanya dibuat di Token-2022, dan instruksi swap memperhitungkan TransferFeeConfig di sisi kutipan. Bit PoolState.token_program_flag bit1 mencatat pilihan per peluncuran.
Dua batasan yang perlu diketahui sebelum Anda mengandalkan salah satunya:
Initializeyang sudah usang tidak dapat diluncurkan terhadapnya. HanyaInitializeV2danInitializeWithToken2022yang menerima program kutipan Token-2022. Lihatinstructions.- Tidak ada daftar izin ekstensi yang diterapkan. Tidak seperti CPMM dan CLMM, LaunchLab tidak menyaring ekstensi mint kutipan —
CreateConfigmengambil mint sebagaimana adanya, jadi satu-satunya gerbang adalah kebijaksanaan admin atas mint mana yang terikat pada konfigurasi. PemeriksaanNoSupportExtensionprogram hanya mencakup mint dasar Token-2022 yang dibuat LaunchLab sendiri. Perlakukan pengikatan satu sebagai tindakan kepercayaan tinggi; lihatreference/token-2022-support.
Dompet migrasi
Dua dompet kelulusan yang disimpan memerlukan penandatangan yang berbeda:migrate_to_amm_wallet— menandatanganiMigrateToAmmuntuk peluncuran warisan yang ada yang menyimpanmigrate_type = 0.migrate_to_cpswap_wallet— menandatanganiMigrateToCpswap. Setiap peluncuran yang baru diinisialisasi menggunakan jalur ini.
Daftar izin sisi platform
GlobalConfig tidak lagi memiliki requires_platform_auth. Byte formernya adalah padding, jadi ukuran akun tidak berubah. Akses sekarang dikendalikan oleh PlatformConfig.restrict_global_config dan akun PlatformAllowConfig yang dibuat oleh admin platform tersebut. Lihat platform-config.
Default saat inisialisasi
KetikaCreateConfig dipanggil, program menabur banyak bidang dengan default yang dikodekan keras:
curve_type, index, migrate_fee, trade_fee_rate, quote_mint, dan empat pubkey dompet secara eksplisit pada waktu pembuatan; nilai berikutnya dapat disesuaikan melalui UpdateConfig.
Bagaimana peluncuran memilih GlobalConfig
Pada Initialize, kreator melewatkan:
(curve_type, index)untuk memilih PDAGlobalConfigmana yang akan dimuat.CurveParamsyang menggambarkan bentuk kurva (supply,total_base_sell,total_quote_fund_raising,migrate_type).VestingParamsyang menggambarkan pasokan terkunci.MintParamsuntuk mint dasar.
curve_typecocok denganglobal_config.curve_type.supply >= global_config.min_base_supply.total_locked_amount <= supply * max_lock_rate / 1_000_000.total_base_sell >= supply * min_base_sell_rate / 1_000_000.(supply − total_base_sell − total_locked_amount) >= supply * min_base_migrate_rate / 1_000_000— yaitu, cukup token tersisa untuk menabur pool pasca-kelulusan.total_quote_fund_raising >= min_quote_fund_raising.migrate_type == 1(CPSWAP).- Jika platform yang dipilih memiliki
restrict_global_config == 1,PlatformAllowConfigyang cocok disertakan.
Initialize, PoolState peluncuran menyimpan pubkey global_config secara langsung, sehingga pengikatan bersifat permanen.
Jalur pembaruan
UpdateConfig hanya untuk admin dan mengambil pasangan (param: u8, value: u64). Setiap nilai param memilih bidang mana yang akan dimutasi:
Rotasi dompet (
protocol_fee_owner, migrate_fee_owner, migrate_to_amm_wallet, migrate_to_cpswap_wallet) mengambil bentuk argumen Pubkey terpisah; periksa sumber update_config untuk tabel dispatch yang tepat sebelum menyusun transaksi admin.
Pemilih UpdateConfig sebelumnya 12 untuk otorisasi platform dihapus. Admin platform sekarang mengelola daftar izin mereka sendiri.
Membaca GlobalConfig dari klien
getAllGlobalConfigs SDK atau kueri titik akhir API LaunchLab yang mencerminkannya; jumlah akun on-chain kecil (satu digit dalam praktik).
Penunjuk
products/launchlab/platform-config— overlay per-platform yang membatasi bentuk kurva lebih lanjut.products/launchlab/accounts— grafik akun lengkap untuk peluncuran.products/launchlab/instructions— instruksiInitializedan pembaruan.reference/program-addresses— pubkey admin, ID program, otoritas bersama.
raydium-launch/programs/launchpad/src/states/config.rs— structGlobalConfigdaninitialize.raydium-launch/programs/launchpad/src/lib.rs—create_config,update_config.

