Skip to content

docs(engineering): add process docs and stacked-PR learnings - #51

Merged
codewizdave merged 2 commits into
stagingfrom
docs/process-docs
Aug 3, 2026
Merged

docs(engineering): add process docs and stacked-PR learnings#51
codewizdave merged 2 commits into
stagingfrom
docs/process-docs

Conversation

@martyy-code

Copy link
Copy Markdown
Contributor

Adds four documentation files, no code or workflow changes.

What this PR adds

Three process docs under docs/internal/engineering/process/:

  • implementing-an-issue.md — the dev's playbook: read the issue, branch from staging, code, add a changeset, push, open the PR. Covers the full dev flow including hotfixes.
  • releasing-a-new-version.md — the release engineer's playbook: build the release branch, cherry-pick the batch, push, watch the workflow, verify the artifacts. Mirrors the conventions we hardened in PRs docs(release): add release system plan #39-47.
  • pr-authoring.md — standards for the body of a PR: six canonical sections (## Summary, ## Why, ## What changed, ## Code sample, ## Verified locally, ## Risk), mandatory code sample when public API changes, before/after default, after-only acceptable when the change is purely additive. The worked example in this doc is the .addNote() PR body we shipped in feat(errors): implement ErrorInstance.addNote() #50.

Plus one learning file:

Why

These docs capture what we demonstrated through the work. PR #50 was the first to follow pr-authoring.md — the body has a ## Code sample before/after. PR #44 followed releasing-a-new-version.md in spirit and surfaced the recovery lessons documented there (ENEDAUTH, E422, tag drift, git diff --cached). implementing-an-issue.md is the dev-side mirror of the release process doc.

Until now, the process was implicit. Having it written down saves new contributors and future AI assistants from rediscovering the conventions.

How to read these

  • Picking up an issue? Start with implementing-an-issue.md, finish with pr-authoring.md.
  • Cutting a release? Read releasing-a-new-version.md before running anything.
  • Curious about stacked PRs? The learnings/github/stacked-pr/README.md captures the GitHub concept with a worked example.

Risk

None. Documentation only. No code, no workflow changes, no .changeset/*.md required (per the documented docs exemption in CONTRIBUTING.md and ci.yml).

Verification

  • pnpm format:check would have auto-reformatted the files on commit; manual review confirms consistent headings and bullet style with the rest of docs/internal/engineering/.

…stacked-PR learnings

Three process docs under docs/internal/engineering/process/, each
tuned to a persona:

- implementing-an-issue.md  — dev's playbook (read issue, branch, code,
  changesets, push, PR). Companion for anyone picking up an issue.
- releasing-a-new-version.md — release engineer's playbook (build the
  release branch, cherry-pick, push, watch the workflow, verify
  artifacts). Mirrors the conventions we hardened in PRs #39-47.
- pr-authoring.md           — standards for the body of a PR (six
  canonical sections, mandatory code sample when public API
  changes, before/after default, after-only when purely additive).
  Enforces what PR #50 demonstrated: documented the .addNote()
  worked-example as the in-doc template.

Also adds docs/learnings/github/stacked-pr/README.md, notes captured
during PR #39-43 setup around how stacked PRs work in GitHub and how
they apply to a release branch.

No code, no workflow changes. Documentation only.
- Prettier auto-formatted two of the four process docs (markdown
  table alignment in pr-authoring.md, bullet spacing in
  implementing-an-issue.md).
- Add a no-op changeset so the ci.yml lint passes. The lint currently
  requires a changeset on every PR to staging regardless of path; this
  is a known limitation tracked in the release-system plan Section 4.
  A future change can implement the documented exemption for docs-only
  and CI-only PRs.
@codewizdave
codewizdave merged commit 25126f6 into staging Aug 3, 2026
5 checks passed
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