Agent-created ignored artifacts are hidden from Files and cannot be opened fr...
- Ngôn ngữ chính
- Không có dữ liệu ngôn ngữ
- Star
- 2.1k
- Fork
- 153
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
# Agent-created ignored artifacts are hidden from Files and cannot be opened from chat
## Summary
Repository files under a gitignored directory are completely omitted from the GitHub Copilot Files navigator. When Copilot returns the file's absolute path in chat, the path is rendered as inert code rather than an actionable **Open in editor** link. The artifact exists and Copilot's editor canvas can open it, but the user cannot discover or open it through either visible surface.
If hiding ignored files is intentional, the lack of a **Show ignored files** toggle or an open-file action still makes this an end-to-end usability bug.
## Priority
**P1 - Major usability / artifact discoverability**
## Environment
- GitHub Copilot app: `1.0.80`
- OS: Windows
- Workspace type: local branch workspace
- Repository: `Azure/content-understanding-toolkit`
- Branch: `pr-4`
- Repository root: `C:\src\cu-cli`
## Preconditions
The repository ignores local QA artifacts:
```gitignore
**/_local_only/
_local_only/
```
## Reproduction
1. In a repository with the ignore rules above, create a Markdown artifact:
```powershell
New-Item -ItemType Directory -Force .\cu-cli\_local_only
Set-Content .\cu-cli\_local_only\repro.md "# Repro"
```
2. Confirm that the file exists and is ignored:
```powershell
Test-Path .\cu-cli\_local_only\repro.md
git check-ignore -v -- .\cu-cli\_local_only\repro.md
git status --short --ignored -- .\cu-cli\_local_only
```
3. Open the GitHub Copilot **Files** tab and expand `cu-cli`.
4. Observe that `_local_only` and `repro.md` are absent. There is no visible option to reveal ignored files.
5. Have Copilot respond with the full local path, for example:
```text
C:\src\cu-cli\cu-cli\_local_only\repro.md
```
6. Try to click the path in chat.
7. Ask Copilot to open the same file in an editor canvas. Observe that this succeeds, proving the artifact is present and readable by the application.
## Actual result
- The Files navigator omits the entire ignored directory.
- The navigator provides no visible **Show ignored files** control or ignored-file indicator.
- The local path shown in chat is not clickable and has no context action to open or reveal it.
- The user can access the artifact only if the agent explicitly invokes an editor canvas or the user leaves the app and uses the terminal/file explorer.
- The UI therefore makes an existing artifact appear missing.
## Expected result
At least one supported recovery path should be available:
1. Files provides a **Show ignored files** toggle and renders ignored files with a muted/ignored indicator; or
2. Copilot responses render recognized workspace paths as an actionable file chip/link with **Open in editor** and **Reveal in Files**; and
3. Tool-created artifacts return a visible artifact card that remains openable even when the backing file is ignored.
The ideal behavior is to provide both the navigator toggle and actionable workspace paths.
## Frequency
**100%** for files under the reproduced ignored directory.
## Impact
QA reports, generated diagnostics, benchmark output, local plans, and other artifacts are commonly gitignored intentionally. Users cannot find these outputs in Files and cannot open paths supplied by Copilot, so they may conclude that Copilot failed to create the artifact. This blocks review and sharing and forces terminal/file-explorer workarounds.
## Evidence from the affected session
```text
.gitignore:437:_local_only/ cu-cli\_local_only\cu-cli-comparison-cli-bugs-2026-08-27.md
!! cu-cli/_local_only/
Test-Path: True
File size: 9,175 bytes
```
The following repo-scoped editor canvases opened successfully even though their parent folder was absent from Files:
- `cu-cli_local_only\cu-cli-bug-bash-2026-08-26.md`
- `cu-cli_local_only\cu-cli-comparison-cli-bugs-2026-08-27.md`
Attach the screenshot showing the missing `_local_only` directory and the inert path in chat.
## Workarounds
- Ask Copilot explicitly to open the path in an editor canvas.
- Open the file through the terminal or Windows File Explorer.
- Move/copy the artifact to a nonignored path, at the risk of accidentally committing local output.
## Suggested fix
- Detect absolute and repo-relative workspace paths in assistant messages and render an **Open file** action.
- Preserve openability of artifacts created by tools regardless of git tracking/ignore state.
- Add a Files-view setting to include gitignored files, disabled by default if necessary.
Hướng dẫn đóng góp
Hướng nghiên cứu
Tái hiện vấn đề bằng cách sử dụng tab Files, một thư mục bị bỏ qua `_local_only` và một đường dẫn workspace tuyệt đối được trả về trong chat; xác minh tệp bằng `git check-ignore` và `Test-Path`. Bắt đầu bằng cách lần theo các điểm vào của trình điều hướng Files và phần kết xuất đường dẫn trong chat, sau đó định nghĩa việc hoàn tất là một artifact bị bỏ qua có thể được phát hiện hoặc mở thông qua một hành động được hỗ trợ trong ứng dụng mà không cần cách xử lý thay thế bằng terminal hoặc Explorer.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- git
- Lĩnh vực
- desktop, developer-experience
- Loại issue
- Lỗi
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Sôi nổi
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 42/100