#dusk $DUSK Peringatan paling berbahaya di sistem back-end sekuritas—tidak selalu berarti “gagal”, melainkan “telah diproses”. “Gagal” setidaknya membuat orang berhenti, sedangkan “telah diproses” mudah disalahartikan sebagai transaksi yang sudah benar-benar tuntas. Di blockchain pun sama: sebuah blok masuk ke buku besar lokal tidak berarti ia sudah mencapai langkah terakhir yang benar-benar tidak dapat digantikan.
Saya membaca ulang whitepaper @Dusk tentang Rolling Finality, dan baru sadar bahwa Dusk tidak mencampur semua “konfirmasi” menjadi satu kata, tetapi membaginya menjadi empat status: accepted, attested, confirmed, dan final. Blok accepted memang sudah memperoleh bukti sukses, namun jika berasal dari iterasi yang lebih tinggi, dan iterasi-iterasi sebelumnya tidak memiliki bukti kegagalan, maka ketika kemudian muncul blok sah dari iterasi yang lebih rendah, blok tersebut masih bisa digantikan, dan blok-boks berikutnya ikut mundur.
Attested lebih stabil karena berasal dari iterasi ke-0, atau iterasi sebelumnya sudah meninggalkan bukti kegagalan; confirmed masih memerlukan blok-blok setelahnya untuk terus menambah kredibilitas pada rantai saat ini; hanya final yang berarti blok induknya juga sudah final—seluruh jalur leluhur terkunci dan tidak bisa digantikan lagi.
Whitepaper memberi contoh yang konkret: sebuah blok diproduksi pada iterasi ke-5, tetapi sebelumnya hanya ada dua iterasi yang membawa bukti kegagalan; blok itu pertama kali ditandai sebagai accepted, sehingga masih harus menunggu 4 blok berurutan yang attested atau confirmed agar baru masuk ke confirmed. Artinya, antara “blok sudah keluar” dan “sekuritas bisa diserahkan sebagai fakta yang tidak dapat dibatalkan” memang bisa ada beberapa langkah di antaranya.
Saya menghargai kejujuran ini. Sistem finansial paling takut probabilitas disembunyikan ke dalam tanda centang hijau. Namun ia juga meninggalkan PR untuk sisi produk: dompet, tempat transaksi, dan sistem pendaftaran—menampilkan status yang mana sebenarnya? Saat pengguna melihat accepted, apakah mereka bisa terus mengalihkan atau menebus? Jika antarmuka menyatukan semuanya dengan kata “berhasil”, sekalipun konsensusnya sudah ketat, copywriting produk tetap bisa menghapus nuansa status konsensus yang sesungguhnya.
Jadi ketika saya melihat Dusk dengan “finalisasi per detik”, saya tidak hanya melihat rata-rata berapa detik yang dipakai. Saya juga memeriksa distribusi dari accepted menuju final dalam kondisi iterasi yang tidak normal, serta apakah aplikasi benar-benar menunggu hingga final sebelum menganggapnya tuntas. Finalitas bukan angka pemasaran, melainkan disiplin yang tidak boleh mengubah “hampir selesai” menjadi “sudah selesai”.