microsoft / microsoft/vscode

Markdown file links will be interpreted incorrrectly.

Open
#324,700 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
193k
Forks
42.4k
PR merge metrics
PR metrics pending

Description

Type: Bug

VS Code fails to open a Markdown-linked file if the link was previously followed before the file existed. After the file is created, VS Code continues to report “file not found” even though the file now exists.

Steps to Reproduce:
1. Create a Markdown file.
2. Add a Markdown link pointing to a non‑existent file.
3. Ctrl+Click the link.
4. VS Code correctly shows: “File not found at path …”
5. Create the file at the referenced path.
6. Try to open the file again by either:
1. Ctrl+Clicking the same Markdown link, or
2. Opening the file directly from the Explorer.
7. Actual behavior: VS Code still shows “File not found at path …” even though the file now exists.
8. Expected behavior: VS Code should open the newly created file once the path becomes valid.

Additional Notes:
1. It appears VS Code caches the “file not found” state and does not re-check the file system after the file is created.
2. Restarting VS Code can fix the issue, suggesting a stale file-system lookup.

VS Code version: Code 1.109.5 (072586267e68ece9a47aa43f8c108e0dcbf44622, 2026-02-19T19:43:32.382Z)
OS version: Windows_NT x64 10.0.26200
Modes:

System Info

|Item|Value|
|---|---|
|CPUs|AMD Ryzen 7 H 255 w/ Radeon 780M Graphics (16 x 3793)|
|GPU Status|2d_canvas: enabled
GPU0: VENDOR= 0x1002, DEVICE=0x1900 [AMD Radeon 780M Graphics], DRIVER_VENDOR=AMD, DRIVER_VERSION=32.0.21030.14003 *ACTIVE*
GPU1: VENDOR= 0x1414, DEVICE=0x008c [Microsoft Basic Render Driver], DRIVER_VERSION=10.0.26100.8521
Machine model name:
Machine model version:
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_graphite: disabled_off
trees_in_viz: disabled_off
video_decode: enabled
video_encode: enabled
webgl: enabled
webgl2: enabled
webgpu: enabled
webnn: disabled_off|
|Load (avg)|undefined|
|Memory (System)|31.27GB (13.20GB free)|
|Process Argv|--crash-reporter-id 98b2e576-bb7c-4cbb-b34c-9a41f633daea|
|Screen Reader|no|
|VM|0%|
Extensions (26)

Extension|Author (truncated)|Version
---|---|---
tongyi-lingma|Ali|2.6.3
codegeex|AMi|2.27.6
dbclient-jdbc|cwe|1.4.6
vscode-database-client2|cwe|9.0.2
vscode-office|cwe|4.1.3
prettier-vscode|esb|12.4.0
debugpy|ms-|2026.6.0
python|ms-|2026.4.0
vscode-pylance|ms-|2026.2.1
vscode-python-envs|ms-|1.20.1
cmake-tools|ms-|1.23.52
cpp-devtools|ms-|0.5.13
cpptools|ms-|1.32.2
cpptools-extension-pack|ms-|1.5.1
hexeditor|ms-|1.11.1
live-server|ms-|0.4.19
vscode-thunder-client|ran|2.41.0
java|red|1.55.0
datetime|rid|2.2.2
vscode-gradle|vsc|3.18.0
vscode-java-debug|vsc|0.59.0
vscode-java-dependency|vsc|0.27.6
vscode-java-pack|vsc|0.31.1
vscode-java-test|vsc|0.46.0
vscode-maven|vsc|0.45.3
volar|Vue|3.3.6

(1 theme extensions excluded)

A/B Experiments

```
vsliv368:30146709
binariesv615:30325510
nativeloc1:31344060
dwcopilot:31170013
dwoutputs:31242946
copilot_t_ci:31333650
e5gg6876:31282496
pythonrdcb7:31342333
6518g693:31463988
aj953862:31281341
6abeh943:31336334
envsdeactivate2:31538737
cloudbuttont:31379625
3efgi100_wstrepl:31403338
55ia6109:31457054
ec5jj548:31422691
cp_cls_t_966_ss:31526232
4je02754:31466945
8hhj4413:31478653
cp_cls_c_1081:31454833
conptydll_true:31498968
e9c30283:31461165
test_treatment2:31471001
idci7584:31464702
e3e4d672:31494082
ei9d7968:31496641
chat:31457767
7e187181:31503455
ghj88844:31499326
ddid_t:31478206
cp_cls_t_1082:31535311
j0d79568:31499440
jb_cp_cls_t_632:31543129
852d2892:31506239
748c7209:31512887
ha629193:31508444
cdk-lw-on:31524445
8hfba999:31537718
jbcp_cls_pctr_t:31531130
cp_intellij_c_nes:31533503
gf14b233:31526830
h561g132:31533256
ihg5j128:31534457
7g2b5551:31542111

```

Contributor guide

Open the contributing guide

Research direction

No source file or test is named in the report. Start by reproducing the Markdown-link workflow in VS Code, then trace file-link resolution and its handling of a path that changes from missing to existing; done means Ctrl+Click and Explorer opening both succeed without restarting VS Code.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript, vscode
Domain
desktop-dev, developer-experience
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.