Title: Copilot App Repeatedly Calls apply_patch with Empty Content and Gets S...
- Lenguaje dominante
- Sin datos de lenguaje
- Estrellas
- 2.1k
- Forks
- 153
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
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 |
Guía de contribución
Línea de trabajo
Comienza reproduciendo la llamada vacía a `apply_patch` en GitHub Copilot App 1.0.21 con un modelo GPT mediante BYOK; después, observa el comportamiento de reintento y el error informado. Se considera terminado cuando los parches vacíos se previenen o se recuperan de ellos, y los fallos idénticos repetidos de la herramienta se detienen sin un bucle ilimitado ni más solicitudes innecesarias.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- github
- Área
- ai, desktop, devtools
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Tranquilo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 48/100