Add Concurrent CI Review Gate#143
Open
danchild wants to merge 6 commits into
Open
Conversation
danchild
force-pushed
the
feat/concurrent-ci-review-gate
branch
from
July 13, 2026 19:17
30c8e82 to
6daf65b
Compare
danchild
force-pushed
the
feat/concurrent-ci-review-gate
branch
5 times, most recently
from
July 23, 2026 20:21
4fc89db to
5dc629f
Compare
danchild
force-pushed
the
feat/concurrent-ci-review-gate
branch
9 times, most recently
from
July 24, 2026 19:43
7ed4a39 to
22133a4
Compare
Add pending_ci_event to WorkflowState for buffering CI webhooks that arrive while the workflow is at human_review_gate. Remove the orphaned PR status comments test file. Note: this change is not backward compatible with in-flight workflows checkpointed at wait_for_ci_gate. Those workflows will need to be manually restarted. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Dan Childers <dchilder@redhat.com>
…tion Merge wait_for_ci_gate into human_review_gate so CI checks and human review run concurrently instead of sequentially. human_review_gate now handles initial-entry housekeeping (posting status comments, setting review labels) and routes pending CI events to ci_evaluator. Add Phase 0 CI attribution check so ci_evaluator can distinguish build-breaking changes from pre-existing failures before attempting fixes. Fix double-increment of ci_fix_attempt in attempt_ci_fix. Remove the now-unused wait_for_ci_gate node and clean up stale references across implement_review and pr_creation. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Dan Childers <dchilder@redhat.com>
Replace duplicated post-PR node/edge wiring across bug, feature, and task-takeover graphs with a shared post_pr module exposing add_post_pr_nodes() and add_post_pr_edges(). This eliminates ~300 lines of triplicated graph construction code while updating all graphs to use human_review_gate instead of the removed wait_for_ci_gate. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Dan Childers <dchilder@redhat.com>
Extend worker CI webhook routing to deliver check-suite and check-run events to human_review_gate (in addition to ci_evaluator and attempt_ci_fix). When the workflow is at human_review_gate, the event is stored as pending_ci_event so the gate can route to ci_evaluator on its next invocation. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Dan Childers <dchilder@redhat.com>
Integration-style tests verifying the end-to-end concurrent gate behavior: CI events arriving while at human_review_gate are buffered and processed, review approval works independently of CI state. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Dan Childers <dchilder@redhat.com>
Align three test files with renamed/moved symbols: - _route_ci_evaluation moved from feature.graph to post_pr - wait_for_ci_gate replaced by human_review_gate - CI routing: pending now goes to human_review_gate instead of END - attempt_ci_fix now posts two comments (attribution + fix attempt) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Dan Childers <dchilder@redhat.com>
danchild
force-pushed
the
feat/concurrent-ci-review-gate
branch
from
July 24, 2026 19:46
22133a4 to
6761477
Compare
danchild
marked this pull request as ready for review
July 24, 2026 19:49
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Reworks the post-PR lifecycle so CI evaluation and human review run concurrently. Previously, workflows blocked at
wait_for_ci_gateuntil all CI checks passed before proceeding to human review. Now, after PR creation the workflow goes directly tohuman_review_gateand accepts both CI and review webhooks in parallel — matching GitHub's natural PR workflow.Key changes:
wait_for_ci_gatenode; CI webhooks are routed tohuman_review_gateinsteadpending_ci_eventstate field for buffering CI webhooksThis change is not backward compatible. In-flight workflows checkpointed at
wait_for_ci_gatewill need to be manually restarted.Closes #137