Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Task

Deliverables

Notes

Security

Code audit

  •  Code audit of new contract or code

FIP-26 - Discussed audit with Marketplace team and they decided they would not be doing one.

Vulnerability testing

  •  Penetration, API, and logic vulnerability testing

FIP-26 - Pen testing of marketplace site is at the discretion of Blocksmith team.

Bug bounty

  •  Bug bounty

FIP-26 - Bounty testing of marketplace site is at the discretion of Blocksmith team.

SDKs

SDKs

  •  Stories created for any needed SDK updates (new getters or actions)
  •  SDK dev complete
  •  All SDK unit tests run cleanly
    •  fiosdk_typescript
    •  fiosdk_kotlin

FIP-26 - New marketplace getters will not be included in FIO SDKs.

Add fio.escrow contract to SDK: https://fioprotocol.atlassian.net/browse/BD-3134

Other FIPs - Only has modified actions.

SDK and Wallet Testing

  •  Run Typescript SDK regression tests against latest build, confirm new actions and getters are included in the tests
  •  Run Kotlin SDK regression tests against latest build, confirm new actions and getters are included in the tests
  •  Run GO SDK regression tests against latest build, confirm new actions and getters are included in the tests

https://fioprotocol.atlassian.net/browse/BD-3135

Testnet

Communication

  •  Socialize changes with all BPs on Testnet and the community and marketing
  •  Monitor and coordinate the rollout with BPs

addaction and createfee

  •  BP to create msig to set addaction and createfee for new actions
  •  Encourage BPs to vote on new endpoint fee

Example:

createfee '{"end_point":"transfer_tokens_fio_add","type":"1","suf_amount":"958695652"}'

addaction '{"action":"trnsloctoks","contract":"fio.token","actor":"eosio"}'

https://fioprotocol.atlassian.net/browse/BD-3136

fio.test

  •  Make sure there is a release/n.n.x_m.m.x branch for current production release
  •  Create release/n.n.x_m.m.x branch from develop, confirm it runs against new release

https://fioprotocol.atlassian.net/browse/BD-3137

fio.contract

  •  Create pre-release (Testnet Release Candidate - FIO Contracts vx.x.x-rc1)
  •  Update release notes
  •  Create PR for hashes on fio.mainnet > releases-testnet.md

https://fioprotocol.atlassian.net/browse/BD-3138

Contract msigs

  •  BP to create msigs for updated and new contracts
  •  Review msigs
  •  BP to post msigs to Mainnet

https://fioprotocol.atlassian.net/browse/BD-3139

fio (chain)

  •  Create pre-release (Testnet Release Candidate - FIO vx.x.x-rc1)
  •  Update release notes
  •  Generate .deb and .tgz build files using fio.package
  •  Upload .deb and .tgz build files to AWS > S3 > fioprotocol > Mainnet for use with fio-docker
  •  Track chain upgrade of BPs

https://fioprotocol.atlassian.net/browse/BD-3140

https://fioprotocol.atlassian.net/browse/BD-3141

SDK and Wallet Testing

  •  Typescript Wallet: Build Edge Demo Testnet build and go through Wallet checklist
  •  Kotlin Wallet: Can we get a regular build of a Testnet wallet? Mycelium?

TBD: need to create Edge wallet test checklist

Testnet validation

  •  Run fio.test Testnet smoketest, confirm FIO Request getters still work
  •  Confirm hashes of testnet
  •  Confirm ABIs deployed correctly (using ./clio get abi)
  •  Confirm createfee added fees with correct endpoint and type
  •  Confirm addaction added correct actions with correct contracts

Story to track development of fio.devtools so it automatically checks some of these: https://fioprotocol.atlassian.net/browse/BD-3056

https://fioprotocol.atlassian.net/browse/BD-3142

Mainnet

Mainnet prep

  •  Create upgrade checklist of BPs and integration partners
  •  Work with Brit to coordinate Mainnet rollout plan with the BP, wallet, and exchange community, watch over the execution and help to ensure rollout is completed in full.
  •  Socialize release changes with all BPs and the community and marketing
  •  Perform Testnet rollout verification and report findings

fio.test

  •  Merge release/n.n.x_m.m.x branch to master, create vn.n.n_m.m.m tag
  •  Run test tag against new release

fio.devtools

  •  Update base contracts to current mainnet contracts
  •  Update readme to show new version changes on fio
  •  Merge to master and cut a new tag/release

addaction and createfee msigs

  •  msig to set addaction and createfee for new actions
  •  Encourage BPs to vote on new endpoint fee

Example:

createfee '{"end_point":"transfer_tokens_fio_add","type":"1","suf_amount":"958695652"}'

addaction '{"action":"trnsloctoks","contract":"fio.token","actor":"eosio"}'

Contract msigs

  •  BP to create msigs for updated and new contracts
  •  Review msigs
  •  BP to post msigs to Mainnet

fio.contract

  •  Move pre-release to release (Release - FIO Contracts vx.x.x)
  •  Create PR for hashes on fio.mainnet
  •  Encourage BPs to vote on new endpoint fee
  •  msig fio.contracts release
  •  Perform the rollout verification and report findings
  •  Post msig links to main FIO Telegram channel so member can track progress

fio chain

  •  Move pre-release to release (Release - FIO vx.x.x)
  •  Generate .deb and .tgz build files using fio.package
  •  Upload .deb and .tgz build files to AWS > S3 > fioprotocol > Mainnet for use with fio-docker
  •  BP mainnet node upgrade checklist is complete (BP spreadsheet, or create one in Jira)
  •  Perform the rollout verification and report findings
  •  Confirm BP upgrade: https://health.fioprotocol.io

Mainnet validation

  •  Confirm hashes of mainnet
  •  Confirm versions of mainnet nodes (chain)
  •  Confirm ABIs deployed correctly (using ./clio get abi)
  •  Confirm createfee added fees with correct endpoint and type
  •  Confirm addaction added correct actions with correct contracts

General

  •  Move FIP status to Final and include release links; update master README index
  •  Update Initiative and Epic status

FIO API Nodes

  •  Upgrade Registration site API nodes (2 load balanced nodes)
  •  Upgrade Analytics API node (single State History node)

SDK and Wallet Testing

  •  Run Typescript SDK regression tests against latest build, confirm new actions and getters are included in the tests
  •  Run Kotlin SDK regression tests against latest build, confirm new actions and getters are included in the tests
  •  Run GO SDK regression tests against latest build, confirm new actions and getters are included in the tests

...