-
Notifications
You must be signed in to change notification settings - Fork 273
Add automation to flag PRs on areas without an active SIG/project #2835
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Add automation to flag PRs on areas without an active SIG/project #2835
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice work! one minor question
const changes: string[] = process.env.CHANGED_FILES!.split(','); | ||
|
||
/** | ||
* Checks if the PR already has the 'triage:accepted:ready' label, meaning the triage checks should be skipped. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are there other labels we have (other than ready) that would make us want to skip the check?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not today, but I can add if you prefer a more explicit one for that purpose. Let me know!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds GitHub automation to automatically flag and close PRs that modify semantic convention areas without an active SIG/project, implementing the requirements outlined in issue #2834. The automation helps enforce contribution guidelines by preventing changes to unmaintained semantic convention areas while providing a bypass mechanism for maintainers.
Key changes:
- Adds GitHub workflow to automatically validate PR ownership for changes to
model/
directory - Implements TypeScript automation scripts to check for active SIG/project ownership of modified areas
- Updates issue management documentation to reflect new automated triage rules
Reviewed Changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 2 comments.
Show a summary per file
File | Description |
---|---|
issue-management.md | Updates triage documentation to include new automated checks for inactive areas |
.github/workflows/check-changes-ownership.yml | Defines GitHub workflow to check PR ownership and validate changes |
.github/scripts/triage/utils.ts | Provides utility functions for parsing area metadata and determining active areas |
.github/scripts/triage/package.json | Package configuration for TypeScript automation scripts |
.github/scripts/triage/check-changes-ownership.ts | Main automation script that validates PR ownership and auto-closes non-compliant PRs |
Comments suppressed due to low confidence (1)
issue-management.md:1
- Corrected spelling of 'stablished' to 'established'.
# Issue and PR triage management
b323e87
to
26992c4
Compare
Fixes ##2834
Changes
This PR adds automation to flag and auto-close PRs with changes on semantic convention areas that do not have an active sig/project. It does so by:
model/
folder the PR is proposingtriage:rejected:declined
triage:accepted:ready
(if the PR gets closed, apply the label first and then re-opening the PR)I decided to go with Javascript for the scripts as that seems to be the common pattern for it. I initially wanted to use
github-script
for the action, but decided against it because it just added complexity where not needed. Also, the way it is now I can use "some" Typescript features to easy the development part. Node 22+ has type stripping so at least we get some IDE help. Much better than bash scripts :DThis is how the comment will look like:
Merge requirement checklist
[chore]