Release Checklist¶
This page is the operational checklist for preparing a release candidate.
Use it together with release-process.md and
release-gates.md.
Universal Checklist¶
- Confirm the target version and release intent are explicit.
- Confirm
CHANGELOG.mdreflects the release scope honestly. - Confirm docs, samples, and version references are aligned with the target release line.
- Confirm
task -t .dev/Taskfile.yaml release-preflightpasses under the pinned Java 25 / GraalVM 25 environment. - Confirm the relevant CI workflows are green.
- Confirm no accidental scope drift remains in roadmap or planning notes.
- Confirm release notes describe public behavior changes and compatibility impact.
Preflight Notes¶
release-preflight is the canonical local verification entrypoint before release.
It is expected to:
- load the pinned SDKMAN Java environment automatically
- build docs with a local
.venv-docs/environment whenmkdocsis not already installed - verify the maintained release-path samples after local artifact installation
Use release-preflight-clean only when you explicitly want .venv-docs/ removed after the run.
0.3.0 Checklist¶
- Python runtime semantics remain explicit in docs, tests, and code comments.
- Spring fail-fast, preload, and warmup behavior remain aligned with those semantics.
- Code generation strict mode, drift checks, and doctor/check workflows are documented and tested.
- JavaScript is still documented as experimental and non-parity.
- Maintained samples are aligned with the current snapshot line and have smoke verification in CI.
- Release-facing compatibility docs distinguish current verified support from target-only support.
- Release-facing docs do not imply broader platform scope than the implementation supports.
1.0.0 Pre-Checklist¶
Do not prepare 1.0.0 until:
- the Python-first public surface is intentionally stable
- the starter behavior is stable enough to document as contract, not current behavior
- the Python-oriented codegen subset is stable enough to support long-term
- JavaScript status is still either explicitly experimental or deliberately reclassified with stronger guarantees