Auto-Freeze ve Default Frozen: Çoğu Launch'ın Atladığı Kontrol Katmanı
Token-2022 defaultAccountState=Frozen ile auto-freeze işletim akışı arasındaki farkı, beş meşru kullanım senaryosunu ve en sık düşülen tuzağı açıklar.

Solana ekosisteminde "auto-freeze" ifadesini operatör yazışmalarında, Discord kanallarında ve launch checklist'lerinde sık görürsün. Çoğu zaman iki farklı şeyi kastederler ve bunu fark etmezler. Biri mint seviyesinde Token-2022 extension'ıdır, mint yaratılırken bir kez kararlaştırılır ve geri alınamaz. Diğeri ise işletim akışıdır, mint yaşadıkça çalışır ve her yeni holder kararını ayrı bir adım olarak ele alır. İkisini birbirine karıştıran proje, RWA pazarına çıkarken bir aydan sonra cüzdanı kilitli kalan bir yatırımcının e-postasıyla uyanır. Bu yazı iki katmanı ayırır, hangi senaryoda hangisinin gerçekten oturduğunu gösterir, çoğu launch'ın neden bu yolu seçmediğine bakar.
İki mekanizma, tek isim
İlk mekanizma Token-2022 programının defaultAccountState extension'ı. Mint'i yaratırken bu extension'ı Frozen değeriyle aktive edersen, o mint için açılan her yeni associated token account otomatik olarak donmuş doğar. Holder, freeze authority tarafından elle eritilene kadar tek satoshi bile transfer edemez. Bu davranış mint'in DNA'sına yazılır, sonradan çıkarılamaz.
İkinci mekanizma operasyonel katman: yeni hesapları izleyen, kurallara göre freeze talimatı uygulayan ya da kararı operatöre soran bir akış. j.tools üzerinde bu akışın aracı otomatik freeze işletim aracı olarak duruyor (şu anda yayın öncesi listesinde). Bu katman herhangi bir mint için çalışabilir, klasik SPL veya Token-2022 fark etmez, koşul sadece freeze authority'nin operatörde olması.
Token-2022 defaultAccountState extension'ı
Extension üç değer kabul eder: Uninitialized, Initialized ve Frozen. Bu yazının ilgisi son değerde. Mint yaratımında Frozen'ı seçersen, ilk holder dahil hiç kimse erit komutu çekmeden o hesabı kullanamaz. Erit komutunu sadece mint'in freeze authority'si verir.
Önemli bir kural var: bir hesap eritildikten sonra eritili kalır, freeze authority açıkça yeniden dondurmadıkça. Yani extension her yeni hesabı dondurur, geriye dönüp eski hesapları yeniden dondurmaz. Eski hesapları kapatmak istersen tek tek freeze komutu çekmen lazım, ki bunun için tekil hesap freeze aracı doğrudan iş görür.
Mint'i Token-2022 üzerinde defaultAccountState=Frozen ile yaratmak isteyen operatör için j.tools'taki giriş noktası Token-2022 mint oluşturma aracı. Klasik SPL mint'e bu extension sonradan eklenemez, yani karar mint yaratımı anında verilir.
// Token-2022 mint: defaultAccountState = Frozen ile yaratim
import {
createInitializeDefaultAccountStateInstruction,
AccountState,
ExtensionType,
TOKEN_2022_PROGRAM_ID,
} from '@solana/spl-token';
const extensions = [ExtensionType.DefaultAccountState];
const defaultState = AccountState.Frozen;
// Bu mint icin acilan her yeni ATA donmus dogar.
// Holder, freeze authority tarafindan eritilene kadar
// hicbir transfer instruction'i basariyla calismaz.
const mint = await createMint(
connection,
payer,
mintAuthority,
freezeAuthority,
decimals,
undefined,
{ extensions, defaultState },
TOKEN_2022_PROGRAM_ID,
);
Operasyonel auto-freeze akışı
Default frozen tek başına bir launch stratejisi değil, çünkü her yeni holder için "eritsek mi, beklesek mi, ret mi" kararı vermek gerekir. Bu kararı binlerce holder için elle vermek operatörün gününü yer. İşletim katmanı bu yükü taşımak için var.
Akış basit haliyle şu mantıkta çalışır: yeni bir holder hesabı açıldığında bir kural seti tetiklenir. Kural KYC sağlayıcısından yeşil ışık alıyorsa erit, gri liste ise operatöre bildir, kara liste ise dondurmaya devam et. Otomatik freeze işletim aracı bu kuralı dış sistemlerin onayıyla işletir. Klasik SPL için de geçerlidir; tek koşul freeze authority'nin canlı olması ve operatörün elinde olması.
Beş meşru kullanım senaryosu
Default frozen'a karşı varsayılan refleks "merkeziyetçi, kötü" şeklinde işler, ki bu okuma yanlış. Beş senaryo bu kontrol katmanının gerçek anlamlı kullanıldığı yerleri gösterir.
| Senaryo | Default frozen neden oturur | Optik maliyet |
|---|---|---|
| RWA token KYC akışı | Erit adımı, KYC doğrulamasının kendisidir; doğrulanmadan transfer yok | Hedef kitle zaten merkezi yapıyı bekliyor, maliyet düşük |
| Yargı bazlı menkul kıymet token'ı | Yaptırım listeleri ve coğrafi kısıtlar erit kararından geçer | Compliance maliyetine kıyasla optik önemsiz |
| Anti-sniper meme launch | İlk 5 ila 15 dakikadaki sniper hesaplarını süzer, ardından toplu erit | Yüksek; retail topluluğu freeze authority görmekten hoşlanmaz |
| Vesting cliff zorlaması | Yatırımcı tahsisleri donmuş hesaplara mint'lenir, cliff tarihi erit tarihidir | Düşük; yatırımcı tarafı kontrolü zaten kabul ediyor |
| Lansman öncesi takım dağıtımı | Özel anahtarlar sızsa bile kimse satış başlamadan satamaz | Çok düşük; sadece iç süreç |
Bu beş kategorinin dışında üçüncü taraf compliance partner'larıyla entegre olan farklı varyantlar da var, ancak çekirdek mantık aynı kalır: erit komutu, off-chain bir kararın on-chain ifadesidir.
Çoğu launch neden bunu atlıyor
Beş senaryo ne kadar meşrusa, retail odaklı çoğu launch'ın bu yoldan kaçınmasının sebepleri de o kadar gerçek. İlk neden DEX aggregator filtresi. Jupiter ve Raydium ön yüzleri, freeze authority canlı ve defaultAccountState=Frozen aktif tokenlerde kullanıcıların "transfer edemiyorum" hatasına çarpmasını istemez. Token teknik olarak yaşar ama route'lar zayıflar. Listing arzulu bir launch için bu fiili bir bariyer.
İkinci neden optik. Holder Solscan'i açıp freeze authority'yi görür, default frozen extension'ını fark eder ve "takım bağımı kilitleyebilir" diye okur. Niyet ne kadar masum olursa olsun, bu okuma launch hikayesini boğar. Üçüncü neden ekosistem kapsamı. Token-2022 zaten klasik SPL'e göre daha dar wallet, explorer ve DEX desteğine sahip; üstüne default frozen extension'ı koymak entegrasyon yüzeyini bir kez daha daraltır. Dördüncü neden işletim yükü; her yeni holder bir erit kararı demektir. Beşinci neden CEX listing süreci; çoğu borsa listing ekibi freeze authority canlı tokenlere yatırım yapmaz.
Tuzak: "serbest bıraktım" yanılgısı
Default frozen mint açıp ilk holder dalgasını erittikten sonra "artık ademi merkezi olalım" diyerek freeze yetkisi iptal aracı üzerinden authority'yi yakarsan, yeni ATA'lar hâlâ donmuş doğmaya devam eder. Ama artık kimse onları eritemez. Altı ay sonra mint'ini transfer almaya çalışan yeni bir holder kalıcı olarak kilitli kalır. Bu tuzak gerçek RWA projelerini vurdu.
Aynı problem tüm yetkileri iptal aracı için de geçerli. Tüm authority'leri tek seferde iptal etmek default frozen extension'ı söndürmez; sadece kimse o extension'ı yönetemez hâle gelir. Eğer default frozen ile çıktıysan ve gerçekten serbest dolaşımlı bir token istiyorsan, önce var olan holder'ları eritirsin, sonra yeni mint'lenmeyecek bir token olduğundan emin olursun (mint authority kapalı), ardından freeze authority'yi iptal edersin. Aksi takdirde tokenin yarı ömrü vardır.
Token-2022 PermanentDelegate ile karışıklığı
Token-2022 ekosisteminde sık karıştırılan bir başka extension PermanentDelegate. İkisi farklı problemleri çözer. Default frozen kim transfer edebilir'i kontrol eder, PermanentDelegate belirlenmiş yetkilinin herhangi bir holder hesabından token taşıyabilmesine izin verir. Compliance açısından PermanentDelegate daha ağır bir kontroldür çünkü holder'ın irrade dışı tahliyesine kapı açar. Default frozen sadece "henüz dolaşıma giremezsin" der.
j.tools üzerinde tam akış
Default frozen ile bir launch sürecini j.tools'ta uçtan uca kurmak istersen sıra basit. Önce Token-2022 mint oluşturma aracı ile mint'i defaultAccountState=Frozen aktif yaratırsın, freeze authority operatör cüzdanında durur. Ardından otomatik freeze işletim aracı üzerinden kural setini bağlarsın (KYC sağlayıcısı, yaptırım listesi, gri liste mantığı). Uzun ömürlü ad-hoc müdahaleler için tekil hesap freeze aracı ve tekil hesap erit aracı elinde kalır. Belirli aralıklarla holder snapshot aracı ile freeze durumunu denetlersin. Token'ı tamamen serbest bırakmaya karar verdiğin gün, tüm aktif holder'ları erittikten ve mint authority'yi kapadıktan sonra freeze authority'yi iptal edersin.
Default frozen, compliance veya launch kontrol enstrümanı olarak çok güçlü, ancak merkeziyet maliyeti açık. Karar her iki tarafı da göz önüne alarak verilir; bir kez mint yarattıktan sonra geri dönüş yok. Operatör rehberleri kategorisi ve solana etiketli yazılar arşivi kontrol katmanlarına dair diğer pratik incelemeleri kapsar.


