Skip to content

Runbook: RUN Protocol Preview

Dan Connolly edited this page Apr 24, 2022 · 25 revisions

context: #5062 Install RUN Protocol Preview release in devnet

Train voters; develop support for the proposal

Store contracts on chain; generate proposal to start them

install agoric-sdk

what version, exactly?

currently:

git clone ...
yarn
yarn build

start local solo

cd packages/solo

# NETCONFIG_URL=https://stage.agoric.net/network-config # for practice
NETCONFIG_URL=https://devnet.agoric.net/network-config

export AG_SOLO_BASEDIR=/tmp/stage20  # directory of your choosing

./bin/ag-solo setup --netconfig=${NETCONFIG_URL}

Verify that your ag-solo is up and that you can run E(home.myAddressNameAdmin).getMyAddress().

Get funds

For local testing, the Makefile in packages/cosmic-swingset provides enough funds.

Use !faucet client ... as usual to provision your account and get some RUN. Also use !faucet delegate ... to get at least 1 BLD. In stage, add the stage arg as in: !faucet stage client ADDR.

The usual 100 RUN is not enough. Use agd tx bank send ... from an infrastructure account to send yourself at least 20K RUN.

Deploy the contracts

This takes several minutes and costs around 20K RUN.

cd ../../packages/run-protocol
yarn build  # not necessary, by design, but a worthwhile double-check
yarn deploy:contracts
# ...
# adding @agoric/vats-v0.8.0-n176/src/mintHolder.js 937 ...
# waiting for 67 (~193096B) final additions...
# installing...
# { initial: 0, added: 10, total: 10 }
# { boardId: 'board04719' }
# Done in 602.11s.

# Run again to see that the output is stable.
# It should only take a few seconds this time.
yarn deploy:contracts
# { boardId: 'board04719' }

Save the resulting boardId:

export INSTALL_CACHE=board04719

Get Anchor IBC denom

For example:

% agd query bank balances agoric1yumvyl7f5nkalss7w59gs6n3jtqv5gmarudx55 --node http://35.184.159.154:26657 
balances:
- amount: "10000"
  denom: ibc/949E954E05CE9E63E072ABD13A7DAAAB338A1E57FFBC148C50D74451AB5067D1
pagination:
  next_key: null
  total: "0"

Build executable proposal

The first part takes a couple minutes:

yarn build:eval:main
...
creating gov-amm-vaults-etc-permit.json
creating gov-amm-vaults-etc.js
You can now run a governance submission command like:
  agd tx gov submit-proposal swingset-core-eval gov-amm-vaults-etc-permit.json gov-amm-vaults-etc.js ...

{ initial: 10, total: 10 }
Done in 133.90s.

Then, using the INSTALL_CACHE boardId and IBC denom above:

yarn build:eval-permit:psm
...
Done in 0.28s.

export ANCHOR_DENOM=ibc/949E954E05CE9E63E072ABD13A7DAAAB338A1E57FFBC148C50D74451AB5067D1

yarn build:eval-code:psm
...
Done in 0.30s.

Send the governance proposal to the blockchain

Check NETWORK_CONFIG and such in the Makefile.

make submit-proposal

check progress

As often as you like:

make gov-q

Vote on our validators

It may be necessary to become a whale if we don't get sufficient community partipation.

voting in devnet

TODO

Voting in stage

For example (presuming you have the Makefile stuff and relevant access):

CHAIN_ID=agoricstage-22 PROPOSAL_NUM=1 make vote

For voting 1 user: gov-cosmos-vote.sh

Test the results

You should see an AUSD wallet in the purse; this is needed by PSM.

in the REPL, check E(E(home.agoricNames).lookup('instance')).entries() and look for...

  • details TBD.

21 Apr attempt showed instances; yay!

image

Clone this wiki locally