github / github/copilot-cli

Built-in view reports Path does not exist for existing files in 1.0.73; 1.0.71 succeeds

Đang mở
#4,202 5 bình luận 1 reaction 0 người được giao Xem trên GitHub
area:non-interactive area:tools
Ngôn ngữ chính
Shell
Star
11.2k
Fork
1.9k
Merge trung bình
14 giờ 16 phút
Pull request đã merge (30 ngày)
6

Mô tả

## Description

The built-in `view` tool reports `Path does not exist` for an existing text file with Copilot CLI 1.0.73. The same isolated Vally/Copilot SDK probe succeeds consistently with CLI 1.0.71.

This appears to have started in 1.0.72 and remains present in 1.0.73.

## Controlled reproduction

The probe uses:

- Official public npm packages `@github/copilot@1.0.71` and `@github/copilot@1.0.73`
- `@microsoft/vally-cli@0.7.0`
- The Copilot SDK's supported `COPILOT_CLI_PATH` override, pointing to each package's platform `index.js`
- The same model, prompt, skill, marker file, and grader for both versions

Minimal skill:

```markdown
---
name: view-probe
description: Verify that Copilot can read a staged text file with its built-in view tool.
---

1. Use the built-in `view` tool exactly once to read `references/marker.txt`.
2. Do not use another file-reading tool.
3. Reply with the exact marker value.
```

`references/marker.txt`:

```text
VIEW_PROBE_MARKER_8A4F21
```

The skill is staged into the agent workspace, and the prompt invokes it. Each version was run three times.

## Results

| Copilot CLI | Result | `view` outcome |
|---|---:|---|
| 1.0.71 | 3/3 passed | Returned `VIEW_PROBE_MARKER_8A4F21` |
| 1.0.73 | 0/3 passed | `Path does not exist` |

A final one-trial run preserved both workspaces. Immediately after each run, the exact absolute path supplied to `view` existed:

```text
Copilot CLI 1.0.71
FileExists: true
tool.execution_complete.success: true
result: VIEW_PROBE_MARKER_8A4F21

Copilot CLI 1.0.73
FileExists: true
tool.execution_complete.success: false
error: Path does not exist
```

Sanitized failing event:

```json
{
"type": "tool.execution_start",
"data": {
"toolName": "view",
"arguments": {
"path": "C:\\probe\\workspace\\skill\\references\\marker.txt"
}
}
}
{
"type": "tool.execution_complete",
"data": {
"success": false,
"error": {
"message": "Path does not exist",
"code": "failure"
}
}
}
```

## Additional CI evidence

We also observed the version transition on GitHub-hosted Ubuntu runners:

- CLI 1.0.71: 175 of 208 `view` calls succeeded.
- CLI 1.0.72: all 193 observed `view` calls failed with `Path does not exist`.
- CLI 1.0.73: all three captured `view` calls in another run failed with the same error.

The affected paths were accessible in the same agent sessions through `glob`, PowerShell `Get-ChildItem`, and `Get-Content`.

## Expected behavior

`view` should return the contents of an existing readable file, as it does in 1.0.71.

## Impact

Agents cannot read staged skill references and other workspace files. They may improvise without the reference, retry with additional tools, exceed turn/tool/token budgets, or produce incorrect results. This causes broad false failures in automated evaluations.

## Environment

- Copilot CLI: 1.0.71 (working), 1.0.72/1.0.73 (affected)
- Copilot SDK: 1.0.6
- Vally CLI: 0.7.0
- Controlled reproduction: Windows x64
- Additional observations: GitHub-hosted Ubuntu runners
- Model: `claude-sonnet-4.6`

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Bắt đầu với entry point `view` tích hợp sẵn và `index.js` của nền tảng được chọn thông qua `COPILOT_CLI_PATH`, sau đó so sánh cách xử lý đường dẫn trong CLI 1.0.71 với 1.0.73 bằng probe có kiểm soát được cung cấp. Truy vết lý do một đường dẫn tuyệt đối hiện có bị từ chối và bổ sung coverage hồi quy; được xem là hoàn tất khi probe đọc thành công `marker.txt` trên các phiên bản bị ảnh hưởng và vẫn giữ nguyên hành vi của 1.0.71.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
node.js, shell
Lĩnh vực
cli, tooling
Loại issue
Lỗi
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Ít trao đổi
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
48/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.