Repository navigation
Add requestedReviewer to GitHub webhook filters - #1813
Conversation
|
/kelos api-review |
|
🤖 Kelos Task Status Task |
|
🤖 Kelos API Reviewer Agent @gjkim42 API Design ReviewVerdict: APPROVE FindingsDocumentation contract (P2, non-blocking)
Compatibility (P3, follow-up)
Naming / docs nit (P3)
Strengths
Suggestions (optional)
/kelos needs-input |
There was a problem hiding this comment.
1 issue found across 6 files (changes from recent commits).
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="internal/manifests/install-crd.yaml">
<violation number="1" location="internal/manifests/install-crd.yaml:15539">
P3: The CRD names this as `Action`, but the serialized field users must configure is `action`; use the lowercase API key here to avoid suggesting an invalid manifest field.</violation>
</file>
Reply with feedback, questions, or to request a fix.
View guided diff | Turn on auto-fix | Re-trigger cubic
| payload. Matching is exact and case-sensitive. Events without a requested | ||
| reviewer, including team review requests, never match this criterion. | ||
| Available on pull_request and pull_request_target events with action | ||
| review_requested or review_request_removed. Set Action to review_requested |
There was a problem hiding this comment.
P3: The CRD names this as Action, but the serialized field users must configure is action; use the lowercase API key here to avoid suggesting an invalid manifest field.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. At internal/manifests/install-crd.yaml, line 15539:
<comment>The CRD names this as `Action`, but the serialized field users must configure is `action`; use the lowercase API key here to avoid suggesting an invalid manifest field.</comment>
<file context>
@@ -15535,6 +15535,9 @@ spec:
payload. Matching is exact and case-sensitive. Events without a requested
reviewer, including team review requests, never match this criterion.
+ Available on pull_request and pull_request_target events with action
+ review_requested or review_request_removed. Set Action to review_requested
+ to match only new review requests.
maxLength: 64
</file context>
|
/kelos review |
|
🤖 Kelos Task Status Task |
|
🤖 Kelos Reviewer Agent @gjkim42 Review SummaryVerdict: APPROVE Findings Overview
FindingsNo qualifying issues found. What I checked:
Key takeaways
|
2bbeb47 to
aa07ed9
Compare
What type of PR is this?
/kind api
What this PR does / why we need it:
Add
requestedReviewerto v1alpha2 GitHub webhook filters so TaskSpawner and SessionSpawner can select review requests for a particular user before creating work. It matchesrequested_reviewer.loginexactly and case-sensitively. Onpull_requestandpull_request_targetevents, setaction: review_requestedto match only new review requests;review_request_removedalso carries the reviewer. Events without a requested reviewer, including team review requests, never match.The criterion supports both accepting filters and
excludeFiltersrules that omitevent. Includes generated CRDs, reference documentation, a usage example, and tests for matching, validation, and conversion.Which issue(s) this PR is related to:
N/A
Special notes for your reviewer:
The field is added only to v1alpha2. Exclusion rules preserve it through a v1alpha1 round-trip; accepting filters follow the existing
pullRequestAuthorbehavior and do not preserve it through that round-trip.Validation passed:
make verifyenv -u CODEX_HOME -u CODEX_AUTH_JSON make test(unset inherited variables that interfere with unrelated entrypoint tests)make test-integration TEST_FLAGS='./test/integration/... -ginkgo.focus=githubWebhook.excludeFilters'Does this PR introduce a user-facing change?
Summary by cubic
Adds
requestedReviewerto v1alpha2 GitHub webhook filters so TaskSpawner and SessionSpawner can spawn work only when a review is requested from a specific user. The criterion matchesrequested_reviewer.loginexactly and case-sensitively and works onpull_requestandpull_request_targetevents with actionsreview_requestedandreview_request_removed; events without a requested reviewer, including team review requests, never match. It works in accepting filters and inexcludeFiltersrules that omitevent.Notes
excludeFilterspreserve the field through a v1alpha1 round-trip; accepting filters drop it, matching the existingpullRequestAuthorbehavior.Written for commit aa07ed9. Summary will update on new commits.