T20 is a feature-level tranche: Rune structural taxonomy (15 domains, 107+ entities), capability/behaviour ledgers, /testing backlog, Spine modernization, rune graph projection, semantic release policy — new subsystem functionality and materially expanded system behaviour. Classified MINOR per docs/RELEASE_POLICY.md. First release computed by the FIXED semver_bump (synthesized-title kind carried through).
2.2 KiB
Rune Semantic Release Policy (T20 §20B)
Pre-1.0 convention. Scaffolding "V1" does NOT mean Rune 1.0.
Bump kinds
PATCH (0.66.80 → 0.66.81):
- bug fix, correction, implementation/internal maintenance
- no meaningful new user/system capability
MINOR (0.66.80 → 0.67.0):
- meaningful new Rune capability
- new subsystem functionality
- materially expanded system behaviour
- significant new supported workflow
MAJOR: reserved for Rune 1.0+ compatibility/public-contract semantics.
How the machinery expresses this (no manual version edits)
The existing machinery already maps commit shape → bump kind:
semver_bump.next_version(PR titles): feat→minor, else patchversion_convergence.highest_warranted_bump(push ranges): feat/breaking→minor, fix/perf→patch, else None
Tranche-level rule (20B): a feature tranche lands its feature
commits (feat(...)), and the convergence machinery bumps MINOR at
the tranche's release boundary. Patch-only follow-ups (fix/perf)
warrant only PATCH — the machinery cannot accidentally re-minor
because highest_warranted_bump takes the max over the post-
boundary range, and a fix-only range yields "patch".
Why T20 → 0.67.0
T20 is a feature-level tranche (Rune-wide retrofit: structural taxonomy, capability/behaviour ledgers, rune graph, /testing backlog, Spine modernization, semantic release). The release is classified MINOR under this policy, earned through the governed convergence machinery — never a manual version edit.
T20 0.67.0 release record
T20 classified MINOR under this policy: Rune-wide retrofit (structural taxonomy, capability/behaviour ledgers, rune graph, /testing backlog, Spine modernization, semantic release) = new subsystem functionality + materially expanded system behaviour. Earned through the governed convergence machinery (feat-bearing range → minor), never a manual edit.
Root cause record (T20, 2026-09-16)
semver_bump re-derived the bump kind from the SYNTHESIZED title text — "minor: converged release" matched nothing → patch. Feature tranches T18/T19/T20 downgraded to 0.66.77-83. Fixed: MINOR_PREFIX_RE carries the convergence kind through; first push after the fix with a feat-bearing range lands 0.67.0 through the normal machinery.