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.jsonyang 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 requiresmereferensikan id proposal yang harus dilewati sebelum proposal ini dapat dijalankan. Bidang createdharus dalam format YYYY-MM-DDTHH:MM:SSZ.

Anda harus mengubah nilai:

  • Authorbidang dengan alamat my-new-acc;

  • voting_start_epochdengan periode masa depan (harus kelipatan 3) yang Anda inginkan untuk memulai pemungutan suara;

  • voting_end_epochdengan epoch lebih besar dari voting_start_epoch, kelipatan 3, dan tidak ada pemungutan suara lagi yang akan diterima;

  • grace_epochdengan epoch lebih besar dari voting_end_epoch+ 6, di mana proposal tersebut, jika disahkan, akan mulai berlaku.

Bidang datadan 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 addatau removedan 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.jsonfile 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 0id 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 --votebisa menjadi salah satu yayatau 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_codebidang json akan dieksekusi pada awal grace_epochzaman. 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