fix: close stale weekly triage reports before creating a new one
This commit is contained in:
@@ -494,6 +494,12 @@ All work is tracked in the [GitHub Project board](https://github.com/users/Danie
|
||||
|
||||
All three labels trigger the `add-to-project.yml` workflow, which automatically adds the issue to the Project board.
|
||||
|
||||
### Weekly Triage Report Hygiene
|
||||
|
||||
- There must never be more than one open `Weekly Triage Report - YYYY-MM-DD` issue at the same time.
|
||||
- Before a new weekly triage report issue is created, close any older open weekly triage report issue and leave a short closing comment.
|
||||
- If automation creates a new weekly report without closing the old one first, treat that as workflow drift and fix the workflow or close the stale report immediately.
|
||||
|
||||
---
|
||||
|
||||
## Complete Workflow Summary
|
||||
|
||||
@@ -68,6 +68,36 @@ jobs:
|
||||
const title = `${{ steps.summary.outputs.title }}`;
|
||||
const body = `${{ steps.summary.outputs.body }}`;
|
||||
|
||||
const existingReports = await github.paginate(github.rest.issues.listForRepo, {
|
||||
owner,
|
||||
repo,
|
||||
state: 'open',
|
||||
labels: 'triage',
|
||||
per_page: 100,
|
||||
});
|
||||
|
||||
for (const issue of existingReports) {
|
||||
if (issue.pull_request) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (issue.title.startsWith('Weekly Triage Report - ') && issue.title !== title) {
|
||||
await github.rest.issues.createComment({
|
||||
owner,
|
||||
repo,
|
||||
issue_number: issue.number,
|
||||
body: 'Closing this older weekly triage report before publishing the next one so only one weekly report issue stays open at a time.',
|
||||
});
|
||||
|
||||
await github.rest.issues.update({
|
||||
owner,
|
||||
repo,
|
||||
issue_number: issue.number,
|
||||
state: 'closed',
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
await github.rest.issues.create({
|
||||
owner,
|
||||
repo,
|
||||
|
||||
Reference in New Issue
Block a user