Halaman ini diterjemahkan secara otomatis oleh AI. Versi bahasa Inggris adalah acuan resmi.Lihat versi bahasa Inggris →
Entri ini mencakup upgrade program CPMM yang dijadwalkan untuk 2026-10-30. Ini diverifikasi terhadap branch
feat/initialize-v2 dari raydium-cp-swap (head 40cbd81) sebelum deployment. Konfirmasi program yang di-deploy sebelum mengandalkan instruksi baru.enable_creator_fee dan sisi creator_fee_on, keduanya tetap sejak pembuatan. Hingga kini, kreator hanya dapat mengaturnya melalui InitializeWithPermission, yang memerlukan PDA Permission yang diterbitkan admin. Initialize publik selalu menyimpan biaya dalam keadaan nonaktif. Dalam praktiknya, hanya kelulusan LaunchLab dan alur terbatas lainnya yang dapat membuat pool yang mengenakan biaya kreator.
Rilis ini menambahkan InitializeV2. Instruksi ini adalah Initialize dengan satu argumen tambahan, creator_fee_on: Option<CreatorFeeOn>, dan siapa pun dapat memanggilnya. Matematika pool, swap, likuiditas, pengumpulan biaya, dan bagian protokol dari biaya kreator tidak tersentuh.
TL;DR untuk integrator
- Instruksi baru:
InitializeV2. Tanpa izin. Argumennya adalahinit_amount_0,init_amount_1,open_timedancreator_fee_on: Option<CreatorFeeOn>. Discriminator[67, 153, 175, 39, 218, 16, 38, 32]. Some(side)mengaktifkan biaya kreator di sisi tersebut;Nonemembiarkannya nonaktif.Nonemenyimpan persis apa yang disimpanInitialize.- Akun yang sama dengan
Initialize, dikurangirent. 19 akun pertama identik dan dalam urutan yang sama. Lihat daftar akun. - Kreator adalah penandatangan.
pool_state.pool_creatoradalahcreatoryang menandatangani. Berbeda denganInitializeWithPermission, penerima manfaat tidak dapat diatur ke alamat lain. - Kreator memilih aktif/nonaktif dan sisinya, bukan tarifnya. Pool mengenakan
AmmConfig.creator_fee_ratedari tingkat biayanya. Tarif tersebut default-nya0, sehingga pool yang diaktifkan pada tingkat seperti itu tidak mengakumulasi apa pun. - Tidak ada yang sudah ada yang berubah.
InitializedanInitializeWithPermissionmempertahankan discriminator, akun, argumen, dan perilakunya. Tidak ada tata letak akun atau kode kesalahan yang berubah. - Perbarui IDL Anda untuk mendapatkan instruksi baru. Klien yang tidak pernah memanggilnya tidak perlu perubahan.
Apa yang berubah dalam program
Instruksi baru: InitializeV2
InitializeV2 menjalankan kode pembuatan yang sama dengan Initialize. Instruksi ini:
- menerima PDA pool kanonik atau keypair acak yang ditandatangani sebagai
pool_state; - menerapkan daftar putih Token-2022 dan pemeriksaan
SupportMintAssociatedyang sama, melaluiremaining_accounts; - menolak pembuatan ketika
amm_config.disable_create_pooldiatur; - menaikkan
open_timekeblock_timestamp + 1ketika nilainya tidak di masa depan; - mengunci 100 unit dasar LP dan me-mint sisanya ke kreator;
- mengenakan
amm_config.create_pool_fee.
PoolState baru:
Byte tag atau byte varian yang tidak valid menggagalkan deserialisasi argumen Anchor. Tidak ada kode kesalahan baru yang terlibat.
Perbandingan tiga jalur pembuatan
Refaktor internal
Ketiga handler kini berbagi satu rutininitialize_pool. Refaktor ini tidak mengubah akun, argumen, pemeriksaan, atau nilai yang disimpan oleh Initialize maupun InitializeWithPermission. Pengujian baru juga memeriksa bahwa Initialize biasa pada konfigurasi yang sama tetap menyimpan biaya kreator dalam keadaan nonaktif.
Yang perlu diketahui kreator
- Periksa tingkat biaya terlebih dahulu. Tarif biaya kreator milik
AmmConfig, bukan pool. Pilih tingkat yangcreator_fee_rate-nya sesuai dengan yang ingin Anda kenakan. Tarif tercantum diproducts/cpmm/fees. - Pilihan ini permanen. Tidak ada instruksi yang mengubah
enable_creator_feeataucreator_fee_onsetelah pembuatan. Untuk mengubahnya, Anda harus membuat pool baru. - Trader membayarnya di atas biaya perdagangan. Biaya kreator adalah tarif terpisah yang ditambahkan ke swap. Biaya ini tidak mengurangi bagian LP, protokol, atau dana, tetapi membuat pool lebih mahal untuk diperdagangkan dibandingkan pool pada tingkat yang sama dengan biaya nonaktif.
- Pengumpulan tidak berubah. Gunakan
CollectCreatorFeeatauCollectCreatorFeePermissionless. Bagian protokol dari rilis 2026-09-19 berlaku, dan Anda tidak dapat memilih keluar darinya saat pembuatan.
Catatan migrasi
- Pembuat pool. Beralih dari
InitializekeInitializeV2hanya jika Anda ingin biaya kreator aktif. TeruskanSome(side)dan hapus akunrent.Initializetetap berfungsi. - Pengguna SDK.
raydium.cpmm.createPooldi@raydium-io/raydium-sdk-v2@0.2.64-alphamembangunInitialize. Sampai sebuah rilis menyediakan builderInitializeV2, enkode dari IDL yang diperbarui. - Indexer dan router. Perkirakan lebih banyak pool dengan
enable_creator_fee = true, dibuat oleh wallet biasa alih-alih LaunchLab. Kutip harga darienable_creator_feedancreator_fee_onmilik setiap pool sendiri, jangan pernah hanya dari jalur pembuatan atau tingkat biayanya. Dekode instruksi baru jika Anda melacak pembuatan pool dari instruksi. Pelacakan dari akunPoolStatetidak memerlukan perubahan. - UI. Tampilkan apakah pool mengenakan biaya kreator dan pada tarif berapa, karena dua pool pada tingkat yang sama kini dapat berbeda.
- LaunchLab dan alur berizin lainnya. Tidak ada perubahan.
InitializeWithPermissiontetap menjadi jalur ketika pembayar dan kreator yang tercatat harus berbeda.
Apa yang tidak berubah
- Setiap tata letak akun, termasuk
PoolStatedanAmmConfig. InitializedanInitializeWithPermission: discriminator, akun, argumen, dan nilai yang disimpan.Permission,CreatePermissionPdadanClosePermissionPda.- Matematika swap, deposit, dan withdraw, pengenaan biaya kreator, dan bagian protokol dari biaya kreator.
- Kode kesalahan.
6000–6015tidak berubah; tidak ada yang ditambahkan. - Program ID.
Halaman yang diperbarui
products/cpmm/instructions: banner upgrade; baris ringkasan dan matriks perubahan status; bagianInitializeV2baru dengan argumen, pengodean, dan daftar akun; kondisi pascaInitializekini merujuk keInitializeV2.products/cpmm/fees: bagian “Creator fee” mencantumkan ketiga jalur pembuatan dan mencatat bahwa mengaktifkan biaya tidak menetapkan tarifnya.products/cpmm/accounts: catatanpoolStatedan ID pool; catatan bidangcreator_fee_on/enable_creator_fee; catatanPermission; baris siklus hidup akun.products/cpmm/overview: callout “What’s new” dan poin “Predictable fees”.products/cpmm/code-demos: catatan bahwacreatePoolmembangunInitializedan cara menggunakanInitializeV2.protocol-overview/shared-infrastructure: biaya kreator tidak lagi terbatas pada pool yang lulus LaunchLab.reference/token-2022-support: jalur pembuatan pool CPMM.
raydium-cp-swap branch feat/initialize-v2 (40cbd81): programs/cp-swap/src/lib.rs, instructions/initialize_v2.rs, instructions/initialize.rs, instructions/initialize_with_permission.rs, instructions/mod.rs, states/pool.rs, dan tests/initialize_v2.test.ts.
