Rust smart contract pengembangan jurnal (10-3): Analisis mekanisme proposal Sputnik DAO
Sputnik-DAO sebagai infrastruktur NEAR Protocol, sedang mendorong ekosistem NEAR menuju perkembangan yang terdesentralisasi. Saat ini, platform ini telah memfasilitasi beberapa komunitas otonom terdesentralisasi untuk proyek NEAR, dan menyediakan solusi tata kelola keputusan komunitas yang lengkap dan fleksibel.
Sputnikdaov2 adalah smart contract yang digunakan untuk pemungutan suara dalam tata kelola komunitas Sputnik-DAO. Artikel ini akan memperkenalkan konsep inti dari kontrak tersebut: Proposal (, artikel selanjutnya akan membahas tentang model tata kelola komunitas DAO terkait dengan Proposal ).
1. Pengajuan Proposal
Anggota komunitas Sputnik-DAO dapat memberikan pendapat atau mengajukan proposal mengenai tata kelola atau manajemen proyek. Setiap anggota komunitas yang memiliki saham dapat meninjau dan memberikan suara pada proposal, sehingga mempengaruhi arah masa depan proyek.
Pada tingkat kontrak, anggota DAO dapat memanggil metode add_proposal() dari kontrak sputnikdaov2 untuk mengajukan proposal baru. Saat memanggil, perlu menyediakan detail proposal (ProposalInput), termasuk:
Deskripsi teks proposal (Description)
Jenis proposal ( kind )
metode add_proposal() akan melakukan verifikasi dan pemrosesan, menghasilkan proposal yang lengkap (Proposal), dan mengikatnya dengan proposal_id yang unik, menambahkannya ke dalam kolam proposal yang dikelola kontrak.
Informasi lengkap atribut proposal mencakup: pengusul, status, waktu dimulainya, status pemungutan suara, dll. Status proposal baru secara default adalah InProgress.
Sputnik-DAO meminta pengusul proposal untuk mengunci sejumlah token NEAR sebagai deposit. Deposit ini akan dikembalikan kepada pengusul proposal saat proposal berakhir dengan normal.
2. Status Proposal
Proposal di Sputnik-DAO mungkin mengalami berbagai status: InProgress, Approved, Rejected, Removed, dll.
Perubahan status proposal didorong oleh metode act_proposal(). Anggota DAO dapat memanggil metode ini untuk melakukan operasi seperti memberikan suara pada proposal.
VoteApprove:setuju
VoteReject:menolak
VoteRemove: menganggap proposal tidak berarti, perlu dihapus
Pemungutan suara akan dilakukan dengan memanggil policy.proposal_status(). Untuk proposal yang memenuhi ambang batas suara, status akan berubah sesuai.
Disetujui: memanggil internal_execute_proposal() untuk mengeksekusi proposal
Ditolak/Dihapus: memanggil internal_reject_proposal() untuk menjalankan operasi penutupan
Proposal dengan status Removed akan langsung dihapus dari kolam proposal, tanpa pengembalian deposit. Proposal dengan status Rejected akan tetap ada di kolam proposal dan deposit akan dikembalikan.
3. Eksekusi Proposal
Jika status proposal adalah Disetujui, sistem akan memanggil internal_execute_proposal() untuk mengeksekusi isi proposal.
Sputnik-DAO mendukung berbagai jenis proposal, kebanyakan melibatkan pembaruan konfigurasi mode tata kelola DAO. Berikut adalah dua jenis proses penanganan proposal yang khas:
( 3.1 Proposal eksekusi fungsi kontrak
Untuk proposal tipe FunctionCall, di dalamnya akan menggunakan bentuk Promise Batch Actions untuk mengeksekusi pemanggilan metode kontrak yang ditentukan dalam proposal.
) 3.2 Proposal transfer dana kontrak
Untuk proposal tipe Transfer, akan memanggil fungsi internal_payout######, untuk melakukan operasi transfer berbagai jenis token ke akun yang ditentukan.
Artikel ini memperkenalkan konsep inti dari kontrak Sputnik DAO—Proposal (, termasuk proses pembuatan, pemungutan suara, dan pelaksanaan proposal. Selanjutnya, akan dijelaskan lebih lanjut tentang implementasi dan konfigurasi model tata kelola di Sputnik-DAO )Policy (.
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
11 Suka
Hadiah
11
4
Posting ulang
Bagikan
Komentar
0/400
RetiredMiner
· 08-13 09:59
Tata kelola pemungutan suara, rasa yang familiar datang lagi.
Lihat AsliBalas0
GameFiCritic
· 08-12 02:31
Rencana pengelolaan masih kurang terdesentralisasi, distribusi bobot suara perlu lebih seimbang.
Analisis smart contract Sputnik DAO: Desain dan implementasi mekanisme proposal
Rust smart contract pengembangan jurnal (10-3): Analisis mekanisme proposal Sputnik DAO
Sputnik-DAO sebagai infrastruktur NEAR Protocol, sedang mendorong ekosistem NEAR menuju perkembangan yang terdesentralisasi. Saat ini, platform ini telah memfasilitasi beberapa komunitas otonom terdesentralisasi untuk proyek NEAR, dan menyediakan solusi tata kelola keputusan komunitas yang lengkap dan fleksibel.
Sputnikdaov2 adalah smart contract yang digunakan untuk pemungutan suara dalam tata kelola komunitas Sputnik-DAO. Artikel ini akan memperkenalkan konsep inti dari kontrak tersebut: Proposal (, artikel selanjutnya akan membahas tentang model tata kelola komunitas DAO terkait dengan Proposal ).
1. Pengajuan Proposal
Anggota komunitas Sputnik-DAO dapat memberikan pendapat atau mengajukan proposal mengenai tata kelola atau manajemen proyek. Setiap anggota komunitas yang memiliki saham dapat meninjau dan memberikan suara pada proposal, sehingga mempengaruhi arah masa depan proyek.
Pada tingkat kontrak, anggota DAO dapat memanggil metode add_proposal() dari kontrak sputnikdaov2 untuk mengajukan proposal baru. Saat memanggil, perlu menyediakan detail proposal (ProposalInput), termasuk:
metode add_proposal() akan melakukan verifikasi dan pemrosesan, menghasilkan proposal yang lengkap (Proposal), dan mengikatnya dengan proposal_id yang unik, menambahkannya ke dalam kolam proposal yang dikelola kontrak.
Informasi lengkap atribut proposal mencakup: pengusul, status, waktu dimulainya, status pemungutan suara, dll. Status proposal baru secara default adalah InProgress.
Sputnik-DAO meminta pengusul proposal untuk mengunci sejumlah token NEAR sebagai deposit. Deposit ini akan dikembalikan kepada pengusul proposal saat proposal berakhir dengan normal.
2. Status Proposal
Proposal di Sputnik-DAO mungkin mengalami berbagai status: InProgress, Approved, Rejected, Removed, dll.
Perubahan status proposal didorong oleh metode act_proposal(). Anggota DAO dapat memanggil metode ini untuk melakukan operasi seperti memberikan suara pada proposal.
Pemungutan suara akan dilakukan dengan memanggil policy.proposal_status(). Untuk proposal yang memenuhi ambang batas suara, status akan berubah sesuai.
Proposal dengan status Removed akan langsung dihapus dari kolam proposal, tanpa pengembalian deposit. Proposal dengan status Rejected akan tetap ada di kolam proposal dan deposit akan dikembalikan.
3. Eksekusi Proposal
Jika status proposal adalah Disetujui, sistem akan memanggil internal_execute_proposal() untuk mengeksekusi isi proposal.
Sputnik-DAO mendukung berbagai jenis proposal, kebanyakan melibatkan pembaruan konfigurasi mode tata kelola DAO. Berikut adalah dua jenis proses penanganan proposal yang khas:
( 3.1 Proposal eksekusi fungsi kontrak
Untuk proposal tipe FunctionCall, di dalamnya akan menggunakan bentuk Promise Batch Actions untuk mengeksekusi pemanggilan metode kontrak yang ditentukan dalam proposal.
) 3.2 Proposal transfer dana kontrak
Untuk proposal tipe Transfer, akan memanggil fungsi internal_payout######, untuk melakukan operasi transfer berbagai jenis token ke akun yang ditentukan.
Artikel ini memperkenalkan konsep inti dari kontrak Sputnik DAO—Proposal (, termasuk proses pembuatan, pemungutan suara, dan pelaksanaan proposal. Selanjutnya, akan dijelaskan lebih lanjut tentang implementasi dan konfigurasi model tata kelola di Sputnik-DAO )Policy (.
![])https://img-cdn.gateio.im/webp-social/moments-eb73d5e15f6161f0a4b442cd4b99a91e.webp(