epic(phase-8): Prerelease cutting (write-side) — semver bump + trigger-branch + cadence #509

Closed
opened 2026-07-24 22:42:30 +02:00 by bosun · 1 comment
Owner

Framing refresh 2026-07-30 (post-ADR-0009 single-stack model)

Original body was authored under the multi-thread branch-strategy (main = v1.x shell / v2/next = v2.x Go); ADR-0009 retired that model. Under the single-stack direction, this epic's scope simplifies: prerelease cuts fire from main as v1.0.0-alpha.N → beta.N → rc.N, and the trigger-branch parameterization sub-item (#477) is structurally obsolete + closed.

Umbrella tracker for Phase 8 sub-work. Deferred to phase 8 because the substrate must exist before you can cut prereleases from it.

Phase 8 gate (refreshed post-ADR-0009)

The first v1.0.0-alpha.N cut fires through the pipeline from main; v1.0.0-alpha.N → beta.N → rc.N sequence works from main as the Go port completes toward v1.0.0.

Sub-tracker planning (refreshed decomposition)

Anticipated decomposition post-ADR-0009:

  • Semver prerelease bump implementationX.Y.Z-alpha.N → X.Y.Z-alpha.(N+1), -alpha → -beta, -beta → -rc, -rc → stable transitions. Load-bearing — landed in #476.
  • LAST_TAG discovery mode-switch — prerelease-cut mode includes *-* tags in the walk so -alpha.2 follows -alpha.1. Part of #476 scope.
  • release-decide.sh prerelease directive — accept --prerelease alpha|beta|rc + a prerelease bump level. Part of #476 scope.
  • Prerelease cadence disposition (per ADR-0009 §9 sub-fork #2 — operator choice). Not yet scoped as its own tracker; may be an inline operator decision at first-alpha-cut time.

Retired from decomposition:

  • Trigger-branch parameterization for prerelease cuts#477 closed as structurally obsolete under single-stack. Only trigger branch is main, no parameterization needed.
  • #476 — prerelease-cut write-side capability (framing refreshed 2026-07-30). Lands here. Load-bearing.
  • #477 — trigger-branch parameterization: closed 2026-07-30 (structurally obsolete post-ADR-0009).
  • #347 (closed) — SemVer compare-side (prerelease ordering).
  • ADR-0009 — the direction that reframed this epic. Single-stack, cut-from-main.
  • #609 — Tier 2 branch-strategy.md rewrite (companion doc-set refresh for the same ADR-0009 propagation).

Refs: ADR-0009 §3.3 phase 8, §2.3 (prerelease cadence), §9 sub-fork #2. Milestone #81 description also refreshed as part of this Kickoff-0 pass.

Anchor

Kickoff-0 refresh 2026-07-30 by Bosun: audit-against-ADR-0009 sweep of Phase 8 trackers surfaced #477 as structurally obsolete + #476 body/#509 body carrying pre-ADR-0009 framing. Companion to today's #603/#609 renumber+deferral pattern for the same class of pre-ADR-0009 framing at the doc-set-model level.

## Framing refresh 2026-07-30 (post-ADR-0009 single-stack model) Original body was authored under the **multi-thread branch-strategy** (main = v1.x shell / v2/next = v2.x Go); ADR-0009 retired that model. Under the **single-stack** direction, this epic's scope simplifies: prerelease cuts fire from `main` as `v1.0.0-alpha.N → beta.N → rc.N`, and the trigger-branch parameterization sub-item (#477) is structurally obsolete + closed. Umbrella tracker for Phase 8 sub-work. Deferred to phase 8 because the substrate must exist before you can cut prereleases from it. ## Phase 8 gate (refreshed post-ADR-0009) The first `v1.0.0-alpha.N` cut fires through the pipeline **from `main`**; `v1.0.0-alpha.N → beta.N → rc.N` sequence works from `main` as the Go port completes toward v1.0.0. ## Sub-tracker planning (refreshed decomposition) Anticipated decomposition post-ADR-0009: - **Semver prerelease bump implementation** — `X.Y.Z-alpha.N → X.Y.Z-alpha.(N+1)`, `-alpha → -beta`, `-beta → -rc`, `-rc → stable` transitions. Load-bearing — landed in #476. - **`LAST_TAG` discovery mode-switch** — prerelease-cut mode includes `*-*` tags in the walk so `-alpha.2` follows `-alpha.1`. Part of #476 scope. - **`release-decide.sh` prerelease directive** — accept `--prerelease alpha|beta|rc` + a `prerelease` bump level. Part of #476 scope. - **Prerelease cadence disposition** (per ADR-0009 §9 sub-fork #2 — operator choice). Not yet scoped as its own tracker; may be an inline operator decision at first-alpha-cut time. **Retired from decomposition**: - ~~Trigger-branch parameterization for prerelease cuts~~ — #477 closed as structurally obsolete under single-stack. Only trigger branch is `main`, no parameterization needed. ## Related existing trackers (refreshed) - **#476** — prerelease-cut write-side capability (framing refreshed 2026-07-30). Lands here. Load-bearing. - ~~**#477**~~ — trigger-branch parameterization: **closed 2026-07-30** (structurally obsolete post-ADR-0009). - **#347 (closed)** — SemVer compare-side (prerelease ordering). - **ADR-0009** — the direction that reframed this epic. Single-stack, cut-from-main. - **#609** — Tier 2 branch-strategy.md rewrite (companion doc-set refresh for the same ADR-0009 propagation). Refs: ADR-0009 §3.3 phase 8, §2.3 (prerelease cadence), §9 sub-fork #2. Milestone #81 description also refreshed as part of this Kickoff-0 pass. ## Anchor Kickoff-0 refresh 2026-07-30 by Bosun: audit-against-ADR-0009 sweep of Phase 8 trackers surfaced #477 as structurally obsolete + #476 body/#509 body carrying pre-ADR-0009 framing. Companion to today's #603/#609 renumber+deferral pattern for the same class of pre-ADR-0009 framing at the doc-set-model level.
Author
Owner

Closing — all children resolved, v0.35.0 published

#477   closed   structurally obsolete post-ADR-0009 (single-stack: only trigger branch is main)
#476   closed   shipped in v0.35.0, published 2026-07-31 16:03

The three sub-items this epic tracks — semver prerelease bump, LAST_TAG discovery
mode-switch, and the release-decide prerelease directive — all landed under #476 and are
released.

Phase 8 closes at 3/3.

## Closing — all children resolved, v0.35.0 published ``` #477 closed structurally obsolete post-ADR-0009 (single-stack: only trigger branch is main) #476 closed shipped in v0.35.0, published 2026-07-31 16:03 ``` The three sub-items this epic tracks — semver prerelease bump, `LAST_TAG` discovery mode-switch, and the `release-decide` prerelease directive — all landed under #476 and are released. Phase 8 closes at 3/3.
bosun closed this issue 2026-07-31 20:56:15 +02:00
Sign in to join this conversation.
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
frankenbit/release-toolkit#509
No description provided.