Skip to content

Commit 50cefd3

Browse files
Merge branch 'mono:main' into grcontext-metal-finalizer
2 parents c9de72c + 528dc00 commit 50cefd3

File tree

1 file changed

+49
-16
lines changed

1 file changed

+49
-16
lines changed

.github/workflows/label-with-ai.yml

Lines changed: 49 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,61 +1,94 @@
11
name: Apply labels using AI
22

33
on:
4+
# When someone opens a new issue
45
issues:
5-
types: [opened, reopened]
6+
types: [opened]
7+
# When someone opens a new pull request
8+
pull_request:
9+
types: [opened]
10+
# When someone adds the "/triage" comments
11+
issue_comment:
12+
types: [created]
13+
# When the workflow is run manually
614
workflow_dispatch:
715
inputs:
816
issue_number:
917
description: 'Issue number to triage'
1018
required: true
1119
type: number
20+
dry_run:
21+
description: 'Dry Run (no writes)'
22+
required: false
23+
type: boolean
24+
default: false
25+
26+
permissions:
27+
contents: read
28+
issues: write
29+
pull-requests: write
30+
models: read
1231

1332
jobs:
1433
apply-label-and-add-comment:
1534
runs-on: ubuntu-latest
16-
permissions:
17-
contents: read
18-
issues: write
19-
models: read
35+
if: |
36+
github.event_name == 'issues' ||
37+
github.event_name == 'pull_request' ||
38+
github.event_name == 'workflow_dispatch' ||
39+
(github.event_name == 'issue_comment' && startsWith(github.event.comment.body, '/triage'))
2040
env:
41+
TRIAGE_AI_MODEL: openai/gpt-4o-mini # slightly cheaper model
2142
TRIAGE_AI_TOKEN: ${{ secrets.TRIAGE_AI_TOKEN }}
2243
steps:
2344

2445
- name: Checkout
2546
uses: actions/checkout@v4
2647

48+
- name: Get Issue or PR Number
49+
id: get-number
50+
shell: pwsh
51+
run: |
52+
if ("${{ github.event_name }}" -eq "workflow_dispatch") {
53+
$number="${{ inputs.issue_number }}"
54+
} else {
55+
$number="${{ github.event.number }}"
56+
}
57+
echo "number=$number" >> $env:GITHUB_OUTPUT
58+
echo "I will triage issue number #$number"
59+
2760
- name: Determine AREA labels
28-
uses: mattleibow/triage-assistant@v0
61+
uses: mattleibow/triage-assistant/apply-labels@v0
2962
with:
30-
issue: ${{ inputs.issue_number || github.event.issue.number }}
63+
issue: ${{ steps.get-number.outputs.number }}
3164
label-prefix: 'area/'
3265
template: 'single-label'
3366

3467
- name: Determine PLATFORM labels
35-
uses: mattleibow/triage-assistant@v0
68+
uses: mattleibow/triage-assistant/apply-labels@v0
3669
with:
37-
issue: ${{ inputs.issue_number || github.event.issue.number }}
70+
issue: ${{ steps.get-number.outputs.number }}
3871
label-prefix: 'os/'
3972
template: 'multi-label'
4073

4174
- name: Determine BACKEND labels
42-
uses: mattleibow/triage-assistant@v0
75+
uses: mattleibow/triage-assistant/apply-labels@v0
4376
with:
44-
issue: ${{ inputs.issue_number || github.event.issue.number }}
77+
issue: ${{ steps.get-number.outputs.number }}
4578
label-prefix: 'backend/'
4679
template: 'multi-label'
4780

4881
- name: Determine TENET labels
49-
uses: mattleibow/triage-assistant@v0
82+
uses: mattleibow/triage-assistant/apply-labels@v0
5083
with:
51-
issue: ${{ inputs.issue_number || github.event.issue.number }}
84+
issue: ${{ steps.get-number.outputs.number }}
5285
label-prefix: 'tenet/'
5386
template: 'single-label'
5487

5588
- name: Apply all labels and add comment
56-
uses: mattleibow/triage-assistant@v0
89+
uses: mattleibow/triage-assistant/apply-labels@v0
5790
with:
58-
issue: ${{ inputs.issue_number || github.event.issue.number }}
91+
issue: ${{ steps.get-number.outputs.number }}
5992
apply-labels: true
6093
apply-comment: true
61-
dry-run: true
94+
dry-run: ${{ inputs.dry_run || false }}

0 commit comments

Comments
 (0)