Hook Uniswap v4 adalah smart contract opsional yang memungkinkan sebuah pool menambahkan logika khusus pada titik-titik tertentu dalam siklusnya. Hook dapat berjalan sebelum atau sesudah tindakan seperti inisialisasi pool, perubahan likuiditas, swap, dan donasi. Dengan cara ini, pengembang dapat memperluas perilaku pool sambil menggunakan sistem penyelesaian bersama Uniswap v4.
Fungsi hook
Uniswap v4 menetapkan sepuluh fungsi callback: sebelum dan sesudah inisialisasi; sebelum dan sesudah penambahan atau pengurangan likuiditas; sebelum dan sesudah swap; serta sebelum dan sesudah donasi. Hook hanya perlu menerapkan callback yang digunakannya. Ada pula empat flag izin return-delta yang memungkinkan hook mengembalikan perubahan saldo pada tindakan swap dan likuiditas tertentu untuk mendukung pencatatan khusus.
Bergantung pada kodenya, hook dapat mendukung fitur seperti biaya dinamis, perilaku limit order, logika oracle khusus, aturan pengelolaan likuiditas, atau kurva pencatatan yang berbeda. Fitur-fitur itu merupakan kemungkinan, bukan sesuatu yang otomatis tersedia pada setiap pool. Pool v4 standar dapat berjalan tanpa hook dan tetap memakai model likuiditas terkonsentrasi yang diperkenalkan di v3.
Bagaimana pool memilih hook
Sebuah pool dapat menggunakan satu kontrak hook, sedangkan satu kontrak hook dapat melayani beberapa pool. Alamat hook menjadi bagian dari kunci pool dan ditetapkan saat pool diinisialisasi; hook tidak dapat ditambahkan, dilepas, atau diganti pada pool tersebut setelahnya. Hook lain memerlukan pool yang berbeda.
Alamat kontrak juga mengodekan izin hook yang aktif. Pengembang harus men-deploy kontrak pada alamat yang bit izinnya sesuai dengan callback yang diterapkan. Alamat dan perilaku yang dinyatakan hook membantu memahami suatu pool, tetapi tidak otomatis membuat kode hook aman.
Manfaat dan risiko
Hook memungkinkan eksperimen dengan perilaku khusus pool tanpa membuat desain AMM yang sepenuhnya terpisah. Namun, hook menambahkan kode dan asumsi ke dalam transaksi. Hook dapat memengaruhi biaya, eksekusi, atau pencatatan; bug maupun interaksi yang tidak terduga dapat menimbulkan risiko bagi pengguna. Sebelum berinteraksi, periksa pool, kode sumber hook, izinnya, dan auditnya. Men-deploy hook juga tidak menjamin bahwa antarmuka atau router tertentu akan mengarahkan swap ke pool tersebut.
Sejarah
- Agustus 2024: Whitepaper inti Uniswap v4 menjelaskan hook serta arsitektur singleton dan flash accounting.
- 31 Januari 2025: Uniswap v4 diluncurkan dengan hook sebagai cara opsional untuk menyesuaikan pool.
Istilah Terkait
Lihat Juga
- Mengapa Audit Smart Contract Gagal: Apa yang Diungkapkan Post-Mortem tentang Batas Review Keamanan
- Apa Itu MEV — Dan Mengapa Setiap Transaksi Ethereum Adalah Sebuah Permainan
- Apakah Jaringan Layer 2 Benar-Benar Terdesentralisasi?
Sumber
- Uniswap Developers — Hooks — Memuat daftar sepuluh callback, izin return-delta, izin yang dikodekan pada alamat, dan aturan bahwa hook ditetapkan saat pool diinisialisasi.
- Uniswap Developers — Architecture — Menjelaskan hubungan hook dengan PoolManager dan memberi contoh limit order, oracle khusus, pengelolaan biaya, serta pengelolaan likuiditas otomatis.
- Uniswap v4 Core Whitepaper — Menguraikan hook, pencatatan khusus, singleton PoolManager, dan flash accounting dalam desain awal.
- Uniswap Labs — Uniswap v4 Is Here — Mengumumkan peluncuran pada 31 Januari 2025 dan menjelaskan hook sebagai ekstensi modular untuk pool.