Built-in view reports Path does not exist for existing files in 1.0.73; 1.0.71 succeeds
- 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
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