Defines the projects, tasks, and KPIs associated with building and maintaining the FIO Chain.
Core chain and contract development
Development of Foundation-led FIPs
QA of core chain and contracts
QA for all FIPs
Devnet, Testnet, and Mainnet release testing
fio and fio.contracts automated testing
fio and fio.contract QA is covered by the fio.test javascript test harness. New automated tests are created for every new action, endpoint and feature added to the protocol. Full regression tests are run for every release.
The current process for developing automated tests generally follows:
FIP/requirements are defined by product team
Product team publishes initial test cases
Test cases are enhanced by development and QA teams
FIO development creates initial tests as a template
FIO QA completes full automated tests
Gaps in testing:
All features, especially Mainnet features, do not have full regression tests
Testing lags development and impacts releases
Limited QA resources to develop automated tests
No time to focus on test harness architecture
QA not integrated into CI pipeline
Devnet release testing
Devnet release testing is currently done by the development team. It involves deployment and upgrade testing of fio and fio.contracts.
Testnet release testing
Testnet release testing currently consists of:
Running an automated smoketest against Testnet before and after deployment
Some manual testing of Testnet using Cryptonym
Some manual testing of features by development and product teams
Mainnet release testing
Mainnet release testing currently consists of:
Some manual testing of Mainnet using Cryptonym
Some manual testing of features by development and product teams
Centralized
1 x QA Manager
Test harness architecture
Oversee test development
2.5 FTE
fio.test new and backlog automated tests
Proof’d tests
0.5 FTE release testing
Community / Bounty
1 x QA Manager
Test harness architecture
Oversee test development
Create bounties for:
fio.test new and backlog automated tests
0.5 FTE
release testing
Develop/Maintain Proof’d
Outsource
1 x QA Manager
Test harness architecture
Oversee test development with outsource group
Release testing
Outsource
fio.test new and backlog automated tests
Develop/Maintain Proof’d test scripts
Release management of core chain and contract updates
Release Management for all FIPs
Develop and maintain integration pipeline
Define and manage the software development lifecycle
CI automation for chain and contract development and testing
Manage Devnet deployment and fork testing
Work with BPs to ensure timely Testnet and Mainnet releases
Maintain/upgrade internal FIO nodes (e.g., registration site nodes) to latest release
Ensuring the security of the FIO chain
Security playbook
Maintaining compatibility with and contributing to the EOSIO ecosystem
Work with EOSIO community to ensure FIO compatibility with evolution of EOSIO
Contribute to EOSIO code and tools
Developer outreach and community building
Ensure FIO development community has the resources, motivation and tools they need to excel and deliver high quality software
Ensure that FIO development community is always focused on ease of implementation and ease of use as high priorities
Community bounty program
KPIs
Task | KPIs |
---|---|
Core chain and contract development |
|
QA |
|
Release management |
|
Documentation and knowledge sharing |
|
FIO Chain and contract security |
|
EOSIO compatibility and community support | |
Developer outreach and community building |
Add Comment