Skip to content

[chore](pr-template) Adopt a per-type PR template and use it for commit messages - #70175

Merged
morningman merged 2 commits into
apache:masterfrom
morningman:pr-template
Nov 4, 2026
Merged

morningman merged 2 commits into
apache:masterfrom
morningman:pr-template

Conversation

@morningman

Copy link
Copy Markdown
Contributor

Background

Every PR against master starts from .github/PULL_REQUEST_TEMPLATE.md, and the root AGENTS.md tells coding agents to write commit messages in the same layout. The current template asks for a problem summary, a release note, and checkboxes for tests, behavior changes, and documentation. Doris merges PRs by squashing, so the description becomes the commit message on master.

What problem does this PR solve?

Issue Number: None
Related PR: #42999 (introduced the current template), #70123 (a description written in this layout)
PR Type: Build/CI/Chore

Problem Summary:

The current template leaves out what reviewers most often have to ask for: the context of the module, why the change is needed and why this approach, why existing tests missed a bug, and what was verified. Many PRs leave its checkboxes unticked. This PR replaces it with a layout that opens with Background, has required fields for each PR type, asks a diff of more than about 300 changed lines to open Details with a Change map, and adds Testing, optional Notes for Reviewers, a pre-submission status, and an AI disclosure. Commit messages written by AGENTS.md rules follow the same layout.

Details

  • Affected: .github/PULL_REQUEST_TEMPLATE.md, which every new PR description starts from, and the commit and worktree rules in the root AGENTS.md. No build scripts, CI jobs, or workflows change; title-checker.yml accepts the same [type](scope) titles as before.
  • Developer and release impact: Authors fill in more sections, with the required fields of each PR type listed in a comment under Details; the reviewer checklist is gone. Coding agents write commit messages in the new layout, and from a worktree they may keep PR handoff files in ${DORIS_REPO}/.git/pr-handoff/. Releases are unaffected.
  • License and third-party: None.
  • Rollback: Revert this PR; nothing else depends on the template.

Testing

  • check_pr.py, the checker of the doris-pr-description skill (not part of this PR; see Notes for Reviewers), reports the unfilled template as not ready, with 17 errors that include the empty Background, Problem Summary, Testing, and Release note and every blank answer line. Its eleven bundled examples, one or two per PR type and written in this layout, pass it, and so does this description.
  • The description of [feature](audit) Add query_audit_always_on to keep query audit from being disabled #70123, written in this layout, passes the same checker, with one warning that its prose is longer than the limit.

Notes for Reviewers

  • Two commits: the template and the AGENTS.md rules, then guidance for the Change map and three refined comments. With the HTML comments removed, the second commit changes nothing.
  • AGENTS.md also drops the second copy of the paragraph on which files a commit may contain.
  • The new AGENTS.md text names the develop-with-evidence and doris-pr-description skills, which are not in this repository yet. They are to be added to apache/doris-skills, which a later PR includes here as a git submodule.

Release note

None

Check List (For Author)

  • Behavior changed: No
  • Does this need documentation: No
  • Pre-submission status: Ready

AI Disclosure

  • Tool: Claude Code (Claude Opus 5.5)
  • Generated: the template, the AGENTS.md text, the commit messages, and this description
  • Human review: The author reviewed all of the changes line by line.

…it messages

### Background

Every PR against `master` starts from `.github/PULL_REQUEST_TEMPLATE.md`, and the root `AGENTS.md` tells coding agents to write commit messages in the same layout. The current template asks for a problem summary, a release note, and checkboxes for tests, behavior changes, and documentation. Doris merges PRs by squashing, so the description becomes the commit message on `master`.

### What problem does this PR solve?

Issue Number: None
Related PR: apache#42999 (introduced the current template)
PR Type: Build/CI/Chore

Problem Summary:

The current template leaves out what reviewers most often have to ask for: the context of the module, why the change is needed and why this approach, why existing tests missed a bug, and what was verified. Many PRs leave its checkboxes unticked. This PR replaces it with a layout that opens with Background, has required fields for each PR type, and adds Testing, optional Notes for Reviewers, a pre-submission status, and an AI disclosure. Commit messages written by `AGENTS.md` rules follow the same layout.

### Details

- **Affected:** `.github/PULL_REQUEST_TEMPLATE.md`, which every new PR description starts from, and the commit and worktree rules in the root `AGENTS.md`. No build scripts, CI jobs, or workflows change; `title-checker.yml` accepts the same `[type](scope)` titles as before.
- **Developer and release impact:** Authors fill in more sections, with the required fields of each PR type listed in a comment under Details; the reviewer checklist is gone. Coding agents write commit messages in the new layout, and from a worktree they may keep PR handoff files in `${DORIS_REPO}/.git/pr-handoff/`. Releases are unaffected.
- **License and third-party:** None.
- **Rollback:** Revert this PR; nothing else depends on the template.

### Testing

- The checker of the `doris-pr-description` skill (`scripts/check_pr.py`) reports the unfilled template as not ready, with 18 errors that include the empty Background, Problem Summary, Testing, and Release note and every blank answer line. Its bundled examples, written in this layout, pass it.
- This commit message passes the same checker.

### Release note

None

### Check List (For Author)

- Behavior changed: No
- Does this need documentation: No
- Pre-submission status: Ready

### AI Disclosure

- Tool: Claude Code (Claude Opus 5.5)
- Generated: the template, the `AGENTS.md` text, and this message
- Human review: not stated

Co-Authored-By: Claude Opus 5.5 <[email protected]>
…emplate guidance

### Background

Each section of the PR template carries a guidance comment, which GitHub doesn't show and which authors delete when they fill the template in. Reviewers decide whether and how to review a PR from its title, Background, Problem Summary, and the diff size that GitHub shows beside them.

### What problem does this PR solve?

Issue Number: None
Related PR: None
PR Type: Build/CI/Chore

Problem Summary:

The comments didn't say how to account for a diff that is larger than its summary suggests, so reviewers of a large PR had to work out for themselves where its lines go and whether any of them are unrelated. This commit asks a diff of more than about 300 changed lines to open Details with a Change map, has Problem Summary say why the diff is that large and what existing users see after an upgrade, points Notes for Reviewers to the Change map, and drops the rule that `Related PR: None` may be written only after searching open and closed PRs.

### Details

- **Affected:** The guidance comments of `.github/PULL_REQUEST_TEMPLATE.md`; its headings and line labels don't change. No build scripts, CI jobs, or workflows change.
- **Developer and release impact:** Authors of a diff over about 300 changed lines start Details with a Change map, and `Related PR: None` no longer requires a search. Releases are unaffected.
- **License and third-party:** None.
- **Rollback:** Revert this commit; nothing depends on the comments.

### Testing

- With the HTML comments removed, the template is identical before and after this commit, so only the guidance changes.

### Release note

None

### Check List (For Author)

- Behavior changed: No
- Does this need documentation: No
- Pre-submission status: Ready

### AI Disclosure

- Tool: Claude Code (Claude Opus 5.5)
- Generated: the `Related PR` comment and this message; who wrote the other three comment changes is not stated
- Human review: The author reviewed all of the changes line by line.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
@hello-stephen

Copy link
Copy Markdown
Contributor

Thank you for your contribution to Apache Doris.
Don't know what should be done next? See How to process your PR.

Please clearly describe your PR:

  1. What problem was fixed (it's best to include specific error reporting information). How it was fixed.
  2. Which behaviors were modified. What was the previous behavior, what is it now, why was it modified, and what possible impacts might there be.
  3. What features were added. Why was this function added?
  4. Which code was refactored and why was this part of the code refactored?
  5. Which functions were optimized and what is the difference before and after the optimization?

@morningman

Copy link
Copy Markdown
Contributor Author

skip buildall

@shuke987 shuke987 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM

@morningman
morningman merged commit b1720bd into apache:master Nov 4, 2026
37 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.

3 participants