保羅.真

曾經是地盤佬,之後從事 IT 行業十多二十年,likecoin validator,基督徒,試過StartUp創業,喜歡認識新朋友,愛新科技及學習新技術,熱愛攝影、行山Outing,支持人權及民主自由。香港加油!

分享在 LikeCoin 中怎樣提交議案

提交議案的程序不算太繁複, 了解後大家也可去做了...

BusinessAsMission 作為驗證人有差不多一個月時間了,常常也想著如何貢獻社群。由於驗證人均可以提交議案,所以我們今次借此機會學習提交議案,及把經驗與大家分享。


我不打算在此講解為何需要提交議案,為何要投票,這是 DAO ( decentralized autonomous/democratic organization, 分散式自治機構 ) 的特點,就是任何持有 LikeCoin 的人都是持份者,每個持份者都能參與讚賞公民共和國的治理。

詳情可以參考:(https://docs.like.co/v/zh/guides/governance/liquid-democracy

怎樣投票(https://docs.like.co/v/zh/guides/governance/direct-vote)


為何我會提交議案?

事原我在2022年1月的社群治理會議 (可參考:https://docs.like.co/v/zh/guides/governance/community-call) 中得知道Proposal 25 的議案需要修改部份內容,所以需要發出一個新的議案讓所有LikeCoin 的持份者表決接受修改的內容,通過後才能執行議案。

在會議中我們可以實時討論,像這次我想參與某些項目或提出問題,很多資深的驗證人或 LikeCoin 持份者也十分樂意幫助。

就這樣我就去參與第一次的議案提交



有什麼類型的 proposal?

首先要知道有什麼proposal 種類, 所以先找一些參考,在discord 社群中人求問是最直接的方法。

我得到以下的資料:https://t.me/decentralizehk/19888

(LikeCoin/Cosmos)的 proposals 有幾種:

1. parameter change proposal: 修改某項參數,比如鑄幣頻率、投票期、抵押所需等,議案一旦通過,代碼自動在下一個區塊執行,不經人手。議案 #2、3、5、7、8、18 等很多都是這種

2. community-pool-spend proposal: 議案指定了花某一數額的公帑作某用途,發到指定錢包(有時是 multisig),也是議案通過,下一區塊自動執行。事實上,community pool 沒有人有 key,唯一的使用方法就是透過提交議案,說服社群通過。最近的議案 #25、26、27、28 都是這種。

3. upgrade proposal: 議案指定某特定時間更新到某特定版本,也是自動執行,各驗證人自行手動更新節點。因為議案通過才會更新,是社群共識,因此不會產生 hardfork。LikeCoin 暫時沒有先例

4. signalling proposal: 社群共識一個意願,比如參與 ATOM hackathon、成立 Creators Fund Committee 並指定成員等等,如議案 19、20。這是唯一一類牽涉人手跟進的議案,一般就會在議案裡面共識執行者。

再以一個議案 #28 為例,是「decentralized procurement」,提案動用 community pool 裡面的 4500 鎂等值 LIKE 去招聘一家推廣公司負責維護 @likecoin Twitter 帳號,而該公司的人正在 Discord 回應社群的提問,比如是否打算投放廣告( https://discord.com/channels/763001015712350231/796036074396844052/923424673050542100 )。比如你是個 coder,也可以自己提案,讓社群撥款給你,寫一個 LikeCoin 的功能和應用。

整體來說,任何人都可以提案,任何人都可以是執行者,不需得到任何人批准,但需要爭取整個社群支持提案,這就是 LikeCoin 的無大台,跟開源軟件類似,但再加上整個治理的機制,所有議案寫在鏈上,能自動執行的都自動執行。


之前的議案可以在這裡找到 (https://likecoin.bigdipper.live/proposals

由於今次是去修改proposal 25 的內容,而不是提出一個新的airdrop 議案,所以用signalling proposal 去提出修改的動議。



實際是要怎樣做?

好了,現在好像知道要做什麼了,那就預備一下要怎樣做:(我先列出我所要做的,下面再詳留講解我的做法)

1.   嘗試在 testnet 上提交一個議案
a.   我有一個 testing node 是用 testnet 的,之前做驗證人前用來做測試用的  (這是我的選擇,其實可以在任何能行 liked command 的地方也可執行,只要其它的 parameters 填對就是了)
b.   了解要行什麼 commands 來 raise proposal
c.   預備好議案的內容 (把詳細的議案內容放到 IPFS 或 ISCN, 再把link放入 JSON file )
d.   去領取一點 ekil (testnet 用的 like)
e.   提交議案到 testnet 並檢查一下 (https://testnet.likecoin.bigdipper.live/proposals)
2.   到 Discord 裡的 proposal-discussions 與大家討論一下
3.   到 mainnet 去提交議案


詳細的解說:

1.    先要在Testnet 裡 raise a proposal 好讓大家去討論

a.   我在我的 Testing node 上開始預備 proposal 內容 (怎樣setup a node: https://docs.like.co/validator/likecoin-chain-node/setup-a-node

通常做 validator 前也會setup 一個 testing node 在 testnet 作測試。

注意事項:

要用 LIKECOIN_CHAIN_ID="likecoin-public-testnet-3"

Testnet 會用 nanoekil,而不是 nanolike


b.   我在discord 找到 @nnkken 曾經分享過怎 raise a text proposal.

但由於我要先 submit 在 testnet 作測試, 所以我更改了一部份,更改為

docker-compose run --rm liked-command \
tx gov submit-proposal \
     --proposal=/host/text-proposal.json \
     --from validator \
     --node
https://node.testnet.like.co:443/rpc/ \
     --chain-id likecoin-public-testnet-3


解說:

--proposal 的 content 會用 json file 注入

--以 validator 身份來提議案

--node: 就是用那個 rpc server 的 endpoint (要有 port number), 所以現在要用 testnet 的rpc endpoint (請參考:https://github.com/likecoin/testnets/tree/master/likecoin-public-testnet-3 )

--chain-id, 當然也是用 testnet 的 chain-id (請參考:https://github.com/likecoin/testnets/tree/master/likecoin-public-testnet-3)

注意,如要raise 另一種類的 proposal, 如 community-pool-spend, param-change, software-upgrade, 就要用該 command,如:

docker-compose run --rm liked-command \
tx gov submit-proposal param-change some-proposal.json \
     --from private-key \
     --node
https://node.testnet.like.co:443/rpc/ \
     --chain-id likecoin-public-testnet-3


c. 先把詳細的議案內容放到 IPFS 或 ISCN。我支持likecoin, 當然是用 ISCN 註冊。

我的做法是把議案先轉為 PDF, 再到 https://app.like.co/ 去把 PDF 註冊. 詳細教程請看(https://docs.like.co/general-guides/decentralized-publishing/app.like.co)

完成後我會得到下面的資料,如ISCN ID, Content Fingerprints, ifps link... 等

議案內容要放在 text-proposal.json 裡,例子如下。而text-proposal.json 要放在 docker-compose.yaml 同一層


如我想要把下面的文字放入 JSON 內的 dsecription

This is a Test!
To rectify Proposal 25
Full Text:
ipfs://QmeJCtRT78G2cWEyTP2Ufj73sobYvaPjacDtkbFn8ymTeh
or
https://3oinsmptugqipuluhj4iv6txqxep7za3ngnbrpauf55uquiikova.arweave.net/25DZMfOhoIfRdDp4ivp3hcj_5Btpmhi8FC97SFEIU6o”


注意,這是json file, description 內的隔行要用\n 來分隔. 這是Text Proposal 所以 type 是 Text. Deposit 裡用的是用 nanoekil. (1 ekil = 1000000000nanoekil)

{
    "title": "[Rectify Proposal 25]XXXX",
    "description" : "This is a Test!\nTo rectify Proposal 25\nFull Text:\nipfs://QmeJCtRT78G2cWEyTP2Ufj73sobYvaPjacDtkbFn8ymTeh\nor\n
https://3oinsmptugqipuluhj4iv6txqxep7za3ngnbrpauf55uquiikova.arweave.net/25DZMfOhoIfRdDp4ivp3hcj_5Btpmhi8FC97SFEIU6o",
     "type": "Text",
     "deposit": "1000000000nanoekil"
}




d. 由於要用 ekil (mainnet 是用likecoin 的,testnet 就是用ekil), 可到這裡 (https://likecoin-public-testnet-faucet.nnkken.dev/ )去取, 每次可取 100,000ekil.

取了後可到 https://testnet.likecoin.bigdipper.live/ 根據 height 去檢查一下 Transaction


e.   預備好了,我就在我的 testing node 上執行這 command. 成功後,可在https://testnet.likecoin.bigdipper.live/proposals/24 查看一下。



2.    當提交了議案在 testnet, 可以讓社群知道並作出討論,看看有沒有其它地方需要更正或補充

收集好所有 comments 以作出最後修改後,就可以準備在 mainnet 提交議案了




3.    在mainnet 上提交議案其實和在 testnet 差不多,主要是要更改回 mainnet 的 parameters (可參考:https://github.com/likecoin/mainnet),並在我 BAM 的 node 上執行,當然也要預備一些likecoin.

Command 現改為:

docker-compose run --rm liked-command \
tx gov submit-proposal \
     --proposal=/host/text-proposal.json \
     --from validator \
     --node https://mainnet-node.like.co:443/rpc/ \
     --chain-id likecoin-mainnet-2

  Text-proposal.json (現在要用 nanolike)

{
     "title": Real Title",
     "description" : "Real Content XXX)",
     "type": "Text",
     "deposit": "1000000000nanolike"
}


提交後就直接進入 deposit 及 vote 的程序了. 議案可在這裡看 (https://likecoin.bigdipper.live/proposals/30


今次提交議案的程序不算太繁複,但對新手來說有點不知從何問起的困難,幸好在社群中大家都會幫助解難,希望之後可有更多的驗證人及 likecoin 持份者都可參與及嘗試不同的工作,讓 likecoin 社群更成熟及壯大。



LikeCoin驗證人:BusinessAsMiossion
我們(YK @保羅.真 )是一個關心香港的團隊。我們會以「授人以漁」原則,為這城市創造有價值的項目,讓更多人可以分享到區塊鏈和密碼貨幣帶來的好處。

怎樣把你的LikeCoin委託給我們,請你照以下步驟:
在Liker Land app(如沒有請下載Liker Land App) 的「我的錢包」中的按「委託」後點選「所有驗證人」,找到「BusinessAsMission」,按下「委託」,輸入你想委託的數額即可。謝謝您的支持!


Like my work??
Don't forget to support or like, so I know you are with me..

CC BY-NC-ND 2.0
3

Want to read more ?

Login with one click and join the most diverse creator community.