Bu sayfa yapay zekâ tarafından otomatik olarak çevrilmiştir. İngilizce sürüm esas alınır.İngilizce sürümü görüntüle →
PlatformConfig, GlobalConfig üzerine oturan platform düzeyinde bir katmandır. GlobalConfig protokol genelinde kuralları tanımlarken (“işlem ücreti %1, arz en az 10M olmalı, sadece bu cüzdan mezun olabilir”), PlatformConfig her başlatma platformunun — pump.fun, Raydium’un kendi arayüzü, üçüncü taraf launchpad’ler — kendi ücretini eklemek, mezuniyet sonrası LP’nin payını talep etmek, başlatmalarının hangi eğri şekillerini seçebileceğini kısıtlamak ve markalamalarını (ad, web sitesi, resim) zincir üzerinde göstermek için kullandığı araçtır.Nedir
BirPlatformConfig hesabı, bir platform için beş çapraz işlevi yönetir:
- Markalama — ad, web sitesi, resim bağlantısı; tümü satır içi depolanır, böylece herhangi bir explorer veya toplayıcı, bir token’ı başlatan platformu gösterebilir.
- Platform ücreti — protokolün
trade_fee_rate’inin üzerine ek bir işlem ücreti (fee_rate). Platform’unplatform_fee_wallet’ine tahakkuk eder.GlobalConfig.max_share_fee_ratetarafından 100 bps ile sınırlandırılır. - LP geçiş bölüşümü — üç depolanan tam sayı (
platform_scale,creator_scale,burn_scale) toplamı1_000_000’e eşittir. 2026-08-17 yükseltmesinden önce, creator ölçeği ayrı bir creator Fee Key’i üretiyordu. Yükseltmeden sonra yürütülen geçişler ilk ikisini platform’a ait kilitli LP payına birleştirir; geri kalan yakılır. - Eğri parametresi beyaz listesi — bu platformda izin verilen tam olarak hangi
(supply, total_base_sell, total_quote_fund_raising, migrate_type, migrate_cpmm_fee_on, vesting_params...)kombinasyonlarını listeleyen birVec<PlatformCurveParam>. Vektör boşsa veya tüm girişler geçersizse, herhangi bir kombinasyon izin verilir; aksi takdirde başlatmalar tam olarak bir girişle eşleşmelidir. - Global-config beyaz listesi — seçilen
GlobalConfigiçin platform tarafından oluşturulan birPlatformAllowConfiggerektiren isteğe bağlı bir kısıtlama.
create_platform_config’e bakın.)
Düzen
platform_scale + creator_scale + burn_scale toplamı 1_000_000’e eşit olmalıdır. 2026-08-17 yükseltmesinden önce, creator_scale ayrı olarak kilitliydi ve Fee Key’i token yaratıcısına gidiyordu. Yükseltmeden sonra yürütülen geçişler için, platform_scale’e eklenir ve kilitli LP hakları platform’a gider. Güncellenmiş mantık altında örnek sonuçlar:
(0, 100_000, 900_000)— %90 LP yakılır, %10 platform’a kilitlenir.(50_000, 100_000, 850_000)— %85 yakılır, %15 platform’a kilitlenir.(0, 0, 1_000_000)— tam yakma, NFT mint yok. Katı “içeriden kimse yok” başlatmaları.
Markalama alanları
name, web ve img satır içi bayt dizileridir, boyut sabitine kadar sıfırlarla doldurulur. Bunları dizeler olarak okumak için ilk \0’a kadar dilimleyin:
name: 64, web: 256, img: 256), böylece platformlar explorer’lar ve toplayıcılar için yeterli meta veri içerebilir ve zincir dışı depolamaya dokunmaz. Bu boyutları aşan herhangi bir şey CreatePlatformConfig’de InvalidInput ile geri döner.
Ücret mekaniği
BirPlatformConfig’e bağlı bir eğri üzerindeki swap üç katmanlı ücret alır:
trade_feeprotokolünprotocol_fee_owner’ına tahakkuk eder (CollectFeearacılığıyla talep edilir).platform_feeplatform başına bir kasaya tahakkuk eder (ClaimPlatformFeeveyaClaimPlatformFeeFromVaultaracılığıyla talep edilir;instructionsbölümüne bakın).creator_feeyaratıcının pubkey’i + quote mint tarafından anahtarlanan yaratıcı başına bir kasaya tahakkuk eder (ClaimCreatorFeearacılığıyla talep edilir).
creator_fee_rate MAX_CREATOR_FEE_RATE = 5000 (50 bps) ile sınırlandırılır. fee_rate (platform ücreti) GlobalConfig.max_share_fee_rate tarafından 10000 (100 bps) ile sınırlandırılır.
NFT geçiş bölüşümü (yalnızca CPMM)
Bir başlatma CPMM’ye mezun olduğunda, geçiş talimatıCPMM::InitializeWithPermission tarafından mint edilen LP token’larını iki şekilde böler:
lp_to_platform sıfır değilse, LP-Lock programı bunu platform_nft_wallet tarafından sahip olunan bir Fee Key NFT’sine sarar. Bu, ayrı platform ve yaratıcı Fee Key’leri oluşturan yükseltme öncesi davranışın yerini alır. Yükseltmeden önce tamamlanan geçişler tarafından oluşturulan Fee Key’ler değişmeden kalır. Bu LP-fee hakkı, platform_cp_creator tarafından kontrol edilen CPMM yaratıcı ücretlerinden ayrıdır.
Yakma dilimi doğrudan yakılır, bu nedenle hiçbir hesap bunu geri çekemez veya bu payın temsil ettiği LP ücretlerini talep edemez.
Depolanan migrate_type = 0 olan mevcut başlatmalar hala eski AMM v4 yolunu kullanabilir. Yeni başlatma bu geçiş türünü reddeder.
Eğri parametresi beyaz listesi
curve_params: Vec<PlatformCurveParam>, platformun başlatmalarının hangi eğri şekillerini seçebileceğini kısıtlamak için mekanizmasıdır. Vektör boş değilse ve en az bir girişi geçerliyse, program Initialize’da başlatmanın parametrelerinin tam olarak bir girişle eşleşmesini zorunlu kılar.
u64 alanları için u64::MAX, u8 alanları için u8::MAX, supply / sell / fund-raising alanları için 0. Tüm sentinel’leri olan bir BondingCurveParam “her şeye izin ver” — boş beyaz liste davranışına eşdeğerdir.
Initialize’daki eşleştirme algoritması:
curve_params’ıglobal_config’i başlatmanın seçilenGlobalConfig’i ile eşleşen girişlere filtreleyin.- Filtrelenmiş liste boşsa, herhangi bir parametreye izin verin (platform bu
GlobalConfigiçin hiçbir şeyi beyaz listelemedi). - Filtrelenmiş listedeki her girişin
all_is_invalid()varsa (her alan joker), herhangi bir parametreye izin verin. - Aksi takdirde girişleri yineleyin; her girişi için, başlatmanın parametrelerini her joker olmayan alana karşı kontrol edin. Tüm joker olmayan alanlar eşleşirse, kabul edin ve dönün.
- Hiçbir girişi eşleşmezse,
InvalidInputile geri döndürün.
MAX_CURVE_PARAMS = 10 beyaz liste boyutunu sınırlandırır.
PlatformAllowConfig — bir platformu kısıtlama
Her platform, başlatmalarının hangi GlobalConfig hesaplarını kullanabileceğini kısıtlamayı seçer. restrict_global_config’i UpdatePlatformConfig::RestrictGlobalConfig(0 | 1) ile ayarlayın.
[b"platform_allow_config", platform_config, global_config].
Platform yöneticisi, CreatePlatformAllowConfig ve ClosePlatformAllowConfig aracılığıyla izin verilen her çift için bir hesap oluşturur veya kapatır. Kısıtlama 1 olduğunda, başlatma beklenen PDA için remaining_accounts’ı arar ve eksik hesabı NotEnoughRemainingAccounts ile reddeder. Kısıtlama 0 olduğunda, izin hesabı gerekli değildir.
Eski protokol-yönetici tarafından yönetilen PlatformGlobalAccess hesabı ve onun oluştur/kapat talimatları emekli olmuştur. Mevcut PlatformConfig ve GlobalConfig boyutları değişmez, ancak dekoderler eski global bayrağını yeni platform bayrağıyla değiştirmelidir. Eski erişim PDA’ları yeni kontrol tarafından tüketilmez.
Okuma yolu
PoolState.platform_config orijinal PlatformConfig’i doğrudan gösterir — bir kez getirin ve markalamayı önbelleğe alın.
Güncelleme yolu
Cüzdan rotasyonları (
platform_fee_wallet, platform_nft_wallet, platform_vesting_wallet, platform_cp_creator, transfer_fee_extension_auth, cpswap_config) hepsi UpdatePlatformConfig aracılığıyla gider. Tam param kodları için kaynağın update_platform_config dağıtım tablosunu okuyun.
Yaygın tuzaklar
- Beyaz liste sentinel’leri yanlış ayarlanmış.
total_locked_amount = 0olan birBondingCurveParamjoker değildir — vesting’i açıkça devre dışı bırakan başlatmalarla eşleşir. Bu alan için jokeru64::MAX’tır. Aynı tuzakcliff_periodveunlock_periodiçin de vardır. Sentinel’leri doğru ayarlamak içinclear()kullanın (programın açığa çıkardığı). - NFT-bölüşüm yuvarlama. Üç ölçek tam olarak
1_000_000’e toplanmalıdır.CreatePlatformConfig’de bir hata geri döner; çalışma zamanında bir hata ekstra bir LP birimi mint veya yakardı, bu da katı eşitlik kontrolünün orada olmasının nedenidir. - Platform vesting çift tahsisi.
platform_vesting_scale > 0ise, platform başlatmanın bağış toplama sona erdikten sonra bir kezCreatePlatformVestingAccountçağırmalıdır; unutursa, bu pay tahsis edilmemiş ve sonsuza kadar hareketsiz kalır (başlatmanıntotal_locked_amountbütçesi tüketilir ancak platform asla talep etmez). platform_cp_creatorbelirsizliği.Pubkey::default()olarak ayarlandığında, başlatma yaratıcısı mezuniyet sonrası CPMM havuzununpool_creator’ü olarak kaydedilir; gerçek bir anahtara ayarlandığında, o anahtar bunun yerine kaydedilir. Bu, mezuniyet sonrası CPMM yaratıcı ücretlerinin yararlanıcısını ve orijinalCPMM::CollectCreatorFeeyolunu imzalayabilecek kişiyi belirler. İzinsiz koleksiyon yolu hala bu kaydedilen anahtarın kanonik ATA’larını öder. Platform-config oluşturma zamanında hangi modeli istediğinize karar verin.- İzin hesabı olmadan kısıtlama.
restrict_global_config’i gerekliPlatformAllowConfig’i oluşturmadan etkinleştirmek, bu config’i seçen yeni başlatmaları engeller.
İşaretçiler
products/launchlab/global-config— bir başlatmanın karşılaması gereken protokol tarafı kuralları.products/launchlab/vesting—platform_vesting_scalemekaniği.products/launchlab/creator-fees— yaratıcı ücretleri versus platform Fee Key hakları.products/launchlab/platforms— platform entegratörü nasıl yapılır.
raydium-launch/programs/launchpad/src/states/platform_config.rs—PlatformConfig,PlatformParams,MigrateNftInfo,PlatformCurveParam,BondingCurveParam,is_valid_curve_param.raydium-launch/programs/launchpad/src/states/platform_allow_config.rs—PlatformAllowConfig.raydium-launch/programs/launchpad/src/lib.rs— platform config ve allow-config giriş noktaları.

