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 →
OpenPositionV2 veya OpenPositionWithToken22Nft kullandığında ve temel vault mint’lerinden en az biri hardcoded kısıtlı-yayıncı listesinden bir dondurma yetkisine sahip olduğunda dondurur.
Entegratörler için Özet
- Yeni position NFT mint’lerinin dondurma yetkisi vardır, ancak varsayılan olarak donmuş değildir.
OpenPosition,OpenPositionV2veOpenPositionWithToken22Nft, position’ınpool_state’ini mint dondurma yetkisi olarak ayarlar. Mint yetkisi, tek NFT basıldıktan sonra yine de kaldırılır. - Dondurma V2 yolu artı yayıncı eşleşmesi gerektirir.
OpenPositionV2veOpenPositionWithToken22Nft,vault_0_mint.freeze_authorityvevault_1_mint.freeze_authority’yi inceler. Yeni NFT hesabı yalnızca en az biri program listesiyle eşleşirse dondurulur. Eşleşme olmadan, donmuş kalmaz ve transferilebilir. - Donmuş, sahibine bağlı demektir. SPL Token, NFT transferini ve token-hesap sahibi değişikliklerini yerel
AccountFrozenhatası ile reddeder. Likiditeyi artırma/azaltma ve ücret/ödül toplama, NFT sahibi imzaladığında çalışmaya devam eder. - Kapatma kullanılabilir kalır.
ClosePosition, donmuş NFT hesabını algılar, havuz PDA’sını kullanarak çözer, ardından NFT’yi yakar ve position’ı atomik olarak kapatır. - Donmuş kapatma bir kalan hesap gerektirir. İstemci,
personal_position.pool_id’yi ilk kalan hesap olarak eklemelidir. Eksik olması CLMMAccountLackdöndürür; yanlış havuz geçirmekNotApproveddöndürür. - Mevcut position’lar etkilenmez. Güncelleme, NFT mint yetkilerini geriye dönük olarak değiştirmez veya mevcut token hesaplarını dondurmaz.
- CLMM durum düzeni veya bildirilen IDL hesap-listesi değişikliği yoktur.
PoolState,PersonalPositionStateve komut argümanları bayt-uyumlu kalır. Kapatma-yolu gereksinimiremaining_accountsaracılığıyla taşınır.
Tetikleme mantığı
Program, açma zamanında iki vault mint’ini değerlendirir:frozen_position_nft_authorities::IDS’dir ve tek bir giriş taşır. Mevcut mainnet-beta ve devnet eşleşme anahtarları reference/program-addresses içinde bulunur.
Kontrol, paylaşılan açık-position işleyicisinde yalnızca vault mint hesapları sağlandığında çalışır. Bu şu anlama gelir:
Position NFT yetki değişiklikleri
Bu güncellemeden önce, yeni oluşturulan klasik SPL position NFT mint’i dondurma yetkisini tutmadı. Güncellemeden sonra, her yeni position NFT mint’i havuzunu dondurma yetkisi olarak adlandırır; sıradan havuzlardaki position’lar da dahil. Bu yetki ayarı tek başına NFT token hesabını dondurmaz; sıradan ve eşleşmeyen position’lar donmuş kalmaz. Havuz PDA’sını global yönetici veya yayıncı anahtarı yerine kullanmak, yetkilendirmeyi bir havuzla sınırlar. Harici bir taraf PDA olarak imzalayamaz ve CLMM, keyfi position hesaplarını dondurmak veya çözmek için genel amaçlı komut sunmaz. Yeni kod yetkilendirmeyi yalnızca iki yerde kullanır:- Temel yayıncı kontrolü eşleştiğinde basımdan hemen sonra dondurun.
- Yakılmadan hemen önce
ClosePositionsırasında çözün.
ClosePosition geçişi
Altı bildirilen hesap değişmez. Donmuş NFT için, havuzu ilk kalan hesap olarak ekleyin:
PoolState’i yükler, havuz imzalayan tohumlarını türetir ve şunları gerçekleştirir:
Uyumluluk matrisi
Yeni CLMM özel hata varyantları veya sayısal kaymalar tanıtılmaz. SPL Token’ın yerel
AccountFrozen hatası, transfer veya sahibi değiştirme denemelerini reddeder.
Güncellenen sayfalar
products/clmm/overview— sürüm özeti ve kısıtlı transferilemezlik uyarısı.products/clmm/ticks-and-positions— yetki modeli, tetikleme, sahibi yetenekleri ve kapatma geçişi uyarısı.products/clmm/accounts— position NFT mint’i ve yaşam döngüsü davranışı.products/clmm/instructions— açma sonkoşulları ve donmuşClosePositionkalan-hesap yolu.products/clmm/code-demos— doğrudan Anchor kapatma örneği ve sabitlenmiş-SDK uyarısı.user-flows/add-remove-liquidity— kullanıcı tarafından görülen kısıtlı-position davranışı.user-flows/burn-and-earn— donmuş position’lar kilit emanet içine aktarılamaz.security/oracle-and-token-risks/security/attack-vectors— yayıncı ve transfer-risk sınırları.reference/token-2022-support— havuz izin listesi ve position saklama arasındaki fark.reference/error-codes— genişletilmişAccountLackveNotApprovednedenleri.reference/program-addresses— kısıtlı-yayıncı yetki eşleşme anahtarları.reference/fee-comparison/reference/glossary— transferilemezlik istisnalar.
- Ön-sürüm CLMM dalı
feat/position-nft-freezeatecb157760776f83f97507fa78c6e32cfb30d92a9. - Taahhütler
2e95310(kısıtlı-yayıncı NFT dondurma) veecb1577(havuz-kapsamlı dondurma yetkisi),masterat51fdba2ile karşılaştırıldı. - Program kaynakları
instructions/{open_position,open_position_v2,open_position_with_token22_nft,close_position}.rsveutil/token.rsaltında. position-nft-freeze.test.ts, sıradan transferilemezliği, donmuş transfer/sahibi-değişikliği reddetmesini ve V2 artı Token-2022 çözme-kapatma-öncesi akışlarını kapsayan.

