epic(phase-6): Orchestrators — decide + prep + release + manifest-check + prune-rc-tags #508
Labels
No labels
bump
major
bump
minor
bump
patch
kind/bug
kind/chore
kind/docs
kind/feature
priority/critical
priority/high
priority/low
priority/medium
size/L
size/M
size/S
size/XL
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
frankenbit/release-toolkit#508
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Umbrella tracker for Phase 6 sub-work. Largest phase (~2,285 LOC per ADR-0008 §5). #499 fail-atomic lands as the transactional design of
internal/releaseper ADR-0009 §6, not as a follow-up.Phase 6 gate (from milestone description)
The 30-file bats oracle runs green against the Go binary via the equivalence harness; #499's transactional invariant (fragment-consumption atomicity, no orphan on failure) is testable and passes.
Sub-tracker planning (filed at phase-start, not now)
Anticipated decomposition — actual list refined during Phase 0b interface work and Phase 6 phase-start:
internal/release.Cuttertransactional implementation (§6 design)rt decide(release-decide.sh port — 826 LOC, 3-layer safeguard)rt prep(release-prep.sh port — 785 LOC, 39 git-porcelain sites)rt release(draft-release.sh port — 285 LOC, idempotency)rt manifest-checkportrt prune-rc-tagsportRelated existing trackers (retro-linked to Phase 6 milestone)
Refs ADR-0009 §3.3 phase 6, §6 (transactional cut design).
CLOSED — Phase 6 orchestrator/utility port arc COMPLETE (2026-07-27).
All 5 orchestrators ported + Cutter foundation delivered:
79e5947(01:56 CEST)internal/release.Cuttertwo-phase txn per ADR-0009 §6 (folds #499 fail-atomic)3385537(04:02 CEST)internal/prep+cmd/rt/prep.go(785 LOC port + 29 git-porcelain sites + rolling-mode)b215acf(05:13 CEST)cmd/rt/release.govia Cutter.Fire (first production caller); manifest-atomic strengthening6072fa3(06:12 CEST)cmd/rt/prune_rc_tags.gopure orchestrator (deletion-set differential harness)c1cf08a(06:23 CEST)cmd/rt/manifest_check.goaccumulator + fork-B verbose desync + C2-lenient parse22507cf(10:47 CEST)internal/decide+cmd/rt/decide.go(826 LOC port + 3-layer safeguard + F1 events-retire + F2 forgejo.Client accretion)Substrate refinement pattern across the arc
Each orchestrator port surfaced necessary substrate additions in the primitive it consumes:
Substrate-refinement-per-port is the natural §3.3 shape — interfaces refined as reality intrudes at the primitive that reality actually pushes against; Cutter didn't centralize all accretion, and the arc-wide threshold discipline held.
Composite-milestone-gate design vindicated 5×
Property gate at substrate + harness gate at consumer + Surveyor adversarial-verify at review — each layer surfaces defects the others can't:
Cross-actor discipline correction cycle
n=5 substrate-of-record corrections landed clean across the arc (rolling-mode over-tick / 4-vs-3 refinement count / Fire-replay-naturally / git-primitive-gap / C2-strict-vs-lenient), plus a chamber-metabolism framing correction from operator. Pattern: Bosun ratify-time substrate mappings consistently need Engineer's framing-verify pass; Engineer's oracle-grounded reads win over design intuitions. The correction cycle IS the discipline working (surface + reason + accept-correction → clean revision), not a defect in the ratify process.
Deferred to Phase 7
#562 rolling-mode end-to-end differential test (Engineer's honest coverage residual from #556 — coverage-completeness follow-up, not a Phase-6 gate condition) — moved to milestone #80.
Related
Closed by Bosun 2026-07-27 10:49 CEST.