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
Fixes a distinct failure signature in the Repository Reconciliation workflow not covered by any open issue/PR. No pre-existing canonical issue was found for this specific crash (checked #2010 and closed reconciliation PRs #1788/#1769/#1825 — none touch branchProtectionRule).
Outcome
Repository Reconciliation (issues trigger) has failed on every recent run with:
GraphqlResponseError: Request failed due to following response errors:
- Resource not accessible by integration
Root cause: the branch-inventory GraphQL query requests branchProtectionRule { id }, a field the default GITHUB_TOKEN cannot read on this installation. GitHub returns the rest of the page's data alongside a FORBIDDEN partial error for just that field — the script's catch block only recognized rate-limit 403s and re-threw everything else, turning a partial/degraded response into a hard failure (see run 35403628729).
Scope
Included:
Detect a FORBIDDEN-only GraphQL error and fall back to the partial data.repository.refs payload (protection status treated as unknown) instead of throwing.
Regression test mirroring the existing rate-limit-deferral test pattern.
Explicitly excluded:
No change to branch-deletion behavior, issue/PR classification logic, or permissions.
Risk
Risk level: low
Failure mode: if GitHub ever changes GraphQL partial-error shape, this falls back to the pre-existing throw err behavior (unchanged from today).
Focused tests (17/17 pass, including new regression test)
Required CI
Review threads resolved
Production evidence
Not applicable: repository automation only; no application or deployment changes. No public URL to verify with Playwright for this workflow-file change.
Evidence chart
Recent issues-triggered runs of this workflow: 4 cancelled (concurrency-superseded) + 1 hard failure (this bug) — none reached completion recently.
Continuous AI is the best fit here: the value delivered was an LLM reading verbose failure logs from a scheduled/event-triggered automation, isolating a partial-API-response edge case, and writing a narrowly-scoped defensive fix with regression coverage — automation supervising automation. This is not a multi-agent planning problem (Chopin), not a simple goal-driven retry loop (Autoloop), and doesn't need new natural-language GitHub Actions authoring (Agentic Workflows).
Agent handoff
One canonical issue is linked (opening alongside this PR)
No competing PR implements the same fix (confirmed via search)
Acceptance criteria are satisfied (tests pass, non-destructive fallback)
Required CI passes on the current head
Human decision requested only if reviewers want a different fallback strategy
Note
This was originally intended as a pull request, but the git push operation failed.
Original error: The process '/usr/bin/git' failed with exit code 1
Caution
Protected files were modified in this change.
This pull request is in
request_reviewmode and requires explicit human scrutiny before merge.Protected files:
.github/workflows/repository-reconciliation.ymlCanonical issue
Fixes a distinct failure signature in the Repository Reconciliation workflow not covered by any open issue/PR. No pre-existing canonical issue was found for this specific crash (checked #2010 and closed reconciliation PRs #1788/#1769/#1825 — none touch
branchProtectionRule).Outcome
Repository Reconciliation(issuestrigger) has failed on every recent run with:Root cause: the branch-inventory GraphQL query requests
branchProtectionRule { id }, a field the defaultGITHUB_TOKENcannot read on this installation. GitHub returns the rest of the page's data alongside aFORBIDDENpartial error for just that field — the script's catch block only recognized rate-limit 403s and re-threw everything else, turning a partial/degraded response into a hard failure (see run 35403628729).Scope
data.repository.refspayload (protection status treated as unknown) instead of throwing.Risk
throw errbehavior (unchanged from today).Verification
Head:
bc769161bProduction evidence
Not applicable: repository automation only; no application or deployment changes. No public URL to verify with Playwright for this workflow-file change.
Evidence chart
Recent
issues-triggered runs of this workflow: 4 cancelled (concurrency-superseded) + 1 hard failure (this bug) — none reached completion recently.Recommended pattern (Chopin / Continuous AI / Autoloop / Agentic Workflows)
Continuous AI is the best fit here: the value delivered was an LLM reading verbose failure logs from a scheduled/event-triggered automation, isolating a partial-API-response edge case, and writing a narrowly-scoped defensive fix with regression coverage — automation supervising automation. This is not a multi-agent planning problem (Chopin), not a simple goal-driven retry loop (Autoloop), and doesn't need new natural-language GitHub Actions authoring (Agentic Workflows).
Agent handoff
Note
This was originally intended as a pull request, but the git push operation failed.
Original error: The process '/usr/bin/git' failed with exit code 1
Workflow Run: View run details and download bundle artifact
The bundle file is available in the
agentartifact in the workflow run linked above.Create the pull request manually