microsoft / microsoft/vscode

Workspace exception does not cover hidden home directories such as `~/.julia/dev`

Open
#336,722 0 comments 0 reactions 1 assignee Claimed by @justschen View on GitHub
Dominant language
TypeScript
Stars
193k
Forks
42.4k
PR merge metrics
PR metrics pending

Description

**Environment:** Linux, GitHub Copilot 0.64.1.

Julia uses `~/.julia/dev` for developed packages. Opening `~/.julia/dev/AnyPackage` as the workspace results in repeated “system files” approval prompts for ordinary source edits, even with `"chat.tools.edits.autoApprove": {"**/*": true}`.

This appears to be an uncovered case of #276193, fixed for directory-path entries by https://github.com/microsoft/vscode-copilot-chat/pull/1982.

**Cause** :robot:

In `/usr/share/code/resources/app/extensions/copilot/dist/extension.js`, line 2553, `Z9o` → `l` → `W9o.some` checks protected paths before evaluating edit-approval settings:

- The hidden-home-directory patterns `/.*` and `/.*/**` are function-valued matchers. Their branch immediately returns `y(A)`, without a workspace exception.
- Directory-path entries use `ur.isEqualOrParent(u,v) ? !(p && ur.isEqualOrParent(p,v)) : false`, where `u` is the target file, `v` the protected directory, and `p` its workspace folder. This exempts files whose workspace is inside that directory.

The second branch handles Windows `APPDATA`/`LOCALAPPDATA` and macOS `~/Library`. Hidden-home-directory patterns have no equivalent exception, so Julia project files trigger approval before `chat.tools.edits.autoApprove` is considered.

**Requested Fix** :robot:

Honor regular user-approved workspace exceptions for projects inside hidden home directories, consistent with the directory-path branch and the intended behavior described in #276193.

Files in those workspaces should proceed through normal edit-approval settings. No separate authorization mechanism should be necessary. Protections for files outside the approved workspace and explicit sensitive-file rules should remain intact.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.