You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
fix(source-control): ready phase waits on a fixed ci.yml workflow #8629
/source-control:pull-request ready's GitHub reference fixes the CI workflow name at ci.yml:
plugins/source-control/reference/providers/github/pull-request/ready-for-review.md:114-119 (installed 1.12.1): "CI_WORKFLOW is the repository's CI workflow file (ci.yml here)" and CI_WORKFLOW=ci.yml.
claude-code-plugins has no ci.yml; its PR runs are pr-require-checks, pr-review-hosted, pr-review-security-hosted and others.
The CI-run wait times out every time, a false negative.
The ready-run check reports no run, so the skill toggles the PR draft→ready again. That cancelled the first set of ready runs (pr-review-hosted, pr-review-security-hosted, pr-require-checks, pr-test-windows) and started a second set. The cancellation was harmless this time, but it wastes runs and bucket budget.
Fix direction
Resolve the CI workflow per repository (a convention key, or detect the workflow that posts ci-status / runs on pull_request) instead of a fixed name.
Proposed work class: work-class: scoped
Basis: automated intake triage; the lanes App applied this class.
Size: Small
Complexity: Medium
Uncertainty: Knowable
Flags: none
Blocked by: none
I understood this as a defect: the GitHub ready-for-review reference hardcodes CI_WORKFLOW=ci.yml. This repository has no such workflow, so the CI wait times out and the skill toggles the PR draft→ready again, cancelling runs that were already going. The proposed fix is to resolve the workflow per repository, either through a convention key or by detecting the workflow that runs on pull_request or posts ci-status. Nothing is missing. Picking between those two approaches is a design choice that reading the code should settle. I found no likely duplicates among the open issues.
Not admitted to the issue lane: no trusted-human acceptance criteria: a listed human must put the confirmed - [ ] criteria in the body or post them as their own comment, or, on an issue a listed human filed, intake's newest refinement comment must hold them unedited. Admission takes the issue once each of those is met, when intake triages it again (.github/actions/resolve-config/admission-rules.json).
melodic-automation-lanes commented on Oct 26, 2026
Refinement. A read-only run explored this repository, searched its issues and pull requests, and read the allowed docs to draft what follows. On an issue a listed human filed, it counts as the issue's spec once posted, while unedited; it is still model text, so check it.
Intended outcome: Close as already fixed: the ready reference no longer names ci.yml and counts every pull_request run for the head SHA.
Is this issue already fixed, so it should be closed instead of worked? The checkout no longer has CI_WORKFLOW or ci.yml in the ready reference, and the changelog records the fix.
RECOMMENDED: Yes: verify against the installed version in the report (1.12.1 predates the fix), then close as completed or re-file only if a current version still toggles draft/ready. Basis: plugins/source-control/reference/providers/github/pull-request/ready-for-review.md:116 says the run lists name no workflow and count every pull_request run for the head SHA; plugins/source-control/CHANGELOG.md:870 records removal of the hardcoded ci.yml; the checkout is at 3.4.3 (CHANGELOG.md:6).
If the owner still wants a per-repository convention key for the CI workflow, should that be a new issue?
RECOMMENDED: No: counting all pull_request runs for the head works without configuration, so no key is needed. Basis: judgment
Sources read
plugins/source-control/reference/providers/github/pull-request/ready-for-review.md:116: the run lists name no workflow and count every pull_request run for the head SHA
plugins/source-control/reference/providers/github/pull-request/ready-for-review.md:118: the wait ends only when the run count holds steady across polls
plugins/source-control/CHANGELOG.md:870: ready waits for the push's CI runs and confirms the ready run without a hardcoded ci.yml
plugins/source-control/CHANGELOG.md:6: current plugin version 3.4.3, newer than the 1.12.1 the issue saw
Automated refinement by the lanes App. Answer with a comment whose first line is **Decision recorded.**.
Decision recorded. The owner answered in the Refinement and Issue Triage sessions (2026-10-25), deciding the open items below on the facts:
go with whatever the facts/data/metrics + /discovery:research says and ensure we're aligned with SOLID, DRY/SSOT principles
I should only ever be in the loop ONLY when necessary (intent/vision changed, something came up during implementation that impacts trajectory/alignment, OR a high security risk) - I've covered this all before
No owner ledger (.work/*/interview-checklist.md, .work/gh-monitor-owner-decisions/) names this issue. Read against origin/main at a6ba1c4c18.
Is this already fixed?
Decided: Yes. The ready reference no longer names ci.yml or sets CI_WORKFLOW: git grep "CI_WORKFLOW\|ci\.yml" origin/main -- plugins/source-control finds only eval scaffolds that create their own ci.yml. The CI wait counts every pull_request run for the head SHA, "so they work in any repository without knowing its CI file name" (plugins/source-control/reference/providers/github/pull-request/ready-for-review.md:116-117), and ends only when the count is above zero and steady across two polls (:119-120, block :137-145). The ready-run check uses the same unfiltered list, both the snapshot (:162-163) and ready_run_seen (:203-211). The changelog records the fix under 1.13.0: "In a repository with no ci.yml the wait always timed out and the draft and ready toggle fired" (plugins/source-control/CHANGELOG.md:797, :901). The issue saw 1.12.1.
Is a per-repository CI workflow key still needed?
Decided: No. The unfiltered count works in any repository with no setting, so a key would be a second way to do the same thing (brief, "No added mechanisms").
Closed as done. The fixed ci.yml wait and the draft-ready toggle it caused are gone from main, per the lines above. Nothing is left to build. This record closes the issue.
Activity
github-actions commentedon Oct 20, 2026
Proposed work class: work-class: scoped
Basis: automated intake triage; the lanes App applied this class.
Size: Small
Complexity: Medium
Uncertainty: Knowable
Flags: none
Blocked by: none
I understood this as a defect: the GitHub ready-for-review reference hardcodes
CI_WORKFLOW=ci.yml. This repository has no such workflow, so the CI wait times out and the skill toggles the PR draft→ready again, cancelling runs that were already going. The proposed fix is to resolve the workflow per repository, either through a convention key or by detecting the workflow that runs onpull_requestor postsci-status. Nothing is missing. Picking between those two approaches is a design choice that reading the code should settle. I found no likely duplicates among the open issues.Automated triage, applied by the lanes App.
github-actions commentedon Oct 26, 2026
The triage sweep dispatched intake triage for this issue (attempt 1 of 2).
melodic-automation-lanes commentedon Oct 26, 2026
Not admitted to the issue lane: no trusted-human acceptance criteria: a listed human must put the confirmed
- [ ]criteria in the body or post them as their own comment, or, on an issue a listed human filed, intake's newest refinement comment must hold them unedited. Admission takes the issue once each of those is met, when intake triages it again (.github/actions/resolve-config/admission-rules.json).melodic-automation-lanes commentedon Oct 26, 2026
The latest triage verdict holds nothing: admission moved the issue to
status: needs-decision; its comment says why.melodic-automation-lanes commentedon Oct 26, 2026
Refinement. A read-only run explored this repository, searched its issues and pull requests, and read the allowed docs to draft what follows. On an issue a listed human filed, it counts as the issue's spec once posted, while unedited; it is still model text, so check it.
Intended outcome: Close as already fixed: the ready reference no longer names ci.yml and counts every pull_request run for the head SHA.
Related work
Open questions
RECOMMENDED: Yes: verify against the installed version in the report (1.12.1 predates the fix), then close as completed or re-file only if a current version still toggles draft/ready. Basis: plugins/source-control/reference/providers/github/pull-request/ready-for-review.md:116 says the run lists name no workflow and count every pull_request run for the head SHA; plugins/source-control/CHANGELOG.md:870 records removal of the hardcoded ci.yml; the checkout is at 3.4.3 (CHANGELOG.md:6).
RECOMMENDED: No: counting all pull_request runs for the head works without configuration, so no key is needed. Basis: judgment
Sources read
Automated refinement by the lanes App. Answer with a comment whose first line is
**Decision recorded.**.kyle-sexton commentedon Oct 26, 2026
Decision recorded. The owner answered in the Refinement and Issue Triage sessions (2026-10-25), deciding the open items below on the facts:
No owner ledger (
.work/*/interview-checklist.md,.work/gh-monitor-owner-decisions/) names this issue. Read against origin/main ata6ba1c4c18.Decided: Yes. The ready reference no longer names
ci.ymlor setsCI_WORKFLOW:git grep "CI_WORKFLOW\|ci\.yml" origin/main -- plugins/source-controlfinds only eval scaffolds that create their ownci.yml. The CI wait counts everypull_requestrun for the head SHA, "so they work in any repository without knowing its CI file name" (plugins/source-control/reference/providers/github/pull-request/ready-for-review.md:116-117), and ends only when the count is above zero and steady across two polls (:119-120, block:137-145). The ready-run check uses the same unfiltered list, both the snapshot (:162-163) andready_run_seen(:203-211). The changelog records the fix under 1.13.0: "In a repository with noci.ymlthe wait always timed out and the draft and ready toggle fired" (plugins/source-control/CHANGELOG.md:797,:901). The issue saw 1.12.1.Decided: No. The unfiltered count works in any repository with no setting, so a key would be a second way to do the same thing (brief, "No added mechanisms").
Closed as done. The fixed
ci.ymlwait and the draft-ready toggle it caused are gone from main, per the lines above. Nothing is left to build. This record closes the issue.