From 1c3075110880ce417f238ce3a4cc5709dcaa21c8 Mon Sep 17 00:00:00 2001 From: Kyle Sexton <153232337+kyle-sexton@users.noreply.github.com> Date: Tue, 3 Nov 2026 00:37:01 -0500 Subject: [PATCH] docs(source-control): a re-drafted PR keeps its ready head's venue The ready reference and the review-venue reference said every draft head reads `local`/`absent`. A probe on ci-workflows#972 showed a PR moved back to draft keeps the test-lane results of a head pushed while ready, so its venue reads `ci healthy`. Only a head pushed while the PR is a draft reads `local`. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01VcupomFZgq3z3EzLHjxPB9 --- .../fix-draft-head-venue-wording-8994a1c2.md | 7 +++++++ .../skills/pull-request/reference/ready-for-review.md | 5 +++-- .../skills/pull-request/reference/review-venue.md | 4 ++-- 3 files changed, 12 insertions(+), 4 deletions(-) create mode 100644 .changes/source-control/fix-draft-head-venue-wording-8994a1c2.md diff --git a/.changes/source-control/fix-draft-head-venue-wording-8994a1c2.md b/.changes/source-control/fix-draft-head-venue-wording-8994a1c2.md new file mode 100644 index 00000000000..ee6d1b877d8 --- /dev/null +++ b/.changes/source-control/fix-draft-head-venue-wording-8994a1c2.md @@ -0,0 +1,7 @@ +--- +bump: patch +--- + +### Fixed + +- state that only a head pushed while the PR is a draft reads `local`; a PR moved back to draft keeps its ready head's test-lane results diff --git a/plugins/source-control/skills/pull-request/reference/ready-for-review.md b/plugins/source-control/skills/pull-request/reference/ready-for-review.md index 6c6451edeb9..cc7248c66e9 100644 --- a/plugins/source-control/skills/pull-request/reference/ready-for-review.md +++ b/plugins/source-control/skills/pull-request/reference/ready-for-review.md @@ -227,8 +227,9 @@ command below. Report the verify line as that result, with the suites `skipped ( and the venue line's detail, naming the suites skipped: the list `scripts/affected-tests.sh` prints with no arguments, run from `$PR_TREE`, when the repository ships it, otherwise the test-lane names the venue line gives. When the line reads `local`, the venue cannot be read, or -the run passed `--verify-local`, the gate runs in full as below. A draft's head always reads -`local`: a draft skips the test lanes, so its first flip runs the suites here. `ci-status` gates +the run passed `--verify-local`, the gate runs in full as below. A head pushed while the PR is a +draft reads `local`: a draft skips the test lanes, so its first flip runs the suites here. A PR +moved back to draft keeps the results of a head pushed while it was ready. `ci-status` gates the merge either way. - `verify` ran: after the rest of ยง1.5, run its deterministic last part and the record as one diff --git a/plugins/source-control/skills/pull-request/reference/review-venue.md b/plugins/source-control/skills/pull-request/reference/review-venue.md index ca9f22ec7f1..4f83f75e503 100644 --- a/plugins/source-control/skills/pull-request/reference/review-venue.md +++ b/plugins/source-control/skills/pull-request/reference/review-venue.md @@ -40,8 +40,8 @@ skipped copy a label or body edit posts never hides a failure: - **`tests ci healthy: `**: every test-lane check run on the head finished as success, skipped (a lane the change gave no work) or neutral, and at least one succeeded. - **`tests local absent: `**: the head has no test-lane check run, every one skipped, or - the head has more check runs than the script reads. A draft skips them, so a draft's head reads - `absent`. + the head has more check runs than the script reads. A draft skips them, so a head pushed while + the PR is a draft reads `absent`; a PR moved back to draft keeps its ready head's results. - **`tests local pending: `**: a test-lane check run on the head has not finished. - **`tests local failing: `**: one concluded otherwise, such as failure, cancelled or timed out.