The development cycle is explained below: ![Untitled presentation (1)](https://user-images.githubusercontent.com/8425762/170034170-7247a737-9d99-481d-9289-88d361275043.png) Devnet: - continuous development for active version - can be reset - should be against a branch named with the version being developed (example: 10.2.3) Nextnet: - for parallel version development - oftentimes, the next major version while development has bugfixes - should be against a branch named with the version being developed (example: 10.3.1) QAnet: - once development is complete, each component is tagged with an rc (example: 10.2.3-rc1) and the new version to be tested is deployed on QAnet - this net is for INTERNAL QA - Here, we expect most bugs to be reported - Once QA signs off, it moves to testnet Testnet: - tag as beta release (example: 10.2.3-rc3-beta) - This is for the community and stability testing - should be almost completely stable Mainnet: - if testnet has no blockers for 2 weeks, community votes to move to mainnet - everything is merged to main - final release is tagged (example: 10.2.3) ## GOAL: moving away from that model to be able to use ephermal environments instead of maintaining such environments, but now they're available for simplicity