mirror of
https://github.com/darkrenaissance/darkfi.git
synced 2026-01-09 14:48:08 -05:00
dao: all documentation updated
This commit is contained in:
@@ -35,45 +35,46 @@ testnet user guide.
|
||||
Note: List is not exhaustive. Missing functionalities that are not part
|
||||
of the guide can be added for future regressions.
|
||||
|
||||
| # | Description | Command | Status |
|
||||
|----|---------------------------|----------------------------------------------------------|--------------------|
|
||||
| 0 | Initialization | wallet --initialize | Pass |
|
||||
| 1 | Key generation | wallet --keygen | Pass |
|
||||
| 2 | Set default wallet | wallet --default-address {ADDR_ID} | Pass |
|
||||
| 3 | Default address retrieval | wallet --address | Pass |
|
||||
| 4 | Block scanning | scan | Pass |
|
||||
| 5 | Block subscribing | subscribe | Pass |
|
||||
| 6 | Balance retrieval | wallet --balance | Pass |
|
||||
| 7 | Aliases retrieval | alias show | Pass |
|
||||
| 8 | Mint auth generation | token generate-mint | Pass |
|
||||
| 9 | Mint auths retrieval | token list | Pass |
|
||||
| 10 | Alias add | alias add {ALIAS} {TOKEN} | Pass |
|
||||
| 11 | Aliases retrieval | alias show | Pass |
|
||||
| 12 | Mint generation | token mint {ALIAS} {AMOUNT} {ADDR} | Pass |
|
||||
| 13 | Token freeze | token freeze {ALIAS} | Pass |
|
||||
| 14 | Transfer | transfer {AMOUNT} {ALIAS} {ADDR} | Pass |
|
||||
| 15 | Coins retrieval | wallet --coins | Pass |
|
||||
| 16 | OTC initialization | otc init -v {AMOUNT}:{AMOUNT} -t {ALIAS}:{ALIAS} | Pass |
|
||||
| 17 | OTC join | otc join | Pass |
|
||||
| 18 | OTC sign | otc sign | Pass |
|
||||
| 19 | DAO create | dao create {LIMIT} {QUORUM} {RATIO} {TOKEN} | Pass |
|
||||
| 20 | DAO view | dao view | Pass |
|
||||
| 21 | DAO import | dao import | Pass |
|
||||
| 22 | DAO list | dao list | Pass |
|
||||
| 23 | DAO mint | dao mint {DAO} | Pass |
|
||||
| 24 | DAO balance | dao balance {DAO} | Pass |
|
||||
| 25 | DAO proposals retrieval | dao proposals {DAO} | Pass |
|
||||
| 26 | DAO propose a transfer | dao propose-transfer {DAO} {DUR} {AMOUNT} {TOKEN} {ADDR} | Pass |
|
||||
| 27 | DAO proposals retrieval | dao proposals {DAO} | Pass |
|
||||
| 28 | DAO proposal retrieval | dao proposal {PROPOSAL_BULLA} | Pass |
|
||||
| 29 | DAO proposal export | dao proposal {PROPOSAL_BULLA} --export | Pass |
|
||||
| 30 | DAO proposal import | dao proposal-import | Pass |
|
||||
| 31 | DAO proposal mint | dao proposal {PROPOSAL_BULLA} --mint-proposal | Pass |
|
||||
| 32 | DAO vote | dao vote {PROPOSAL_BULLA} {VOTE} {WEIGHT} | Pass |
|
||||
| 33 | DAO proposal execution | dao exec {PROPOSAL_BULLA} | Pass |
|
||||
| 34 | Coins unspend | unspend {COIN} | Pass |
|
||||
| 35 | Transaction inspect | inspect | Pass |
|
||||
| 36 | Transaction simulate | explorer simulate-tx | Pass |
|
||||
| 37 | Transaction broadcast | broadcast | Pass |
|
||||
| 38 | Transaction attach fee | attach-fee | Pass |
|
||||
|
||||
| # | Description | Command | Status |
|
||||
|----|------------------------------|-----------------------------------------------------------------|--------|
|
||||
| 0 | Initialization | wallet --initialize | Pass |
|
||||
| 1 | Key generation | wallet --keygen | Pass |
|
||||
| 2 | Set default wallet | wallet --default-address {ADDR_ID} | Pass |
|
||||
| 3 | Default address retrieval | wallet --address | Pass |
|
||||
| 4 | Block scanning | scan | Pass |
|
||||
| 5 | Block subscribing | subscribe | Pass |
|
||||
| 6 | Balance retrieval | wallet --balance | Pass |
|
||||
| 7 | Aliases retrieval | alias show | Pass |
|
||||
| 8 | Mint auth generation | token generate-mint | Pass |
|
||||
| 9 | Mint auths retrieval | token list | Pass |
|
||||
| 10 | Alias add | alias add {ALIAS} {TOKEN} | Pass |
|
||||
| 11 | Aliases retrieval | alias show | Pass |
|
||||
| 12 | Mint generation | token mint {ALIAS} {AMOUNT} {ADDR} | Pass |
|
||||
| 13 | Token freeze | token freeze {ALIAS} | Pass |
|
||||
| 14 | Transfer | transfer {AMOUNT} {ALIAS} {ADDR} | Pass |
|
||||
| 15 | Coins retrieval | wallet --coins | Pass |
|
||||
| 16 | OTC initialization | otc init -v {AMOUNT}:{AMOUNT} -t {ALIAS}:{ALIAS} | Pass |
|
||||
| 17 | OTC join | otc join | Pass |
|
||||
| 18 | OTC sign | otc sign | Pass |
|
||||
| 19 | DAO create | dao create {LIMIT} {QUORUM} {EARLY_EXEC_QUORUM} {RATIO} {TOKEN} | Pass |
|
||||
| 20 | DAO view | dao view | Pass |
|
||||
| 21 | DAO import | dao import | Pass |
|
||||
| 22 | DAO update keys | dao update-keys | Pass |
|
||||
| 23 | DAO list | dao list | Pass |
|
||||
| 24 | DAO mint | dao mint {DAO} | Pass |
|
||||
| 25 | DAO balance | dao balance {DAO} | Pass |
|
||||
| 26 | DAO proposals retrieval | dao proposals {DAO} | Pass |
|
||||
| 27 | DAO propose a transfer | dao propose-transfer {DAO} {DUR} {AMOUNT} {TOKEN} {ADDR} | Pass |
|
||||
| 28 | DAO propose generic | dao propose-generic {DAO} {DUR} {AMOUNT} {TOKEN} {ADDR} | Pass |
|
||||
| 29 | DAO proposal retrieval | dao proposal {PROPOSAL_BULLA} | Pass |
|
||||
| 30 | DAO proposal export | dao proposal {PROPOSAL_BULLA} --export | Pass |
|
||||
| 31 | DAO proposal import | dao proposal-import | Pass |
|
||||
| 32 | DAO proposal mint | dao proposal {PROPOSAL_BULLA} --mint-proposal | Pass |
|
||||
| 33 | DAO vote | dao vote {PROPOSAL_BULLA} {VOTE} {WEIGHT} | Pass |
|
||||
| 34 | DAO proposal execution | dao exec {PROPOSAL_BULLA} | Pass |
|
||||
| 35 | DAO proposal early execution | dao exec --early {PROPOSAL_BULLA} | Pass |
|
||||
| 36 | Coins unspend | unspend {COIN} | Pass |
|
||||
| 37 | Transaction inspect | inspect | Pass |
|
||||
| 38 | Transaction simulate | explorer simulate-tx | Pass |
|
||||
| 39 | Transaction broadcast | broadcast | Pass |
|
||||
| 40 | Transaction attach fee | attach-fee | Pass |
|
||||
|
||||
@@ -5,12 +5,14 @@ set -x
|
||||
# Path to `drk` binary
|
||||
DRK="../../../drk -c drk.toml"
|
||||
|
||||
# First run the consensus node and the faucet:
|
||||
# First run the darkfid node and the miner:
|
||||
#
|
||||
# ./clean.sh
|
||||
# ./init-wallet.sh
|
||||
# ./tmux_sessions.sh -vv
|
||||
#
|
||||
# In another term run the wallet syncing:
|
||||
# In another term run the wallet syncing,
|
||||
# and wait until some blocks are mined:
|
||||
#
|
||||
# ./sync-wallet.sh
|
||||
#
|
||||
@@ -61,8 +63,8 @@ wait_tokens() {
|
||||
}
|
||||
|
||||
mint_dao() {
|
||||
$DRK dao create 20 10 0.67 MLDY > /tmp/dao.dat
|
||||
$DRK dao import MiladyMakerDAO < /tmp/dao.dat
|
||||
$DRK dao create 20 10 10 0.67 MLDY > /tmp/dao.toml
|
||||
$DRK dao import MiladyMakerDAO < /tmp/dao.toml
|
||||
$DRK dao list
|
||||
$DRK dao list MiladyMakerDAO
|
||||
|
||||
@@ -70,19 +72,20 @@ mint_dao() {
|
||||
}
|
||||
|
||||
wait_dao_mint() {
|
||||
while [ "$($DRK dao list MiladyMakerDAO | grep '^Tx hash: ' | awk '{print $3}')" = None ]; do
|
||||
while [ "$($DRK dao list MiladyMakerDAO | grep '^Transaction hash: ' | awk '{print $3}')" = None ]; do
|
||||
sleep 1
|
||||
done
|
||||
}
|
||||
|
||||
fill_treasury() {
|
||||
PUBKEY="$($DRK dao list 1 | grep '^Public key: ' | cut -d ' ' -f3)"
|
||||
BULLA="$($DRK dao list 1 | grep '^Bulla: ' | cut -d' ' -f2)"
|
||||
$DRK transfer 20 WCKD "$PUBKEY" --dao "$BULLA" | tee /tmp/xfer.tx | $DRK broadcast
|
||||
PUBKEY="$($DRK dao list MiladyMakerDAO | grep '^Notes Public key: ' | cut -d ' ' -f4)"
|
||||
SPEND_HOOK="$($DRK dao spend-hook)"
|
||||
BULLA="$($DRK dao list MiladyMakerDAO | grep '^Bulla: ' | cut -d' ' -f2)"
|
||||
$DRK transfer 20 WCKD "$PUBKEY" "$SPEND_HOOK" "$BULLA" | tee /tmp/xfer.tx | $DRK broadcast
|
||||
}
|
||||
|
||||
dao_balance() {
|
||||
BALANCE=$($DRK dao balance 1 2>/dev/null)
|
||||
BALANCE=$($DRK dao balance MiladyMakerDAO 2>/dev/null)
|
||||
# No tokens received at all yet
|
||||
if echo "$BALANCE" | grep -q "No unspent balances found"; then
|
||||
echo 0
|
||||
@@ -108,51 +111,44 @@ wait_dao_treasury() {
|
||||
|
||||
propose() {
|
||||
MY_ADDR=$($DRK wallet --address)
|
||||
$DRK dao balance MiladyMakerDAO
|
||||
$DRK dao propose MiladyMakerDAO "$MY_ADDR" 0.1 WCKD > /tmp/propose.tx
|
||||
PROPOSAL="$($DRK dao propose-transfer MiladyMakerDAO 1 5 WCKD "$MY_ADDR" | cut -d' ' -f3)"
|
||||
$DRK dao proposal "$PROPOSAL" --mint-proposal > /tmp/propose.tx
|
||||
$DRK broadcast < /tmp/propose.tx
|
||||
}
|
||||
|
||||
proposal_status() {
|
||||
PROPOSALS_LEN=$($DRK dao proposals MiladyMakerDAO | wc -l)
|
||||
if [ "$PROPOSALS_LEN" = 0 ]; then
|
||||
echo 0
|
||||
else
|
||||
echo 1
|
||||
fi
|
||||
}
|
||||
|
||||
wait_proposal() {
|
||||
while [ "$(proposal_status)" = 0 ]; do
|
||||
PROPOSAL="$($DRK dao proposals MiladyMakerDAO | cut -d' ' -f2)"
|
||||
while [ "$($DRK dao proposal $PROPOSAL | grep '^Proposal transaction hash: ' | awk '{print $4}')" = None ]; do
|
||||
sleep 1
|
||||
done
|
||||
}
|
||||
|
||||
vote() {
|
||||
PROPOSAL_ID=1
|
||||
$DRK dao vote MiladyMakerDAO "$PROPOSAL_ID" 1 20 > /tmp/dao-vote.tx
|
||||
PROPOSAL="$($DRK dao proposals MiladyMakerDAO | cut -d' ' -f2)"
|
||||
$DRK dao vote "$PROPOSAL" 1 > /tmp/dao-vote.tx
|
||||
$DRK broadcast < /tmp/dao-vote.tx
|
||||
}
|
||||
|
||||
vote_status() {
|
||||
PROPOSAL_ID=1
|
||||
$DRK dao proposal MiladyMakerDAO "$PROPOSAL_ID" | grep -q yes
|
||||
echo $?
|
||||
}
|
||||
|
||||
wait_vote() {
|
||||
while [ "$(vote_status)" != 0 ]; do
|
||||
PROPOSAL="$($DRK dao proposals MiladyMakerDAO | cut -d' ' -f2)"
|
||||
while [ "$($DRK dao proposal $PROPOSAL | grep '^Current proposal outcome: ' | awk '{print $4}')" != "Approved" ]; do
|
||||
sleep 1
|
||||
done
|
||||
}
|
||||
|
||||
do_exec() {
|
||||
PROPOSAL_ID=1
|
||||
$DRK dao exec MiladyMakerDAO "$PROPOSAL_ID" > /tmp/dao-exec.tx
|
||||
PROPOSAL="$($DRK dao proposals MiladyMakerDAO | cut -d' ' -f2)"
|
||||
$DRK dao exec --early $PROPOSAL > /tmp/dao-exec.tx
|
||||
$DRK broadcast < /tmp/dao-exec.tx
|
||||
}
|
||||
|
||||
$DRK wallet --keygen
|
||||
wait_exec() {
|
||||
PROPOSAL="$($DRK dao proposals MiladyMakerDAO | cut -d' ' -f2)"
|
||||
while [ "$($DRK dao proposal $PROPOSAL | grep '^Proposal was executed on transaction: ' | awk '{print $6}')" = None ]; do
|
||||
sleep 1
|
||||
done
|
||||
}
|
||||
|
||||
mint_tokens
|
||||
wait_tokens
|
||||
mint_dao
|
||||
@@ -164,3 +160,4 @@ wait_proposal
|
||||
vote
|
||||
wait_vote
|
||||
do_exec
|
||||
wait_exec
|
||||
|
||||
@@ -3,7 +3,7 @@ set -e
|
||||
set -x
|
||||
|
||||
# Path to `drk` binary
|
||||
DRK="../../../drk -vv -c drk.toml"
|
||||
DRK="../../../drk -c drk.toml"
|
||||
|
||||
while true; do
|
||||
if $DRK ping 2> /dev/null; then
|
||||
|
||||
Reference in New Issue
Block a user