Versions Compared

Key

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

...

Task

Check Status

Notes

Deliverables

Security

  •  Excluded
  •  Included

Code audit

  •  Excluded
  •  In Progress
  •  Completed

Vulnerability testing

  •  Excluded
  •  In Progress
  •  Completed

Bug bounty

  •  Excluded
  •  In Progress
  •  Completed

SDK Release

  •  Excluded
  •  Included

SDK Review

  •  Excluded
  •  In Progress
  •  Completed

Kolin tests

  •  Excluded
  •  In Progress
  •  Completed

Typescript tests

  •  Excluded
  •  In Progress
  •  Completed

Devnet

  •  In Progress
  •  Completed

Contract rollout commands

  •  In Progress
  •  Completed

contract testing

  •  In Progress
  •  Completed

fork testing

  •  Excluded
  •  In Progress
  •  Completed

performance testing

  •  Excluded
  •  In Progress
  •  Completed

QA tests

  •  Excluded
  •  In Progress
  •  Completed

Testnet

  •  In Progress
  •  Completed

fiosdk_typescript repo

  •  Create release/n.n.x branch (where n=contract release number)

fio.test repo

  •  Create release/n.n.x_m.m.x branch (where n=contract release number and m=chain release number)
    •  Confirm that the package.json references the new kiosk_typescript branch

fio.devtools repo

  •  Create release/n.n.x_m.m.x branch (where n=contract release number and m=chain release number)

fio.contracts repo

  •  Create release/n.n.x branch (where n=contract release number)
  •  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

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"}'

Contract msigs

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

Communication

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

fio repo

  •  Create release/m.m.x branch (where m=chain release number)
  •  Create pre-release (Testnet Release Candidate - FIO vx.x.x-rc1)
  •  Update release notes
  •  Replay test by BP
  •  Track chain upgrade of BPs

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

SDK Release

  •  Confirm develop branch has all updates for new release
  •  Create “vn.n.n-rc1” tag

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:

Jira Legacy
serverSystem JIRA
serverId5f0d8161-d4cf-3d17-96b1-53b2b2b5013d
keyBD-3056

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

fio.test repo

  •  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 repo

  •  Merge release/n.n.x_m.m.x branch to master, create vn.n.n_m.m.m tag
  •  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

fio.contract repo

  •  Merge release/n.n.x branch to master, create vn.n.n tag
  •  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

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 repo

  •  Merge release/m.m.x branch to master, create vm.m.m tag
  •  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

Post-deployment

Post release

  •  Encourage BPs to vote on new endpoint fee

Mainnet validation - fio chain

General

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

Partner upgrades

  •  Create upgrade blog post and send to Account Management team to manage upgrades
  •  Work with Account Management 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.

Update FIO Hosted API Nodes

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

SDK

Typescript SDK Release

  •  Create fiosdk_typescript release candidate tag from develop
  •  QA: Test SDK release tag version against latest production releases (master branches) of fio, fio.contracts, fio.devtools, fio.test (If updates to test are needed, confirm fixes are put into the fio.test release/vn.n.n release branch and the develop branch (i.e., merge fixes from release branch))
  •  Merge develop to master and create production release tag from master
  •  Typescript: Publish new SDK release on NPM
  •  QA: Test published SDK release tag version against latest production releases (master branches) of fio, fio.contracts, fio.devtools, fio.test

...