diff options
| author | Monzero Build System <builds@monzero.org> | 2026-08-15 21:14:26 +0100 |
|---|---|---|
| committer | Monzero Build System <builds@monzero.org> | 2026-08-15 21:14:26 +0100 |
| commit | 28f1919249465d3230f45ed21686c5a836d56df0 (patch) | |
| tree | 948fe5e7052c45c366c24a82b485ae9d1d38e39b /docs/RELEASE_CHECKLIST.md | |
| parent | 4f92268d7c16741cfb41e5bbe2aa46cc260a9ea5 (diff) | |
| download | monzero-core-28f1919249465d3230f45ed21686c5a836d56df0.tar.gz monzero-core-28f1919249465d3230f45ed21686c5a836d56df0.tar.xz monzero-core-28f1919249465d3230f45ed21686c5a836d56df0.zip | |
Establish Monzero Phase 0 and inactive assets baselinemonzero-phase0-assets-prototype-20260815
Diffstat (limited to 'docs/RELEASE_CHECKLIST.md')
| -rw-r--r-- | docs/RELEASE_CHECKLIST.md | 178 |
1 files changed, 110 insertions, 68 deletions
diff --git a/docs/RELEASE_CHECKLIST.md b/docs/RELEASE_CHECKLIST.md index 632366985..b64a28a30 100644 --- a/docs/RELEASE_CHECKLIST.md +++ b/docs/RELEASE_CHECKLIST.md @@ -1,68 +1,110 @@ -- [ ] Security audit -- [ ] Code audit -- [ ] Ledger integration - - [ ] Implemented in Monero codebase (if needed) - - [ ] Ledger app integration coded by Ledger - - [ ] Ledger Monero app update available -- [ ] Trezor integration - - [ ] Implemented in Monero codebase (if needed) - - [ ] Trezor app integration coded by Trezor - - [ ] Trezor firmware update available (if needed) -- [ ] Fork height set - - [ ] Monero-announce mailer notice - - [ ] Twitter announcement - - [ ] Reddit announcement - - [ ] Getmonero.org announcement -- [ ] Notify wallets - - [ ] MyMonero - - [ ] Coinomi - - [ ] Exa Wallet - - [ ] Wookey Wallet - - [ ] X Wallet - - [ ] Guarda - - [ ] ZelCore - - [ ] Cake Wallet - - [ ] Monerujo - - [ ] Edge Wallet - - [ ] Exodus - - [ ] XMRWallet -- [ ] Notify exchanges - - [ ] https://web.getmonero.org/community/merchants/#exchanges -- [ ] Notify 3rd party payment processors - - [ ] https://web.getmonero.org/community/merchants/#payment-gateways -- [ ] Notify mining pools - - [ ] https://miningpoolstats.stream/monero -- [ ] Release tagged - - [ ] Update src/version.cpp.in with new version AND new name (if necessary) - - [ ] Update Gitian YML files in contrib/gitian/ to the new version number - - [ ] Update README.md with new fork table entry (or at least update the Recommended Monero version) - - [ ] Update contrib/gitian/README.md so that the instructions reflect the current version - - [ ] Update src/checkpoints/checkpoints.cpp with a recent hardcoded checkpoint - - [ ] Update src/blocks/checkpoints.dat with ./monero-blockchain-export --output-file checkpoints.dat --block-stop <recent block height> --blocksdat - - [ ] Update expected_block_hashes_hash in src/cryptonote_core/blockchain.cpp with checkpoints.dat sha256 hash -- [ ] Testnet forked -- [ ] Testnet testing/verification - - [ ] Ledger - - [ ] Trezor - - [ ] Release-specific testing - - [ ] RPC testing/update RPC documentation -- [ ] CLI reproducible builds validated -- [ ] CLI released - - [ ] https://web.getmonero.org/downloads/ updated - - [ ] Update hashes.txt on website - - [ ] Update downloads.yml on website - - [ ] Update auto-update DNS records - - [ ] Update redirects on downloads box - - [ ] Update seed nodes -- [ ] GUI released - - [ ] https://web.getmonero.org/downloads/ updated - - [ ] Update hashes.txt on website - - [ ] Update hashes.txt.sig on website - - [ ] Update downloads.yml on website - - [ ] Update auto-update DNS records - - [ ] Update redirects on downloads box -- [ ] Release Announcements - - [ ] Monero-announce mailer notice - - [ ] Twitter announcement - - [ ] Reddit announcement - - [ ] Getmonero.org announcement +# Monzero release checklist + +This checklist applies to every Monzero node, CLI wallet, GUI wallet, miner +control, website download, and consensus release. Native amounts use XMZ. + +## Scope and source + +- [ ] Release version, codename, source commit, and supported platforms agreed +- [ ] Working tree clean or every included patch documented +- [ ] Submodules pinned and verified +- [ ] Consensus-affecting changes identified explicitly +- [ ] Database or wallet migration requirements documented +- [ ] User-visible changes and known limitations written +- [ ] Independent reviewer approves the release scope + +## Consensus and network safety + +- [ ] Genesis and protected consensus-vector tests pass +- [ ] Block reward, precision, fees, and amount parsing tests pass +- [ ] Valid and invalid transaction tests pass +- [ ] Synchronization from an empty data directory succeeds +- [ ] Reorganisation and restart tests pass +- [ ] Node interoperates with the currently deployed release +- [ ] Seed list contains no node configured to connect to itself +- [ ] Mainnet, testnet, and stagenet identifiers remain isolated +- [ ] Hard-fork activation height and operator notice reviewed, if applicable + +## Wallet safety + +- [ ] New wallet creation tested in CLI and GUI +- [ ] Seed restoration reproduces addresses and balances +- [ ] Incoming and outgoing transfers confirmed +- [ ] Pending, failed, pool, and confirmed history tested +- [ ] Coinbase and normal output unlock behaviour tested +- [ ] Wallet shutdown and unclean-restart recovery tested +- [ ] View-only, multisig, hardware, and offline signing marked tested or unsupported +- [ ] No workflow requests a recovery seed except an explicit recovery operation + +## Branding and configuration + +- [ ] Product name is Monzero and native ticker is XMZ +- [ ] Executable names, titles, prompts, logs, and default paths are correct +- [ ] Ports, address prefixes, network UUIDs, DNS seeds, and website are correct +- [ ] Required upstream attribution and copyright notices are preserved +- [ ] User-facing inherited Monero service links are removed or clearly contextual +- [ ] Warnings prohibit cross-fork key and seed reuse + +## Automated testing + +- [ ] Unit tests pass from a clean build +- [ ] Core and functional tests pass +- [ ] RPC compatibility tests pass +- [ ] Parser and consensus fuzzing has no unresolved regressions +- [ ] Website and explorer API smoke tests pass +- [ ] Linux launch, mining, wallet, and uninstall scripts pass shell validation +- [ ] Windows launch and mining scripts pass on a clean Windows system + +## Build and package + +- [ ] Linux build produced by the pinned build environment +- [ ] Windows build produced by the pinned cross-build environment +- [ ] A second builder checks reproducibility +- [ ] Executable formats and required runtime libraries inspected +- [ ] Archives contain only intended files +- [ ] README and upgrade instructions included +- [ ] SHA-256 manifest generated and verified +- [ ] Release manifest signed with the Monzero release key +- [ ] Packages scanned and tested after extraction from their final archives + +The Linux archive layer is generated with `utils/release/package-linux.sh`. +It refuses a dirty tree unless `ALLOW_DIRTY=1` is explicitly supplied, in +which case the filename and embedded manifest are marked development/dirty. +`utils/release/verify-package.sh` verifies archive shape, inner checksums, +executable presence, formats, and reported versions. This makes packaging +deterministic; it does not by itself make locally compiled binaries +reproducible. `RELEASE_STRICT=1` additionally rejects dirty manifests, +unverified build reproducibility, dynamically linked binaries, debug +information, and unstripped executables. + +## Deployment + +- [ ] Public node binaries backed up before replacement +- [ ] Public node database backup or recovery procedure confirmed +- [ ] New node starts, binds expected ports, and reports correct version +- [ ] Peer counts, height, difficulty, synchronization, and RPC checked +- [ ] At least one independent node successfully handshakes and synchronizes +- [ ] Explorer and website display current chain data +- [ ] Download files, sizes, MIME types, checksums, and links verified publicly +- [ ] Rollback binary and rollback instructions remain available + +## Publication and monitoring + +- [ ] Release notes identify experimental and unaudited components +- [ ] Source commit and signed hashes published +- [ ] Node, miner, wallet, and service operators receive upgrade instructions +- [ ] Security contact and disclosure process published +- [ ] Height, fork divergence, peers, RPC, CPU, memory, disk, and logs monitored +- [ ] Post-release review performed after 24 hours and seven days + +## Assets-specific gate + +For any future Monzero Assets release: + +- [ ] Phase 0 stabilization gates are complete +- [ ] Consensus and cryptographic specifications are public +- [ ] Independent cryptographic and implementation audits are resolved +- [ ] Inflation and cross-asset conversion tests pass +- [ ] Asset wallet restoration tests pass +- [ ] Extended public testnet has completed a planned upgrade +- [ ] Mainnet activation height has advance operator coordination |
