Skip to content

v0.3.0-rc.2

Pre-release
Pre-release

Choose a tag to compare

@michaelegner michaelegner released this 02 Sep 11:53
· 22 commits to main since this release
eeff933

v0.3.0-rc.2 release notes

Project status: candidate frozen; real-system revalidation pending (I5.2). This tag is not
ready to ship as v0.3.0.

Why this candidate exists

v0.3.0-rc.1
completed I1-I4 (real-world validation against Quarkus Super Heroes and Apache Airflow, plus
cross-system model hardening) with zero production changes. During I5 entry qualification, an
independent audit found that pyproject.toml and uv.lock's root package both still declared
project version 0.2.0, even though rc.1 was the v0.3.0 release candidate — a release-blocking
inconsistency per the
I5 specification
§10.

That fix (0.2.00.3.0, a one-line uv.lock diff, no dependency re-resolution) changes the
source tree and therefore creates a new candidate, under this project's own no-substitution policy —
see
v0.3.0-rc.2-candidate-preparation.md
for the full entry-audit and fix record.

What is verified at this exact commit

  • pyproject.toml/uv.lock consistently declare 0.3.0.
  • Ruff lint and format: green.
  • Unit tests: 508 passed. Integration tests: 160 passed.
  • Deterministic v0.2 evaluation: 10/10 PASS.
  • pip-audit: no known vulnerabilities.
  • CI, CodeQL (Python + Actions): green at this exact commit.

What is explicitly NOT yet verified against this candidate

  • Quarkus Super Heroes and Apache Airflow real-system revalidation. v0.3.0-rc.1's real-system
    evidence is bound to commit 9f95d48, not this one, and does not transfer by content-equivalence
    argument. Fresh, full revalidation (two runs each, from clean state) against this exact candidate
    is I5.2's next task.
  • Fresh Quick Start / clean-checkout qualification against this exact tag.
  • GHCR artifact verification for this tag.
  • A GO/NO-GO decision. This tag exists to freeze the candidate identity, not to declare readiness.

What's next

I5.2 will execute the real-system revalidation and remaining qualification gates against this exact
candidate. Only after that completes, and a GO is recorded, will a final v0.3.0 tag be cut — at
this commit if no further defect is found, or at a later one if it is.

v0.3.0-rc.1 remains immutable and is not superseded in the sense of being deleted or moved — it
stands as historical record of the pre-version-fix candidate.