github / github/app

Title: Copilot App Repeatedly Calls apply_patch with Empty Content and Gets S...

Open
#1,924 1 comment 0 reactions 0 assignees View on GitHub
Bugs
Dominant language
No language data
Stars
2.1k
Forks
153
PR merge metrics
No merged PRs in 30d

Description

Title: Copilot App Repeatedly Calls apply_patch with Empty Content and Gets Stuck in a Loop

I would like to report an issue I've encountered when using GitHub Copilot App with GPT models (via BYOK).

In many coding tasks, Copilot frequently chooses to invoke the `apply_patch` tool. However, the generated tool call often contains no patch content, resulting in the following error:

`apply_patch requires a non-empty string input (the patch content).`

The main issue is not only the failed tool execution itself, but that Copilot repeatedly retries the same `apply_patch` call after the failure. The agent appears unable to recover from the error and can become stuck in a loop continuously invoking the same tool.

Observed behavior:

* Copilot decides to use `apply_patch`.
* The tool receives an empty patch.
* The tool returns the error above.
* The agent retries the same action.
* The process may repeat multiple times without making progress.
* Additional requests and credits are consumed during these retries.

Expected behavior:

* If an empty patch is generated, the agent should detect the issue before invoking the tool.
* After receiving this specific error, the agent should either regenerate the patch content or choose an alternative approach.
* The agent should avoid repeatedly invoking the same tool with identical invalid input.
* Tool failures should not result in an infinite retry loop.

Environment:

* Product: GitHub Copilot App
* Model: GPT model via BYOK
* Error message: `apply_patch requires a non-empty string input (the patch content)`

It would be helpful if the agent could include safeguards against empty patch submissions and implement retry limits for tool invocation failures.

Thank you for looking into this issue.

---
| Field | Value |
| --- | --- |
| App version | 1.0.21 |
| OS | macOS 13.7.6 |
| Theme | GitHub |
| Path | /chat |
| Tenure | Week 6 |

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the empty `apply_patch` call in GitHub Copilot App 1.0.21 with a GPT model via BYOK, then observe the retry behavior and the reported error. Done means empty patches are prevented or recovered from and repeated identical tool failures stop without an unbounded loop or further unnecessary requests.

Written by the indexing model from the issue text.

Assessment

Tech stack
github
Domain
ai, desktop, devtools
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.