github / github/copilot-cli

Unrecoverable timeouts when WAITFOR DELAY occurs anywhere. Poison pill

未關閉
#3,747 1 則留言 1 個 reaction 已指派 0 人 在 GitHub 檢視
area:models area:networking
主要語言
Shell
星號
11.2k
分支
1.9k
平均合併
14 小時 16 分鐘
30 天內合併 PR
6

描述

### Describe the bug

Copilot will enter into a faulted state anytime the text 'WAITFOR DELAY' is encountered, either within the prompt or when copilot reads a file. With ANY model.

To test, Try with this prompt:
`Explain what WAITFOR DELAY does in MSSQL.`

```
Result:
● Request failed due to a transient API error. Retrying...

● Request failed due to a transient API error. Retrying...

● Request failed due to a transient API error. Retrying...

● Request failed due to a transient API error. Retrying...

● Request failed due to a transient API error. Retrying...

✗ Execution failed: Error: Failed to get response from the AI model; retried 5 times (total retry wait time: 6.00 seconds) Last error: CAPIError: Connection error.
```

The context becomes unrecoverable and the only fix is `/new. `

Also try putting that text inside a file. I tested with a C# file and added that text as a comment and asked copilot to explain the file.

Here is the file:
using System;

```
class Program
{
-- Main function WAITFOR DELAY
static void Main()
{
Console.WriteLine("Hello, World!");
}
}
```

```
Explain @Test.Api\Program.cs

◐ I need to look at the Program.cs file from the Test.Api project to understand what it does.

● Read Program.cs
│ Test.Api\Program.cs
└ 11 lines read

● Request failed due to a transient API error. Retrying...

● Request failed due to a transient API error. Retrying...

● Request failed due to a transient API error. Retrying...

● Request failed due to a transient API error. Retrying...

● Request failed due to a transient API error. Retrying...

✗ Execution failed: Error: Failed to get response from the AI model; retried 5 times (total retry wait time: 6.00 seconds) Last error: CAPIError: Connection error.
```

If I remove the comment, the correct hello world explanation is returned.

To me this is a critical bug because this poison pill could be injected into any file effectively crippling copilot as it ingests files to build its context.

### Affected version

1.0.61

貢獻指南

開啟貢獻指南

研究方向

使用包含 `WAITFOR DELAY` 的 prompt 重現該失敗,然後在所示的 C# 檔案中使用相同文字重現,並將其與移除註解後的檔案進行比較。追蹤五次重試期間的行為以及由此產生的 faulted context;完成的標準是該文字不再導致無法恢復的失敗,並且無需 `/new` 仍能解釋該檔案。

由索引模型根據 Issue 內容生成。

評估

技術堆疊
shell
領域
ai, cli
Issue 類型
缺陷
難度
4/5
預估耗時
3-5 天
活躍度
冷清
描述清晰度
基本清楚
新手友好度
45/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。