eslint-plugin-primer-react 9.1.0-rc.eceb9b8 → 9.2.0-rc.a3a7798

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.gitattributes ADDED
@@ -0,0 +1 @@
1
+ .github/workflows/*.lock.yml linguist-generated=true merge=ours
@@ -0,0 +1,14 @@
1
+ {
2
+ "entries": {
3
+ "github/gh-aw-actions/setup-cli@v0.83.1": {
4
+ "repo": "github/gh-aw-actions/setup-cli",
5
+ "version": "v0.83.1",
6
+ "sha": "8bdba8075360648fe6802302a5b4e016361dc6ac"
7
+ },
8
+ "github/gh-aw-actions/setup@v0.83.1": {
9
+ "repo": "github/gh-aw-actions/setup",
10
+ "version": "v0.83.1",
11
+ "sha": "8bdba8075360648fe6802302a5b4e016361dc6ac"
12
+ }
13
+ }
14
+ }
@@ -4,6 +4,8 @@ updates:
4
4
  directory: '/'
5
5
  schedule:
6
6
  interval: 'weekly'
7
+ cooldown:
8
+ default-days: 7
7
9
  labels:
8
10
  - 'dependencies'
9
11
  - 'skip changeset'
@@ -11,6 +13,8 @@ updates:
11
13
  directory: '/'
12
14
  schedule:
13
15
  interval: weekly
16
+ cooldown:
17
+ default-days: 7
14
18
  labels:
15
19
  - 'dependencies'
16
20
  - 'skip changeset'
@@ -0,0 +1,633 @@
1
+ # This file was automatically generated by pkg/workflow/maintenance_workflow.go (v0.83.1). DO NOT EDIT. To debug this workflow, load the skill at https://github.com/github/gh-aw/blob/main/debug.md
2
+ #
3
+ # ___ _ _
4
+ # / _ \ | | (_)
5
+ # | |_| | __ _ ___ _ __ | |_ _ ___
6
+ # | _ |/ _` |/ _ \ '_ \| __| |/ __|
7
+ # | | | | (_| | __/ | | | |_| | (__
8
+ # \_| |_/\__, |\___|_| |_|\__|_|\___|
9
+ # __/ |
10
+ # _ _ |___/
11
+ # | | | | / _| |
12
+ # | | | | ___ _ __ _ __| |_| | _____ ____
13
+ # | |/\| |/ _ \ '__| |/ /| _| |/ _ \ \ /\ / / ___|
14
+ # \ /\ / (_) | | | | ( | | | | (_) \ V V /\__ \
15
+ # \/ \/ \___/|_| |_|\_\|_| |_|\___/ \_/\_/ |___/
16
+ #
17
+ #
18
+ # To regenerate this workflow, run:
19
+ # gh aw compile
20
+ # Not all edits will cause changes to this file.
21
+ #
22
+ # For more information: https://github.github.com/gh-aw/introduction/overview/
23
+ #
24
+ # This file defines the generated agentic maintenance workflow for this repository.
25
+ # It runs scheduled cleanup for expiring safe outputs and supports manual maintenance operations.
26
+ #
27
+ # This workflow is generated automatically when workflows use expiring safe outputs
28
+ # or when repository maintenance features are enabled in .github/workflows/aw.json.
29
+ #
30
+ # To disable maintenance workflow generation, set in .github/workflows/aw.json:
31
+ # {"maintenance": false}
32
+ #
33
+ # Agentic maintenance docs:
34
+ # https://github.github.com/gh-aw/reference/ephemerals/#manual-maintenance-operations
35
+ #
36
+ name: Agentic Maintenance
37
+
38
+ on:
39
+ schedule:
40
+ - cron: "37 0 * * *" # Daily (based on minimum expires: 30 days)
41
+ workflow_dispatch:
42
+ inputs:
43
+ operation:
44
+ description: 'Optional maintenance operation to run'
45
+ required: false
46
+ type: choice
47
+ default: ''
48
+ options:
49
+ - ''
50
+ - 'disable'
51
+ - 'enable'
52
+ - 'update'
53
+ - 'upgrade'
54
+ - 'safe_outputs'
55
+ - 'create_labels'
56
+ - 'activity_report'
57
+ - 'close_agentic_workflows_issues'
58
+ - 'clean_cache_memories'
59
+ - 'update_pull_request_branches'
60
+ - 'validate'
61
+ - 'forecast'
62
+ run_url:
63
+ description: 'Run URL or run ID to replay safe outputs from (e.g. https://github.com/owner/repo/actions/runs/12345 or 12345). Required when operation is safe_outputs.'
64
+ required: false
65
+ type: string
66
+ default: ''
67
+ workflow_call:
68
+ inputs:
69
+ operation:
70
+ description: 'Optional maintenance operation to run (disable, enable, update, upgrade, safe_outputs, create_labels, activity_report, close_agentic_workflows_issues, clean_cache_memories, update_pull_request_branches, validate, forecast)'
71
+ required: false
72
+ type: string
73
+ default: ''
74
+ run_url:
75
+ description: 'Run URL or run ID to replay safe outputs from (e.g. https://github.com/owner/repo/actions/runs/12345 or 12345). Required when operation is safe_outputs.'
76
+ required: false
77
+ type: string
78
+ default: ''
79
+ outputs:
80
+ operation_completed:
81
+ description: 'The maintenance operation that was completed (empty when none ran or a scheduled job ran)'
82
+ value: ${{ jobs.run_operation.outputs.operation || inputs.operation }}
83
+ applied_run_url:
84
+ description: 'The run URL that safe outputs were applied from'
85
+ value: ${{ jobs.apply_safe_outputs.outputs.run_url }}
86
+
87
+ permissions: {}
88
+
89
+ jobs:
90
+ close-expired-discussions:
91
+ if: ${{ (!(github.event.repository.fork)) && github.event_name != 'push' && (github.event_name != 'workflow_dispatch' && github.event_name != 'workflow_call' || inputs.operation == '') }}
92
+ runs-on: ubuntu-slim
93
+ permissions:
94
+ discussions: write
95
+ steps:
96
+ - name: Setup Scripts
97
+ uses: github/gh-aw-actions/setup@8bdba8075360648fe6802302a5b4e016361dc6ac # v0.83.1
98
+ with:
99
+ destination: ${{ runner.temp }}/gh-aw/actions
100
+
101
+ - name: Close expired discussions
102
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
103
+ with:
104
+ script: |
105
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
106
+ setupGlobals(core, github, context, exec, io, getOctokit);
107
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/close_expired_discussions.cjs');
108
+ await main();
109
+ close-expired-issues:
110
+ if: ${{ (!(github.event.repository.fork)) && github.event_name != 'push' && (github.event_name != 'workflow_dispatch' && github.event_name != 'workflow_call' || inputs.operation == '') }}
111
+ runs-on: ubuntu-slim
112
+ permissions:
113
+ issues: write
114
+ steps:
115
+ - name: Setup Scripts
116
+ uses: github/gh-aw-actions/setup@8bdba8075360648fe6802302a5b4e016361dc6ac # v0.83.1
117
+ with:
118
+ destination: ${{ runner.temp }}/gh-aw/actions
119
+
120
+ - name: Close expired issues
121
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
122
+ with:
123
+ script: |
124
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
125
+ setupGlobals(core, github, context, exec, io, getOctokit);
126
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/close_expired_issues.cjs');
127
+ await main();
128
+ close-expired-pull-requests:
129
+ if: ${{ (!(github.event.repository.fork)) && github.event_name != 'push' && (github.event_name != 'workflow_dispatch' && github.event_name != 'workflow_call' || inputs.operation == '') }}
130
+ runs-on: ubuntu-slim
131
+ permissions:
132
+ pull-requests: write
133
+ steps:
134
+ - name: Setup Scripts
135
+ uses: github/gh-aw-actions/setup@8bdba8075360648fe6802302a5b4e016361dc6ac # v0.83.1
136
+ with:
137
+ destination: ${{ runner.temp }}/gh-aw/actions
138
+
139
+ - name: Close expired pull requests
140
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
141
+ with:
142
+ script: |
143
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
144
+ setupGlobals(core, github, context, exec, io, getOctokit);
145
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/close_expired_pull_requests.cjs');
146
+ await main();
147
+
148
+ cleanup-cache-memory:
149
+ if: ${{ (!(github.event.repository.fork)) && github.event_name != 'push' && (github.event_name != 'workflow_dispatch' && github.event_name != 'workflow_call' || inputs.operation == '' || inputs.operation == 'clean_cache_memories') }}
150
+ runs-on: ubuntu-slim
151
+ permissions:
152
+ actions: write
153
+ steps:
154
+ - name: Setup Scripts
155
+ uses: github/gh-aw-actions/setup@8bdba8075360648fe6802302a5b4e016361dc6ac # v0.83.1
156
+ with:
157
+ destination: ${{ runner.temp }}/gh-aw/actions
158
+
159
+ - name: Cleanup outdated cache-memory entries
160
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
161
+ with:
162
+ script: |
163
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
164
+ setupGlobals(core, github, context, exec, io, getOctokit);
165
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/cleanup_cache_memory.cjs');
166
+ await main();
167
+
168
+ run_operation:
169
+ if: ${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call') && inputs.operation != '' && inputs.operation != 'safe_outputs' && inputs.operation != 'create_labels' && inputs.operation != 'activity_report' && inputs.operation != 'close_agentic_workflows_issues' && inputs.operation != 'clean_cache_memories' && inputs.operation != 'update_pull_request_branches' && inputs.operation != 'validate' && inputs.operation != 'forecast' && (!(github.event.repository.fork)) }}
170
+ runs-on: ubuntu-slim
171
+ permissions:
172
+ actions: write
173
+ contents: write
174
+ pull-requests: write
175
+ outputs:
176
+ operation: ${{ steps.record.outputs.operation }}
177
+ steps:
178
+ - name: Checkout repository
179
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
180
+ with:
181
+ persist-credentials: false
182
+
183
+ - name: Setup Scripts
184
+ uses: github/gh-aw-actions/setup@8bdba8075360648fe6802302a5b4e016361dc6ac # v0.83.1
185
+ with:
186
+ destination: ${{ runner.temp }}/gh-aw/actions
187
+
188
+ - name: Check admin/maintainer permissions
189
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
190
+ with:
191
+ github-token: ${{ secrets.GITHUB_TOKEN }}
192
+ script: |
193
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
194
+ setupGlobals(core, github, context, exec, io, getOctokit);
195
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/check_team_member.cjs');
196
+ await main();
197
+
198
+ - name: Install gh-aw
199
+ uses: github/gh-aw-actions/setup-cli@8bdba8075360648fe6802302a5b4e016361dc6ac # v0.83.1
200
+ with:
201
+ version: v0.83.1
202
+
203
+ - name: Run operation
204
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
205
+ env:
206
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
207
+ GH_AW_OPERATION: ${{ inputs.operation }}
208
+ GH_AW_CMD_PREFIX: gh aw
209
+ with:
210
+ github-token: ${{ secrets.GITHUB_TOKEN }}
211
+ script: |
212
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
213
+ setupGlobals(core, github, context, exec, io, getOctokit);
214
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/run_operation_update_upgrade.cjs');
215
+ await main();
216
+
217
+ - name: Record outputs
218
+ id: record
219
+ env:
220
+ GH_AW_OPERATION: ${{ inputs.operation }}
221
+ run: echo "operation=$GH_AW_OPERATION" >> "$GITHUB_OUTPUT"
222
+
223
+ update_pull_request_branches:
224
+ if: ${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call') && inputs.operation == 'update_pull_request_branches' && (!(github.event.repository.fork)) }}
225
+ runs-on: ubuntu-slim
226
+ permissions:
227
+ contents: write
228
+ pull-requests: write
229
+ steps:
230
+ - name: Setup Scripts
231
+ uses: github/gh-aw-actions/setup@8bdba8075360648fe6802302a5b4e016361dc6ac # v0.83.1
232
+ with:
233
+ destination: ${{ runner.temp }}/gh-aw/actions
234
+
235
+ - name: Check admin/maintainer permissions
236
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
237
+ with:
238
+ github-token: ${{ secrets.GITHUB_TOKEN }}
239
+ script: |
240
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
241
+ setupGlobals(core, github, context, exec, io, getOctokit);
242
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/check_team_member.cjs');
243
+ await main();
244
+
245
+ - name: Update pull request branches
246
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
247
+ env:
248
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
249
+ with:
250
+ github-token: ${{ secrets.GITHUB_TOKEN }}
251
+ script: |
252
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
253
+ setupGlobals(core, github, context, exec, io, getOctokit);
254
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/update_pull_request_branches.cjs');
255
+ await main();
256
+
257
+ apply_safe_outputs:
258
+ if: ${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call') && inputs.operation == 'safe_outputs' && (!(github.event.repository.fork)) }}
259
+ runs-on: ubuntu-slim
260
+ permissions:
261
+ actions: read
262
+ contents: write
263
+ discussions: write
264
+ issues: write
265
+ pull-requests: write
266
+ outputs:
267
+ run_url: ${{ steps.record.outputs.run_url }}
268
+ steps:
269
+ - name: Checkout actions folder
270
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
271
+ with:
272
+ sparse-checkout: |
273
+ actions
274
+ clean: false
275
+ persist-credentials: false
276
+
277
+ - name: Setup Scripts
278
+ uses: github/gh-aw-actions/setup@8bdba8075360648fe6802302a5b4e016361dc6ac # v0.83.1
279
+ with:
280
+ destination: ${{ runner.temp }}/gh-aw/actions
281
+
282
+ - name: Check admin/maintainer permissions
283
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
284
+ with:
285
+ github-token: ${{ secrets.GITHUB_TOKEN }}
286
+ script: |
287
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
288
+ setupGlobals(core, github, context, exec, io, getOctokit);
289
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/check_team_member.cjs');
290
+ await main();
291
+
292
+ - name: Apply Safe Outputs
293
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
294
+ env:
295
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
296
+ GH_AW_RUN_URL: ${{ inputs.run_url }}
297
+ with:
298
+ github-token: ${{ secrets.GITHUB_TOKEN }}
299
+ script: |
300
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
301
+ setupGlobals(core, github, context, exec, io, getOctokit);
302
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/apply_safe_outputs_replay.cjs');
303
+ await main();
304
+
305
+ - name: Record outputs
306
+ id: record
307
+ env:
308
+ GH_AW_RUN_URL: ${{ inputs.run_url }}
309
+ run: echo "run_url=$GH_AW_RUN_URL" >> "$GITHUB_OUTPUT"
310
+
311
+ create_labels:
312
+ if: ${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call') && inputs.operation == 'create_labels' && (!(github.event.repository.fork)) }}
313
+ runs-on: ubuntu-slim
314
+ permissions:
315
+ contents: read
316
+ issues: write
317
+ steps:
318
+ - name: Checkout repository
319
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
320
+ with:
321
+ persist-credentials: false
322
+
323
+ - name: Setup Scripts
324
+ uses: github/gh-aw-actions/setup@8bdba8075360648fe6802302a5b4e016361dc6ac # v0.83.1
325
+ with:
326
+ destination: ${{ runner.temp }}/gh-aw/actions
327
+
328
+ - name: Check admin/maintainer permissions
329
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
330
+ with:
331
+ github-token: ${{ secrets.GITHUB_TOKEN }}
332
+ script: |
333
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
334
+ setupGlobals(core, github, context, exec, io, getOctokit);
335
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/check_team_member.cjs');
336
+ await main();
337
+
338
+ - name: Install gh-aw
339
+ uses: github/gh-aw-actions/setup-cli@8bdba8075360648fe6802302a5b4e016361dc6ac # v0.83.1
340
+ with:
341
+ version: v0.83.1
342
+
343
+ - name: Create missing labels
344
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
345
+ env:
346
+ GH_AW_CMD_PREFIX: gh aw
347
+ with:
348
+ github-token: ${{ secrets.GITHUB_TOKEN }}
349
+ script: |
350
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
351
+ setupGlobals(core, github, context, exec, io, getOctokit);
352
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/create_labels.cjs');
353
+ await main();
354
+
355
+ activity_report:
356
+ if: ${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call') && inputs.operation == 'activity_report' && (!(github.event.repository.fork)) }}
357
+ runs-on: ubuntu-slim
358
+ timeout-minutes: 120
359
+ permissions:
360
+ actions: read
361
+ contents: read
362
+ issues: write
363
+ steps:
364
+ - name: Checkout repository
365
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
366
+ with:
367
+ persist-credentials: false
368
+
369
+ - name: Setup Scripts
370
+ uses: github/gh-aw-actions/setup@8bdba8075360648fe6802302a5b4e016361dc6ac # v0.83.1
371
+ with:
372
+ destination: ${{ runner.temp }}/gh-aw/actions
373
+
374
+ - name: Check admin/maintainer permissions
375
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
376
+ with:
377
+ github-token: ${{ secrets.GITHUB_TOKEN }}
378
+ script: |
379
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
380
+ setupGlobals(core, github, context, exec, io, getOctokit);
381
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/check_team_member.cjs');
382
+ await main();
383
+
384
+ - name: Install gh-aw
385
+ uses: github/gh-aw-actions/setup-cli@8bdba8075360648fe6802302a5b4e016361dc6ac # v0.83.1
386
+ with:
387
+ version: v0.83.1
388
+
389
+ - name: Restore activity report logs cache
390
+ id: activity_report_logs_cache
391
+ uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
392
+ with:
393
+ path: ./.cache/gh-aw/activity-report-logs
394
+ key: ${{ runner.os }}-activity-report-logs-${{ github.repository }}-${{ github.ref_name }}-${{ github.run_id }}
395
+ restore-keys: |
396
+ ${{ runner.os }}-activity-report-logs-${{ github.repository }}-
397
+ ${{ runner.os }}-activity-report-logs-
398
+ - name: Download activity report logs
399
+ timeout-minutes: 20
400
+ shell: bash
401
+ env:
402
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
403
+ GH_AW_CMD_PREFIX: gh aw
404
+ run: |
405
+ ${GH_AW_CMD_PREFIX} logs \
406
+ --repo "$GITHUB_REPOSITORY" \
407
+ --start-date -1w \
408
+ --count 500 \
409
+ --output ./.cache/gh-aw/activity-report-logs \
410
+ --format markdown \
411
+ --report-file ./.cache/gh-aw/activity-report-logs/report.md
412
+
413
+ - name: Save activity report logs cache
414
+ if: ${{ always() }}
415
+ uses: actions/cache/save@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
416
+ with:
417
+ path: ./.cache/gh-aw/activity-report-logs
418
+ key: ${{ steps.activity_report_logs_cache.outputs.cache-primary-key }}
419
+
420
+ - name: Generate activity report issue
421
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
422
+ with:
423
+ github-token: ${{ secrets.GITHUB_TOKEN }}
424
+ script: |
425
+ const fs = require('node:fs');
426
+ const reportPath = './.cache/gh-aw/activity-report-logs/report.md';
427
+ if (!fs.existsSync(reportPath)) {
428
+ core.warning('Activity report markdown not found at ' + reportPath + '; skipping issue creation.');
429
+ return;
430
+ }
431
+ let reportBody = '';
432
+ try {
433
+ reportBody = fs.readFileSync(reportPath, 'utf8').trim();
434
+ } catch (error) {
435
+ core.warning('Failed to read activity report markdown at ' + reportPath + ': ' + error.message);
436
+ return;
437
+ }
438
+ if (!reportBody) {
439
+ core.warning('Activity report markdown is empty at ' + reportPath + '; skipping issue creation.');
440
+ return;
441
+ }
442
+ const repoSlug = context.repo.owner + '/' + context.repo.repo;
443
+ const body = [
444
+ '### Agentic workflow activity report',
445
+ '',
446
+ 'Repository: ' + repoSlug,
447
+ 'Generated at: ' + new Date().toISOString(),
448
+ '',
449
+ reportBody,
450
+ ].join('\n');
451
+ const createdIssue = await github.rest.issues.create({
452
+ owner: context.repo.owner,
453
+ repo: context.repo.repo,
454
+ title: '[aw] agentic status report',
455
+ body,
456
+ labels: ['agentic-workflows'],
457
+ });
458
+ core.info('Created issue #' + createdIssue.data.number + ': ' + createdIssue.data.html_url);
459
+
460
+ forecast_report:
461
+ if: ${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call') && inputs.operation == 'forecast' && (!(github.event.repository.fork)) }}
462
+ runs-on: ubuntu-slim
463
+ timeout-minutes: 60
464
+ permissions:
465
+ actions: read
466
+ contents: read
467
+ issues: write
468
+ steps:
469
+ - name: Checkout repository
470
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
471
+ with:
472
+ persist-credentials: false
473
+
474
+ - name: Setup Scripts
475
+ uses: github/gh-aw-actions/setup@8bdba8075360648fe6802302a5b4e016361dc6ac # v0.83.1
476
+ with:
477
+ destination: ${{ runner.temp }}/gh-aw/actions
478
+
479
+ - name: Check admin/maintainer permissions
480
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
481
+ with:
482
+ github-token: ${{ secrets.GITHUB_TOKEN }}
483
+ script: |
484
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
485
+ setupGlobals(core, github, context, exec, io, getOctokit);
486
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/check_team_member.cjs');
487
+ await main();
488
+
489
+ - name: Install gh-aw
490
+ uses: github/gh-aw-actions/setup-cli@8bdba8075360648fe6802302a5b4e016361dc6ac # v0.83.1
491
+ with:
492
+ version: v0.83.1
493
+
494
+ - name: Restore forecast report logs cache
495
+ id: forecast_report_logs_cache
496
+ uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
497
+ with:
498
+ path: ./.github/aw/logs
499
+ key: ${{ runner.os }}-forecast-report-logs-${{ github.repository }}-${{ github.ref_name }}-${{ github.run_id }}
500
+ restore-keys: |
501
+ ${{ runner.os }}-forecast-report-logs-${{ github.repository }}-
502
+ ${{ runner.os }}-forecast-report-logs-
503
+
504
+ - name: Generate forecast report
505
+ id: generate_forecast_report
506
+ timeout-minutes: 30
507
+ shell: bash
508
+ env:
509
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
510
+ DEBUG: "*"
511
+ GH_AW_CMD_PREFIX: gh aw
512
+ run: |
513
+ mkdir -p ./.cache/gh-aw/forecast
514
+ set +e
515
+ ${GH_AW_CMD_PREFIX} forecast --repo "$GITHUB_REPOSITORY" --timeout 30 --verbose --json > ./.cache/gh-aw/forecast/report.json
516
+ forecast_exit_code=$?
517
+ set -e
518
+ if [ "${forecast_exit_code}" -eq 124 ]; then
519
+ echo '{"outcome":"timeout","message":"Forecast computation timed out after 30 minutes."}' > ./.cache/gh-aw/forecast/error.json
520
+ echo "::error::Forecast computation timed out after 30 minutes."
521
+ exit 1
522
+ fi
523
+ if [ "${forecast_exit_code}" -ne 0 ]; then
524
+ echo '{"outcome":"error","message":"Forecast computation failed before producing a report."}' > ./.cache/gh-aw/forecast/error.json
525
+ echo "::error::Forecast computation failed with exit code ${forecast_exit_code}."
526
+ exit 1
527
+ fi
528
+
529
+ - name: Debug forecast logs folder
530
+ if: ${{ always() }}
531
+ shell: bash
532
+ run: |
533
+ if [ ! -d ./.github/aw/logs ]; then
534
+ echo "Logs directory not found: ./.github/aw/logs"
535
+ exit 0
536
+ fi
537
+ echo "Files under ./.github/aw/logs:"
538
+ find ./.github/aw/logs -type f | sort
539
+
540
+ - name: Save forecast report logs cache
541
+ if: ${{ always() }}
542
+ uses: actions/cache/save@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
543
+ with:
544
+ path: ./.github/aw/logs
545
+ key: ${{ runner.os }}-forecast-report-logs-${{ github.repository }}-${{ github.ref_name }}-${{ github.run_id }}
546
+
547
+ - name: Generate forecast issue
548
+ if: ${{ always() }}
549
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
550
+ env:
551
+ FORECAST_STEP_OUTCOME: ${{ steps.generate_forecast_report.outcome }}
552
+ with:
553
+ github-token: ${{ secrets.GITHUB_TOKEN }}
554
+ script: |
555
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
556
+ setupGlobals(core, github, context, exec, io, getOctokit);
557
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/create_forecast_issue.cjs');
558
+ await main();
559
+
560
+ close_agentic_workflows_issues:
561
+ if: ${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call') && inputs.operation == 'close_agentic_workflows_issues' && (!(github.event.repository.fork)) }}
562
+ runs-on: ubuntu-slim
563
+ permissions:
564
+ issues: write
565
+ steps:
566
+ - name: Setup Scripts
567
+ uses: github/gh-aw-actions/setup@8bdba8075360648fe6802302a5b4e016361dc6ac # v0.83.1
568
+ with:
569
+ destination: ${{ runner.temp }}/gh-aw/actions
570
+
571
+ - name: Check admin/maintainer permissions
572
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
573
+ with:
574
+ github-token: ${{ secrets.GITHUB_TOKEN }}
575
+ script: |
576
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
577
+ setupGlobals(core, github, context, exec, io, getOctokit);
578
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/check_team_member.cjs');
579
+ await main();
580
+
581
+ - name: Close no-repro agentic-workflows issues
582
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
583
+ with:
584
+ github-token: ${{ secrets.GITHUB_TOKEN }}
585
+ script: |
586
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
587
+ setupGlobals(core, github, context, exec, io, getOctokit);
588
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/close_agentic_workflows_issues.cjs');
589
+ await main();
590
+
591
+ validate_workflows:
592
+ if: ${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call') && inputs.operation == 'validate' && (!(github.event.repository.fork)) }}
593
+ runs-on: ubuntu-latest
594
+ permissions:
595
+ contents: read
596
+ issues: write
597
+ steps:
598
+ - name: Checkout repository
599
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
600
+ with:
601
+ persist-credentials: false
602
+
603
+ - name: Setup Scripts
604
+ uses: github/gh-aw-actions/setup@8bdba8075360648fe6802302a5b4e016361dc6ac # v0.83.1
605
+ with:
606
+ destination: ${{ runner.temp }}/gh-aw/actions
607
+
608
+ - name: Check admin/maintainer permissions
609
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
610
+ with:
611
+ github-token: ${{ secrets.GITHUB_TOKEN }}
612
+ script: |
613
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
614
+ setupGlobals(core, github, context, exec, io, getOctokit);
615
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/check_team_member.cjs');
616
+ await main();
617
+
618
+ - name: Install gh-aw
619
+ uses: github/gh-aw-actions/setup-cli@8bdba8075360648fe6802302a5b4e016361dc6ac # v0.83.1
620
+ with:
621
+ version: v0.83.1
622
+
623
+ - name: Validate workflows and file issue on findings
624
+ uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
625
+ env:
626
+ GH_AW_CMD_PREFIX: gh aw
627
+ with:
628
+ github-token: ${{ secrets.GITHUB_TOKEN }}
629
+ script: |
630
+ const { setupGlobals } = require('${{ runner.temp }}/gh-aw/actions/setup_globals.cjs');
631
+ setupGlobals(core, github, context, exec, io, getOctokit);
632
+ const { main } = require('${{ runner.temp }}/gh-aw/actions/run_validate_workflows.cjs');
633
+ await main();
@@ -18,7 +18,7 @@ jobs:
18
18
  steps:
19
19
  - uses: actions/checkout@v7
20
20
  - name: 'Check for changeset'
21
- uses: brettcannon/check-for-changed-files@v1
21
+ uses: brettcannon/check-for-changed-files@v1.2.1
22
22
  with:
23
23
  file-pattern: '.changeset/*.md'
24
24
  skip-label: 'skip changeset'