Unrecoverable timeouts when WAITFOR DELAY occurs anywhere. Poison pill
- 主要言語
- Shell
- スター
- 11.2k
- フォーク
- 1.9k
- 平均マージ
- 14時間 16分
- マージ済み PR(30日)
- 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` を含むプロンプトで失敗を再現し、次に、表示されている C# ファイル内の同じテキストで再現して、コメントを削除した後のファイルと比較します。5 回の再試行と、その結果として faulted 状態になったコンテキストの周辺の動作を追跡します。完了の条件は、そのテキストによって回復不能な失敗が発生しなくなり、`/new` を必要とせずにそのファイルを引き続き説明できることです。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- shell
- 領域
- ai, cli
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 静か
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 45/100