Release 2.10 Release Script

Overview

This document covers the upgrade to the FIO Protocol release of Fio.Contracts 2.10.

Guidance

For this release, the mSigs must be executed in the order below.

FIPS & Rollout Guides

https://github.com/fioprotocol/fips

Add new actions

./clio -u http://localhost:8889 push action eosio addaction '{"action":"ovrwrtgenlck","contract":"eosio","actor":"eosio"}' --permission eosio

./clio -u http://localhost:8889 push action eosio addaction '{"action":"auditvote","contract":"eosio","actor":"eosio"}' --permission eosio

./clio -u http://localhost:8889 push action eosio addaction '{"action":"resetaudit","contract":"eosio","actor":"eosio"}' --permission eosio

Create new fees

Note: set at $0.25 (currently trading at 0.04446) → 5600000000

./clio -u http://localhost:8889 push action fio.fee createfee '{"end_point":"audit_vote","type":0,"suf_amount":5600000000}' --permission fio.fee@active

Deploy system contracts

General order of execution; fio.system, fio.perms, fio.address, fio.fee, fio.reqobt, fio.tpid, fio.treasury, fio.escrow, fio.oracle, fio.staking, fio.token, eosio.msig, eosio.wrap

Specific order of execution: fio.system, fio.perms, fio.address, fio.fee, fio.reqobt, fio.treasury, fio.escrow, fio.oracle, fio.staking, fio.token

Deploy EOSIO system contract

./clio -u http://localhost:8889 set contract -j eosio /opt/FIO/bin/Contracts/last/fio.system fio.system.wasm fio.system.abi -p eosio@active

Set all other contracts

  1. ./clio -u http://localhost:8889 set contract -j fio.perms /opt/FIO/bin/Contracts/last/fio.perms fio.perms.wasm fio.perms.abi -p fio.perms@active

  2. ./clio -u http://localhost:8889 set contract -j fio.address /opt/FIO/bin/Contracts/last/fio.address fio.address .wasm fio.address .abi -p fio.address @active

  3. ./clio -u http://localhost:8889 set contract -j fio.fee /opt/FIO/bin/Contracts/last/fio.fee fio.fee.wasm fio.fee.abi -p fio.fee@active

  4. ./clio -u http://localhost:8889 set contract -j fio.escrow /opt/FIO/bin/Contracts/last/fio.escrow fio.escrow.wasm fio.escrow.abi -p fio.escrow@active

  5. ./clio -u http://localhost:8889 set contract -j fio.oracle /opt/FIO/bin/Contracts/last/fio.oracle fio.oracle.wasm fio.oracle.abi -p fio.oracle@active

  6. ./clio -u http://localhost:8889 set contract -j fio.reqobt /opt/FIO/bin/Contracts/last/fio.request.obt fio.request.obt.wasm fio.request.obt.abi -p fio.reqobt@active

  7. ./clio -u http://localhost:8889 set contract -j fio.staking /opt/FIO/bin/Contracts/last/fio.staking fio.staking.wasm fio.staking.abi -p fio.staking@active

  8. ./clio -u http://localhost:8889 set contract -j fio.token /opt/FIO/bin/Contracts/last/fio.token fio.token.wasm fio.token.abi -p fio.token@active

  9. ./clio -u http://localhost:8889 set contract -j fio.treasury /opt/FIO/bin/Contracts/last/fio.treasury fio.treasury.wasm fio.treasury.abi -p fio.treasury@active

 

Validation: See Validation Notes above for contract validation

Miscellaneous

Examples

Fee: Testnet example: https://fio-test.bloks.io/msig/gws1hlwlqhq1/fiocreatefee

New Account: Testnet example: https://fio-test.bloks.io/msig/bsbdk2lectan/crtfioescrow2

Privileges: Testnet example: https://fio-test.bloks.io/msig/un3emex141fp/setpriv.a

Contract Update: Testnet example: https://fio-test.bloks.io/msig/bsbdk2lectan/updfiosys

Set contract on Account: Testnet example: https://fio-test.bloks.io/msig/bsbdk2lectan/crtfioesc

Marketplace Account: Testnet example: https://fio-test.bloks.io/msig/bsbdk2lectan/setmrkplcfg

 

Items of Interest:

TestNet mSig Proposals:

  • Capture from Telegram TestNet channel

Execution Notes:

  • BP may execute msig via links above

Validation Notes:

  • For addaction and createfee actions, view transaction (after execution)

    • View transaction details, click ‘Block Number’, then confirm that next block is produced by clicking ‘Next’

  • For contract deployment (set contract) validation, run fio.devtools “Contract Hashes” query to confirm ABI and contract hashes match.

  • Use Aloha EOS TestNet Producer Reliability Tracker to verify that no blocks are missed. Note, missed rounds will result in a post to the Telegram TestNet channel.

  • Use FioWatch tool to check transaction