Skip to content

Commit e88365c

Browse files
authored
Update PR description guidelines for breaking changes (#304)
Clarified criteria for breaking changes in PR descriptions and label suggestions. ## AI Description <!-- ai-description-start --> The pull request updates the guidelines in the PR description template regarding how to identify and label breaking changes. It clarifies the criteria that define a breaking change, specifying what situations require such a label and outlining examples of changes that do not qualify. This helps ensure more consistent and accurate labeling of PRs. <!-- ai-description-end -->
1 parent 45d71f0 commit e88365c

File tree

1 file changed

+14
-3
lines changed

1 file changed

+14
-3
lines changed

.github/workflows/pr-description.yml

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -84,12 +84,23 @@ jobs:
8484
8585
1. **AI_DESCRIPTION**: A concise description of the PR changes for release notes automation. Include:
8686
- What changed and why (1-3 sentences, user-facing language)
87-
- Code usage examples if new commands, flags, or APIs were added (as fenced code blocks)
88-
- A "**Breaking Change:**" callout if existing behavior changed, APIs were removed/renamed, defaults changed, or command signatures changed. Describe what breaks and how to migrate.
87+
- Code usage examples if new public commands, flags, or APIs were added (as fenced code blocks)
88+
- A "**Breaking Change:**" callout ONLY if the change would break existing users who upgrade without modifying their code or configuration. Specifically, flag as breaking only if:
89+
• A previously existing command, flag, or API was removed or renamed
90+
• The default value of an existing option was changed in a way that alters previous behavior
91+
• An existing command's output format changed in a way that breaks automation
92+
• A required argument was added to an existing command (not a new command)
93+
- Do NOT flag as breaking change:
94+
• Adding new commands, subcommands, or flags
95+
• Adding new optional parameters to existing commands
96+
• Adding new features that don't affect existing usage
97+
• Internal refactors that don't change public CLI surface
98+
• Changes to build scripts, tests, CI, or docs
99+
- When uncertain whether something is a breaking change, do NOT flag it as breaking.
89100
90101
2. **SUGGESTED_LABELS**: A comma-separated list of labels to apply. Only use labels from this exact set: ${ALLOWED_LABELS.join(', ')}
91102
- Always suggest exactly one type label (bug, enhancement, documentation)
92-
- Add "breaking-change" if there are breaking changes
103+
- Add "breaking-change" ONLY if you are confident there is a genuine breaking change per the criteria above. When in doubt, omit it.
93104
- Add framework labels (electron, dotnet, rust, python) if the change is framework-specific
94105
95106
Format your response exactly like this:

0 commit comments

Comments
 (0)