Skip to main content
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 →
Bu sayfa başlatma başına hesap grafiğini belgeler: PoolState (bir başlatma için kök durum hesabı), iki kasası, yetki PDA’sı ve başlatma kapatıldığında kazandığı mezuniyet sonrası referansları.Her başlatmayı sınırlayan protokol düzeyindeki yapılandırma için bkz. products/launchlab/global-config. Platform başına ek katman için bkz. products/launchlab/platform-config. Vesting hesapları (VestingSchedule on PoolState, VestingRecord başına yararlanıcı) için bkz. products/launchlab/vesting.

Hesap envanteri

SDK’nın raydium.launchpad.getLaunchById işlevi PoolState artı başlatmanın mezun olup olmadığını gösteren bir bayrak döndürür; eğer mezun olduysa, göç sonrası havuz kimliği dahil edilir.

PoolState

Başlatma başına kök durum. Aşağıdaki alan adları zincir üstü Rust yapısıyla eşleşir (states/pool.rs); bazı değerler okunabilirlik için basitleştirilmiştir — tam bellek düzeni için kaynağa başvurun.
PoolStatus değerleri (Anchor IDL’den):
Entegratör tarafından kullanılan alanlar:
  • status — üç değer, monoton (Funding → Migrate → Migrated). Okumalar her zaman güvenli; yazımlar kapılı.
  • real_base, real_quote — mevcut eğri durumu. virtual_base / virtual_quote ile birlikte kasalara dokunmadan spot fiyatı hesaplamak için yeterlidirler. Bkz. bonding-curve.
  • total_base_sell vs real_base — UI’ler için “mezuniyete doğru ilerleme” oranı.
  • migrate_type — yeni başlatma 1 (CPSWAP) gerektirir. Depolanan 0 yalnızca CPMM-only uygulaması öncesinde oluşturulan mevcut bir başlatma için anlamlı kalır.
  • amm_creator_fee_on — mezuniyet sonrası CPMM havuzunda creator_fee_on = OnlyQuoteToken (0) veya BothToken (1) seçer. Göç hedefini seçmez. Bkz. creator-fees.
  • quote_protocol_fee / platform_fee / migrate_fee — üç bağımsız ücret sayacı. Her birinin kendi talep talimatı vardır; bkz. instructions.
  • vesting_schedule — her PoolState üzerinde mevcut ancak total_locked_amount == 0 olduğunda etkin değil. Tam yaşam döngüsü için bkz. vesting.

Yetki PDA’sı

LaunchLab, tüm başlatmalar arasında başlatma başına tohum olmadan türetilen tek bir yetki PDA’sı kullanır:
Bu tek PDA:
  • Her başlatmanın base_vault ve quote_vault üzerindeki yetki.
  • Her başlatmanın base_mint üzerindeki mint_authority (mezuniyet öncesi).
  • CPMM mezuniyet CPI’sinde ve mevcut durum için eski AMM v4 mezuniyetinde imzalayan.
  • ClaimVestedToken transferlerinde temel kasanın dışına imzalayan.
mint_authority, MigrateToCpswap veya eski MigrateToAmm çağrısından hemen sonra iptal edilir, böylece arz kalıcı olarak sabitlenir. İki ek PDA ücret kasalarını kapılar:
Bunlar ClaimCreatorFee ve ClaimPlatformFeeFromVault sırasında ilgili ücret kasalarının dışına transferi imzalarlar.

Temel mint

Initialize tarafından satır içi oluşturulur:
  • mint_authority = authority (mezuniyette iptal edilir).
  • freeze_authority = None.
  • supply = supply, tamamen base_vault içine basılır.
  • decimals yaratıcı tarafından Initialize sırasında seçilir (yaygın olarak 6).
Tam arz önceden basıldığından, base_mint.supply başlatmanın ömrü boyunca sabittir. Eğri alımları tokenleri base_vault’tan alıcıya taşır ancak mint_to çağırmaz. Initialize / InitializeV2 SPL Token başlatmaları oluşturur. Özel InitializeWithToken2022 talimatı, temel mintin bir Token-2022 mint’i olmasını sağlar (isteğe bağlı TransferFeeConfig ile); alıntı mint hala SPL Token’dir. Üç başlatma yolu da CPMM mezuniyeti gerektirir.

Kasalar

Hem base_vault hem de quote_vault LaunchLab authority PDA’sı tarafından sahip olunan standart SPL Token hesaplarıdır. Adresler PoolState üzerinde depolanır ve ayrıca türetilebilir:
(Üretimde bir türetmeye güvenmeden önce kaynak Initialize hesapları yapısından tam tohum öneklerini doğrulayın.)

Ücret kasaları

İki PDA ücretleri başlatmalar arasında toplar:
  • Yaratıcı ücret kasası — tohum [creator, quote_mint] adresindeki PDA. Aynı alıntı mint’inde aynı yaratıcı ücretlerini kazanan her başlatma aynı kasaya dökülür. Yaratıcı bunu ClaimCreatorFee aracılığıyla temizler.
  • Platform ücret kasası — tohum [platform_config, quote_mint] adresindeki PDA. Aynı platform aracılığıyla yönlendirilen ve aynı alıntı mint’ini kullanan her başlatma aynı kasaya dökülür. Platform’un platform_fee_wallet’ı bunu ClaimPlatformFeeFromVault aracılığıyla temizler. Başlatma başına quote_vault’tan doğrudan çeken bir başlatma başına temizleme varyantı da vardır (ClaimPlatformFee) ve toplu kasadan geçmez.
Toplu kasa deseni, yüksek hacimli bir yaratıcı veya platformun ücret birikiminin kira maliyetini birçok başlatma arasında amortize etmesini sağlar.

Alıntı kasası ↔ real_quote

quote_vault.balance ve PoolState.real_quote senkronize kalmalıdır. Üç bekleyen ücret sayacının toplamı kadar sapabilirler (quote_protocol_fee, platform_fee, migrate_fee), bunlar kasada oturur ancak ücret sayaçlarına ve eğri rezervine değil. Eğri matematik her zaman real_quote kullanır, asla ham kasa bakiyesini değil. Mezuniyet öncesi değişmez:

Yaşam döngüsü hesap geçişleri

Sonraki adım

Kaynaklar:
  • raydium-launch/programs/launchpad/src/states/pool.rsPoolState, PoolStatus, VestingSchedule, AmmCreatorFeeOn.
  • raydium-launch/programs/launchpad/src/lib.rs — PDA tohum sabitleri (AUTH_SEED, CREATOR_FEE_VAULT_AUTH_SEED, PLATFORM_FEE_VAULT_AUTH_SEED).
  • Raydium SDK v2 launchpad modülü.