Skip to content

docs(process): document how the release pipeline works today - #382

Open
martyy-code wants to merge 1 commit into
mainfrom
docs/release-process
Open

docs(process): document how the release pipeline works today#382
martyy-code wants to merge 1 commit into
mainfrom
docs/release-process

Conversation

@martyy-code

Copy link
Copy Markdown
Contributor

Summary

Adds docs/engineering/process/release-pipeline.md — a process-oriented reference describing the release pipeline as it actually runs today. Companion to the design and setup docs:

  • docs/engineering/plans/release-pipeline.mdwhy (design rationale, migration history, security properties).
  • docs/engineering/plans/release-pipeline-github-ui-setup.mdhow to set it up (one-time UI steps).
  • docs/engineering/process/release-pipeline.mdhow to use it (this PR).

Sections

  1. What the system does — end-to-end description of what happens when a changeset PR merges.
  2. The single workflow publish.yml — triggers, the single release job, step sequence, changeset detection, concurrency.
  3. Security model — trust chain, gates that must close, why we don't use tag protection / reusable workflows / NPM_TOKEN fallback, provenance attestation.
  4. Day-to-day operations — cutting a release, cutting a hotfix, manual dry-run, re-running after transient failure.
  5. Branch strategy — direct PRs to main, why staging/dev were abandoned.
  6. Trust boundary with npm — Trusted Publisher, publishing access, OIDC audience.
  7. What this pipeline does not do — explicit non-goals (multi-package, pre-release, pkg.pr.new, automated rollback).
  8. Local debugging — what you can verify offline and what you can't.
  9. Auditing a past release — commands to find a release commit, verify provenance, find the workflow run, and verify the GitHub Release.
  10. References.

Audience

  • Engineers cutting their first release — §1, §4.1.
  • Engineers handling a hotfix — §4.2.
  • Engineers debugging a failed run — §4.4.
  • Auditors and reviewers — §3, §9.
  • New maintainers onboarding — read in order, top to bottom.

Test plan

  • pnpm turbo type-check passes.
  • pnpm turbo lint passes.
  • Manual review for technical accuracy.

Risk

None. Documentation only.

🤖 Generated with Claude Code

Captures the release pipeline as it currently runs, end-to-end.
Companion to docs/engineering/plans/release-pipeline.md (which
captures the design rationale and migration history) and
docs/engineering/plans/release-pipeline-github-ui-setup.md (which
captures the one-time UI configuration).

Sections:
1. What the system does
2. The single workflow (publish.yml)
3. Security model (OIDC, gates, provenance)
4. Day-to-day operations (cutting releases, hotfixes, dry-runs,
   re-running)
5. Branch strategy
6. Trust boundary with npm
7. What this pipeline does not do
8. Local debugging
9. Auditing a past release
10. References

No code changes.
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.

1 participant