Proposal on-chain
Jenis proposal
Semua jenis proposal yang berbeda tercantum dalam spesifikasi(terbuka di tab baru). Proposal yang berbeda akan memiliki izin, struktur data, serta persyaratan pemungutan suara yang berbeda.
Buat proposal
Dengan asumsi Anda memiliki akun dengan setidaknya 500 token NAM (dalam contoh ini kita akan menggunakan my-new-acc
), mari kita dapatkan alamat yang sesuai
namada wallet address find --alias `my-new-acc`
Sekarang, kita perlu membuat file json proposal.json
yang menyimpan konten proposal kita. Salin teks di bawah ini ke file json.
{
"proposal": {
"content": {
"title": "One Small Step for Namada, One Giant Leap for Memekind",
"authors": "bengt@heliax.dev",
"discussions-to": "forum.namada.net/t/namada-proposal/1",
"created": "2069-04-20T00:04:44Z",
"license": "MIT",
"abstract": "We present a proposal that will send our community to the moon. This proposal outlines all training necessary to accomplish this goal. All memers are welcome to join.",
"motivation": "When you think about it, the moon isn't actually that far away.The moon is only 384,400 km. We have not yet brought Namada to the moon, so it is only natural to use 101 as the prime number for our modular arithmetic operations. 384,400 (mod 101) = 95. 95 km is a distance that can be easily covered by a single person in a single day. Namada was produced by more than 100 people. So 95/100 = 0, rounded to the nearest integer. This means that Namada can reach the moon in no time.",
"details": "Bringing Namada to the moon in no time is easily achievable. We just need to pass this governance proposal and set the plan in action",
"requires": ""
},
"author": "atest1v4ehgw36g9zyydzpgycy23phxuunxdesgc6nydfsxge5x3zzgscny32pxccn2wfjg5urx3fhzxhmch",
"voting_start_epoch": 21,
"voting_end_epoch": 24,
"grace_epoch": 27,
"type": {
"Default": null
}
}
}
Di bidang konten, sebagian besar bidang sudah cukup jelas. Bidang ini requires
mereferensikan id proposal yang harus dilewati sebelum proposal ini dapat dijalankan. Bidang created
harus dalam format YYYY-MM-DDTHH:MM:SSZ
.
Anda harus mengubah nilai:
Author
bidang dengan alamatmy-new-acc
;voting_start_epoch
dengan periode masa depan (harus kelipatan 3) yang Anda inginkan untuk memulai pemungutan suara;voting_end_epoch
dengan epoch lebih besar darivoting_start_epoch
, kelipatan 3, dan tidak ada pemungutan suara lagi yang akan diterima;grace_epoch
dengan epoch lebih besar darivoting_end_epoch
+ 6, di mana proposal tersebut, jika disahkan, akan mulai berlaku.
Bidang data
dan strukturnya tergantung pada jenis proposal yang diajukan. Di bawah ini kami menguraikan struktur kolom "data" untuk setiap jenis proposal. Yang diberikan dalam contoh di atas adalah untuk a Default Proposal
.
Usulan Bawaan
"data" : "<path/to/wasm.wasm>"
Bidang data untuk proposal default bersifat opsional. Hal ini sejalan dengan sifat usulan gagal bayar. Jika proposal memiliki kode yang dilampirkan untuk mengubah parameter tata kelola, maka kode ini akan direpresentasikan sebagai file wasm dan jalur ke file ini akan diberikan di bidang data.
Proposal Jembatan ETH
"data" : "<hex-encoded-bytes-of-what-will-be-signed-by-validators>"
⚠️
Catatan : Pengkodean akan dikirimkan sebagai string
Usulan Pengurus
"data" : [
{
"action" : "add",
"address" : "atestatest1v4ehgw36g4pyg3j9x3qnjd3cxgmyz3fk8qcrys3hxdp5xwfnx3zyxsj9xgunxsfjg5u5xvzyzrrqtn"
}
]
💡 Bidang data untuk proposal pengurus adalah daftar tindakan yang harus diambil. Tindakannya bisa berupa salah satu
add
atauremove
dan alamatnya adalah alamat pengurus yang akan ditambahkan atau dihapus. Dengan cara ini Anda dapat menambah atau menghapus beberapa pengurus dalam satu proposal.
Usulan PGF
"data" :
{
"continuous" : [
{
"target": {
"amount": 420,
"address": "atestatest1v4ehgw36g4pyg3j9x3qnjd3cxgmyz3fk8qcrys3hxdp5xwfnx3zyxsj9xgunxsfjg5u5xvzyzrrqtn"
},
"action" : "add",
},
],
"retro" : [
{
"target": {
"amount": 1337,
"address": "atestatest1v4ehgw36g4pyg3j9x3qnjd3cxgmyz3fk8qcrys3hxdp5xwfnx3zyxsj9xgunxsfjg5u5xvzyzrrqtn"
}
}
]
},
💡 Bidang data untuk proposal PGF berisi tindakan pendanaan PGF yang berkelanjutan dan berlaku surut. Dalam setiap tindakan, pengguna dapat memasukkan beberapa pembayaran dalam bentuk vektor. Dalam setiap pembayaran, kolom target berisi alamat penerima serta jumlah NAM yang akan mereka terima. Untuk pendanaan PGF berkelanjutan, jumlah yang ditentukan akan dikirimkan pada akhir setiap epoch. Terdapat juga pilihan untuk menghapus penerima dari pendanaan berkelanjutan PGF, dengan menentukan pembayaran pendanaan berkelanjutan yang sudah ada, dan kemudian juga menyertakan tindakan “hapus”. Untuk pendanaan PGF yang berlaku surut, jumlah yang ditentukan akan segera dikirimkan.
Mengajukan proposal
Segera setelah proposal.json
file Anda siap, Anda dapat mengirimkan proposal dengan (pastikan berada di direktori yang sama dengan file proposal.json
):
namada client init-proposal --data-path proposal.json
Transaksi seharusnya diterima. Anda dapat menanyakan semua proposal dengan:
namada client query-proposal
atau satu proposal dengan
namada client query-proposal --proposal-id 0
dimana 0
id proposalnya.
Berikan suara pada sebuah proposal
Hanya delegasi dan delegasi yang dapat memberikan suara pada proposal. Dengan asumsi Anda termasuk dalam salah satu kategori ini, Anda dapat mengirimkan suara dengan perintah berikut:
namada client vote-proposal \ --proposal-id 0 \ --vote yay \ --signing-keys <your-alias>
di mana --vote
bisa menjadi salah satu yay
atau nay
.
Periksa hasilnya
Segera setelah buku besar mencapai masa yang ditentukan dalam json sebagai voting_end_epoch
, tidak ada suara lagi yang akan diterima. Kode yang ditentukan di proposal_code
bidang json akan dieksekusi pada awal grace_epoch
zaman. Anda dapat menggunakan perintah berikut untuk memeriksa status proposal:
namada client query-proposal --proposal-id 0
atau untuk sekadar memeriksa hasilnya:
namada client query-proposal-result --proposal-id 0
Last updated