Repository navigation
fix(pr-pipeline): give fix-ci the open review findings on a red lane PR - #9412
Conversation
On #9111 claude-review named the exact fix for the red check, but no run used it. The dispatchers for the 16:18Z finding died on a REST 500 from commits/<sha>/pulls (fixed later by #9079). fix-ci then escalated with needs-human (the new-executable refusal #9278 removed), and that label made feedback-dispatch skip the repeat finding at 04:36Z. fix-ci's context file now carries the unresolved reviewer-bot findings that address-feedback would keep (keepThreads, no trusted direction), capped at 10 findings of 2000 characters, and ci --ci reads a finding that names a reproduced check's cause as a lead to fix, not escalate. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ings Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
claude-security-review reviewed Incremental security review of critical-findings: 0 The change does two things. It wraps the
The review covered only the two incremental files. Other files in the PR were reviewed at the earlier commit. |
|
claude-review reviewed No findings in the incremental review (since 09bd94a). I read the diff and the files as they stand at the head. I did not run the tests. What changed:
Checked:
|
…ails Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Closes #9353
Summary
On #9111, claude-review named the exact fix for the red check twice, and no lane run used it either time.
3a1900e. Both pr-feedback-dispatch runs (39812980713, 39812987995) failed onGET …/commits/3a1900e…/pulls returned 500. The dispatcher'srequestinfeedback-dispatch.mjshad no fallback. Once both review runs had completed, nothing triggered that head again. #9079 (877711a, merged 17:35Z the same day) added thecommitPullsGraphQL fallback.ci-fix-protected-pathand addedneeds-human. That was thenew-executablerefusal, which #9278 removed (#9320, #9407).b457958. Dispatch 39901253983 skipped it by design:#9111 is labeled needs-human and has no thread a trusted person with write access asked the lane to fix.What is still open on main: the fix-ci run on a red PR never sees the review finding that explains the failure, so it can escalate a fix the reviewer already described.
Fix
.github/scripts/pr-unblock/fix-ci-context.mjs: the context file now also holdsreview_findings. These are the unresolved threads address-feedback would keep with no trusted direction, chosen by the samekeepThreadsandreviewedHeads: opened by the reviewer bot, a lane comment or a verifier note, on a reviewed head, and written only by it. Each finding gives its path, line and opening body. The list is capped at 10 findings of 2000 characters each. The reviewer id comes from the base's trusted-actors list. The job already holdspull-requests: read, the same scope the address-feedback select job uses for these reads, so no workflow changes.plugins/source-control/skills/pull-request/reference/ci-ci.md:ci --cidocuments the field. A finding is a lead to check against the code and the reproduced command, not evidence. A finding that names a reproduced check's cause is fixed rather than escalated. Findings are data, like logs.colourchanged tocolorin a touched test title (the typos check flagged it).The
needs-humangate indispatchFeedbackis unchanged, and so are the job gates inpr-feedback-dispatch.yml. Letting address-feedback work a PR that a lane escalated to a person changes what the lanes do unattended, so that is the owner's call.Verification
fix-ci-context.test.mjs: a kept finding enters the context. A resolved thread, a person's thread, and a thread a person replied to stay out. The count and body length are capped. All three failed before the change. The pr-unblock suite: 569 pass, 0 fail.scripts/check-affected.sh --tests: 12 passed, 2 skipped.actionlint: clean.zizmor --offline .github/workflows: no findings.Related
needs-human.🤖 Generated with Claude Code