Guidance
To alert the reader of anything of note before proceeding; Include descriptive text on execution order, things of note.
Overview
This document covers the upgrade to the FIO Protocol release of Fio 3.5 (core) and Fio.Contracts 2.9.
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
Rollout Guides
FIP-36 Deployment and rollout guide : FIO Fio (Core) Update (getteraccount public key)
FIP-37 Deployment and rollout guide : FIO Fio Contracts Update : Contracts: fio.system(pub key limit)
FIP-38 Deployment and rollout guide : FIOFio/FIO.Fio Contracts Update : fio.system, fio.token. Actions: newfioacc, Fees: new_fio_chain_account(new chain account, fee)
FIP-39 Deployment and rollout guide : FIO.Contracts: fio.address, Actions: updcryptkey, FeesFio Contracts Update (encryption pub key)
[FIP-40] Deployment and rollout guide : Fio/Fio Contracts (private domain address reg)
[FIP-42] Deployment and rollout guide : FIOFio/FIO.Fio Contracts Update: fio.address, Actions: regdomadd
[FIP-43] Deployment and rollout guide : FIO Fio Update
[FIP-46] Deployment and rollout guide : FIO Fio Update (new timeout for table lookups)
[FIP-47] Deployment and rollout guide : FIO Fio Contracts Update: fio.system, Actions: regproducer
...
Validation (Postman): Verify new actions exist using https://fiotestnet.greymass.com/v1/chain/get_actions
Testnet example: https://fio-test.bloks.io/msig/gws1hlwlqhq1/fioaddaction
...
[Example] ./clio.sh push action fio.fee createfee '{"end_point":"list_domain","type":"0","suf_amount":"304804402"}' -p fio.fee
Validation:
Postman
https://fiotestnet.greymass.com/v1/chain/get_fee, {“end_point”:”wrap_fio_domain”}
https://fiotestnet.greymass.com/v1/chain/get_table_rows
BlockPane Dev Tools
Point to TestNet and set contract=fio.fee and table=fio.fee
Testnet example: https://fio-test.bloks.io/msig/gws1hlwlqhq1/fiocreatefee
Create account and set permissions (Part 1)
(Part 1 must be done before Part 2 msigs can be created)
First, create a file called “payload.json” with the following permissions:
...
[Example] ./clio.sh push action -j -s -d eosio newaccount newaccount_payload.json -p eosio@active
Validation:
View account Insert Account Creation mSig here and compare to FIO System account (specifically permissions)
System account may be retrieved via Postman at https://fiotestnet.greymass.com/v1/chain/get_account
Testnet example: https://fio-test.bloks.io/msig/bsbdk2lectan/crtfioescrow2
...
[Example] ./clio.sh eosio setpriv '["fio.escrow",1]' -p eosio@active
Validation:
Postman
https://fiotestnet.greymass.com/v1/chain/get_account
account = fio.oracle
Expected Result: "privileged": true
...
[Example] ./clio.sh push action eosio setnolimits '{"account":"fio.escrow"}' --permission eosio@active
Validation:
Postman
https://fiotestnet.greymass.com/v1/chain/get_account
account = fio.oracle
Expected Result: "ram_quota": -1
Testnet example: https://fio-test.bloks.io/msig/un3emex141fp/setpriv.a
...
Validation: See Validation Notes for contract validation
Testnet example: https://fio-test.bloks.io/msig/bsbdk2lectan/updfiosys
...
Validation: See Validation Notes above for contract validation
Testnet example: https://fio-test.bloks.io/msig/bsbdk2lectan/crtfioesc
...
TESTNET: ./clio.sh push action fio.escrow setmrkplcfg '{"actor":"p325sqluvj4u", "listing_fee": "5000000000", "commission_fee": 3, "max_fee": "1000000000", "e_break": 0}' -p eosio@active
MAINNET: ./clio.sh push action fio.escrow setmrkplcfg '{"actor":"q3k31xlj413z", "listing_fee": "5000000000", "commission_fee": 3, "max_fee": "1000000000", "e_break": 0}' -p eosio@active
Validation: check fio.escrow mrkplconfigs table to confirm account was added
Testnet example: https://fio-test.bloks.io/msig/bsbdk2lectan/setmrkplcfg