Private Release Checklist
Use this checklist for every NovaLang alpha. A release is blocked while any required item is unresolved.
1. Authorization and scope
- Version and release notes were approved by the owner.
- The tag matches every Cargo package and the site/tooling version.
- No P0 or P1 correctness or security issue remains open.
- The syntax and compatibility impact is documented.
2. Source gates
-
cargo fmt --all -- --check -
cargo check --workspace --all-targets --all-features --locked -
cargo clippy --workspace --all-targets --all-features --locked -- -D warnings -
cargo test --workspace --all-features --locked - Tests pass with the declared MSRV and stable Rust.
- VS Code checks and VSIX packaging pass.
- Site lint, build, source tests, and production dependency audit pass.
- Markdown links and closed-source policy checks pass.
3. Artifacts
- Windows x64, Linux x64, macOS x64, and macOS ARM64 archives exist.
- Each archive contains only the binary, README, LICENSE, and release metadata.
- Every archive passes an extraction and
nova versionsmoke test. -
SHA256SUMScontains every published archive and VSIX. - A CycloneDX SBOM accompanies the release.
- Artifacts were copied to the private distribution channel over TLS.
- The distribution base URL used by installers was tested without GitHub authentication.
4. Installation rehearsal
- Clean install was tested on every supported operating system.
- Upgrade from the previous supported alpha was tested.
- Uninstall removes only NovaLang-owned files.
- A failed checksum leaves the previous installation intact.
- VS Code starts the bundled matching LSP and reports diagnostics in Problems.
5. Publication and rollback
- The private GitHub release is marked prerelease.
- Website download instructions and changelog are updated.
- Support and security contacts are reachable.
- The previous artifacts remain available for rollback.
- The owner recorded approval, date, tag, commit, and artifact checksums.
Sign-off
| Field | Value |
|---|---|
| Version | |
| Tag | |
| Commit | |
| Approved by | João Antonio |
| Date | |
| Result | blocked / approved |