docs(release): RELEASE.md runbook + ADR-031 (pipeline PR 6/6) - #184
Merged
Conversation
aterrylu
enabled auto-merge (squash)
June 6, 2026 18:03
nox-0x
approved these changes
Jun 6, 2026
nox-0x
left a comment
Collaborator
There was a problem hiding this comment.
Approving — clear, accurate runbook and a well-structured ADR; references and changeset config check out.
Spot-checks I ran:
.changeset/config.jsonmatches the describedfixedgroup +@changesets/changelog-github+aterrylu/autonomOSrepo.- Root scripts
changesetandversionexist 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.ymlmatches the described "merge Version PR → auto-tag" flow;release.ymlcurrently 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.ymltable (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 tomain's release.yml — but this is polish, not a blocker. stage-universal-server.shis 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
force-pushed
the
terry/release-docs
branch
from
June 6, 2026 18:41
b8e8316 to
2349bab
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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:release.ymldocs/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
release.yml, which lives in unmerged PR feat: migrate dashboard to React + Zustand + Tailwind #3 — deferred to a small follow-up once feat: migrate dashboard to React + Zustand + Tailwind #3 lands, to avoid a conflict.Scope
Docs-only. No code, no version impact (empty changeset).
make check353/353, biome clean.Pipeline status
🤖 Generated with Claude Code