From d6200c9d532958f97f8b8a67faab0cfd1a85a541 Mon Sep 17 00:00:00 2001 From: Eric Gustin <34000337+EricGustin@users.noreply.github.com> Date: Fri, 1 May 2026 15:43:41 -0700 Subject: [PATCH] chore: add PR template aligned with engineering standards (#835) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Summary Adds a PR template at `.github/PULL_REQUEST_TEMPLATE.md` encoding the 6 hard gates and section scaffolding from the 2026-04-24 engineering announcement ("What a Good Pull Request Looks Like"), and lightly updates `CONTRIBUTING.md` to point at it. The repo had no PR template; recent PR descriptions have been inconsistent in structure and ticket linking. Resolves: _(driven by the 2026-04-24 engineering announcement; no Linear ticket but happy to file one if preferred)_ ## Design decisions - Single template, not a multi-template directory. ## Scope In scope: - `.github/PULL_REQUEST_TEMPLATE.md` (new) - `CONTRIBUTING.md` "Pull Request Guidelines" section (additive update; existing 3 bullets preserved) Not in scope: - CI enforcement of template fields or ticket-linking ## Author checklist - [x] `make check`/`make test` n/a — no Python touched; pre-commit hooks pass - [x] Reviewed my own diff top-to-bottom - [x] I'd merge it myself --- > [!NOTE] > [Cursor Bugbot](https://cursor.com/bugbot) is generating a summary for commit d1f15d1e6b1a7521d01ace3c1379b330767f1fb9. Configure [here](https://www.cursor.com/dashboard/bugbot). --- .github/PULL_REQUEST_TEMPLATE.md | 87 ++++++++++++++++++++++++++++++++ CONTRIBUTING.md | 4 ++ 2 files changed, 91 insertions(+) create mode 100644 .github/PULL_REQUEST_TEMPLATE.md diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 00000000..77cce647 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,87 @@ + + +## Summary + + + +Resolves: + +## Design decisions + + + +## Scope + + + +## Test plan + + + +- [ ] +- [ ] + +## Risk note + + + +## Coverage note + + + +## Author checklist + +Before moving this PR from Draft to Ready for Review: + +- [ ] Linked to a Linear ticket or GitHub issue (above) +- [ ] I understand every change in the diff — not "an agent wrote it, I'm not sure why" +- [ ] Runs locally, exercised through the end-user path (not just unit tests) +- [ ] `make check` and `make test` are green locally; CI is expected to pass +- [ ] I've pulled the branch fresh and reviewed my own diff top-to-bottom +- [ ] I'd merge it myself if a teammate said LGTM right now diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index ddf4300b..70cd51f3 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -129,6 +129,10 @@ git push origin name-of-your-bugfix-or-feature # Pull Request Guidelines +When you open a pull request, the [PR template](.github/PULL_REQUEST_TEMPLATE.md) will populate the description with prompts for a summary, ticket link, test plan, and a self-review checklist. Fill it in — it's the bar for moving from Draft to Ready for Review. + +In short: PRs should be small and focused, tested through the end-user path (not just unit tests), and self-reviewed before you mark them Ready. The reviewer is your customer — craft the PR so they can read, understand, and approve it on the first pass. + Before you submit a pull request, check that it meets these guidelines: 1. The pull request should include tests.