Skip to content

docs(release): RELEASE.md runbook + ADR-031 (pipeline PR 6/6) - #184

Merged
aterrylu merged 1 commit into
mainfrom
terry/release-docs
Jun 6, 2026
Merged

docs(release): RELEASE.md runbook + ADR-031 (pipeline PR 6/6)#184
aterrylu merged 1 commit into
mainfrom
terry/release-docs

Conversation

@aterrylu

@aterrylu aterrylu commented Jun 6, 2026

Copy link
Copy Markdown
Owner

Summary

PR 6 of 6 (docs portion). The written release runbook the pipeline was missing — releasing is no longer in anyone's head.

What's here

  • docs/RELEASE.md — the runbook:
    • Mental model: changesets → "Version Packages" PR → auto-tag → release.yml
    • Day-to-day changeset ritual + bump guidance
    • How to cut a release (TL;DR: merge the Version Packages PR)
    • Beta/pre-release, rollback strategy, local DMG builds
    • The GitHub secrets table (incl. the Apple signing secrets for the upcoming PRs)
    • Troubleshooting
  • docs/DECISIONS.md → ADR-031 — the decision record: context (version drift + hand-built unvalidated DMG), the 6-PR design, scope decisions (macOS-only desktop, universal2 from day one, changesets over release-please), rationale, alternatives, implications, validation.

Notes

Scope

Docs-only. No code, no version impact (empty changeset). make check 353/353, biome clean.

Pipeline status

PR State
#1 changesets ✅ merged
#2 lefthook + commitlint ✅ merged
#3 universal DMG in CI 🟢 open (#183)
#4 signing ⏳ Apple key
#5 auto-update ⏳ after #4
#6 docs (this) 🟢 open

🤖 Generated with Claude Code

@aterrylu
aterrylu enabled auto-merge (squash) June 6, 2026 18:03

@nox-0x nox-0x left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approving — clear, accurate runbook and a well-structured ADR; references and changeset config check out.

Spot-checks I ran:

  • .changeset/config.json matches the described fixed group + @changesets/changelog-github + aterrylu/autonomOS repo.
  • Root scripts changeset and version exist as documented; empty-changeset format used here is valid.
  • Referenced paths exist: packages/app/scripts/bundle-node.sh, build-dmg.sh, validate-dmg.sh, build-resources/entitlements.mac.plist.
  • version.yml matches the described "merge Version PR → auto-tag" flow; release.yml currently only builds server tarballs, with DMG/validate-intel/CHANGELOG-body stages coming in PR #3 — acknowledged in the PR body.

Non-blocking follow-ups (land later, no need to gate this PR):

  • The release.yml table (build-dmg / validate-intel / CHANGELOG body) describes the post-#3 state. A one-line "current vs. target state" callout near the top of RELEASE.md would save a future reader the confusion of comparing the runbook to main's release.yml — but this is polish, not a blocker.
  • stage-universal-server.sh is referenced but not yet in the tree (it ships with #3). Same comment — fine as forward reference, can revisit when #3 lands.

The written runbook the pipeline was missing — releasing is no longer tribal
knowledge.

- docs/RELEASE.md: the full runbook. Mental model (changesets → Version PR →
  auto-tag → release.yml), day-to-day changeset ritual, how to cut a release,
  beta/pre-release, rollback, local DMG builds, the secrets table, and
  troubleshooting.
- docs/DECISIONS.md ADR-031: the release-pipeline decision record — context
  (version drift + hand-built DMG), the 6-PR design, scope decisions (macOS-only
  desktop, universal2 from day one, changesets over release-please), rationale,
  alternatives, and implications.

ADR-031 is team-lead-owned — drafted here, flagged for review. Numbering note:
ADR-030 informally forward-referenced "ADR-031" for unbuilt named-profiles; this
ADR claims it for the release pipeline (the real decision), noted in the entry.

SLSA provenance (the other half of PR #6) edits release.yml, which lives in the
unmerged PR #3 — deferred to a follow-up once #3 lands to avoid a conflict.

Docs-only, no version impact (empty changeset).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@aterrylu
aterrylu force-pushed the terry/release-docs branch from b8e8316 to 2349bab Compare June 6, 2026 18:41
@aterrylu
aterrylu merged commit b6f5fdf into main Jun 6, 2026
4 checks passed
@aterrylu
aterrylu deleted the terry/release-docs branch June 6, 2026 18:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants