diff --git a/.github/workflows/README.md b/.github/workflows/README.md index 2c739bd56129..4aed9617cae4 100644 --- a/.github/workflows/README.md +++ b/.github/workflows/README.md @@ -64,7 +64,7 @@ This results in a key with the following semantics: ## Required Status Checks -The "Required Status Checks" branch ruleset is implemented in two top-level workflows: `pr.yml` and `merge-group.yml`. +The "Required Status Checks" branch ruleset is implemented in two top-level workflows: `pull-request-target.yml` and `merge-group.yml`. The PR workflow defines all checks that need to succeed to add a Pull Request to the Merge Queue. If no Merge Queue is set up for a branch, the PR workflow defines the checks required to merge into the target branch. diff --git a/.github/workflows/pr.yml b/.github/workflows/pull-request-target.yml similarity index 100% rename from .github/workflows/pr.yml rename to .github/workflows/pull-request-target.yml diff --git a/.github/workflows/reviewers.yml b/.github/workflows/reviewers.yml index b5d0ada43b9d..f22e44d7cbff 100644 --- a/.github/workflows/reviewers.yml +++ b/.github/workflows/reviewers.yml @@ -102,7 +102,7 @@ jobs: const run_id = (await github.rest.actions.listWorkflowRuns({ owner: context.repo.owner, repo: context.repo.repo, - workflow_id: context.eventName === 'pull_request' ? 'test.yml' : 'pr.yml', + workflow_id: context.eventName === 'pull_request' ? 'test.yml' : 'pull-request-target.yml', event: context.eventName, head_sha: context.payload.pull_request.head.sha })).data.workflow_runs[0].id diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 4cac4b3f0bb6..b26f7ee98998 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -63,7 +63,7 @@ jobs: '.github/workflows/eval.yml', '.github/workflows/labels.yml', '.github/workflows/lint.yml', - '.github/workflows/pr.yml', + '.github/workflows/pull-request-target.yml', '.github/workflows/reviewers.yml', '.github/workflows/test.yml', ].includes(file))) core.setOutput('pr', true) @@ -87,7 +87,7 @@ jobs: if: needs.prepare.outputs.pr name: PR needs: [prepare] - uses: ./.github/workflows/pr.yml + uses: ./.github/workflows/pull-request-target.yml # Those are actually only used on the pull_request_target event, but will throw an error if not set. permissions: issues: write diff --git a/ci/github-script/labels.js b/ci/github-script/labels.js index adb730aa257d..bd6c81bd9d99 100644 --- a/ci/github-script/labels.js +++ b/ci/github-script/labels.js @@ -199,12 +199,24 @@ module.exports = async ({ github, context, core, dry }) => { ( await github.rest.actions.listWorkflowRuns({ ...context.repo, + workflow_id: 'pull-request-target.yml', + event: 'pull_request_target', + exclude_pull_requests: true, + head_sha: pull_request.head.sha, + }) + ).data.workflow_runs[0] ?? + // TODO: Remove this after 2026-02-01, at which point all pr.yml artifacts will have expired. + ( + await github.rest.actions.listWorkflowRuns({ + ...context.repo, + // In older PRs, we need pr.yml instead of pull-request-target.yml. workflow_id: 'pr.yml', event: 'pull_request_target', exclude_pull_requests: true, head_sha: pull_request.head.sha, }) - ).data.workflow_runs[0] ?? {} + ).data.workflow_runs[0] ?? + {} // Newer PRs might not have run Eval to completion, yet. // Older PRs might not have an eval.yml workflow, yet.