microsoft / microsoft/AI-Engineering-Coach

Bug: FileSystemError unhandled-rejection with relative 'output:' file path

Open
#82 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
TypeScript
Stars
4.2k
Forks
585
Avg merge
22h 5m
Merged PRs (30d)
16

Description

Description

The extension throws an unhandled rejection error when attempting to resolve a filesystem provider on virtual output channels using relative paths.

Full Log Error:
2026-05-28T14:34:54.990Z pid=18039 [extension] rules-loaded | rss=1310.2MB heap=960.6MB/1089.9MB ext=23.6MB | builtin=45 personal=0 project=0 pending=0 root=/home/.tools
2026-05-28T14:34:54.990Z pid=18039 [extension] metrics-loaded | rss=1310.2MB heap=960.6MB/1089.9MB ext=23.6MB | builtin=10 personal=0 project=0
2026-05-28T14:34:58.110Z pid=18039 [extension] command-open | rss=1310.6MB heap=963.3MB/1090.1MB ext=23.6MB
2026-05-28T14:34:58.110Z pid=18039 [panel] create-new | rss=1310.6MB heap=963.3MB/1090.1MB ext=23.6MB
2026-05-28T14:34:58.111Z pid=18039 [panel] constructor | rss=1310.6MB heap=963.3MB/1090.1MB ext=23.6MB
2026-05-28T14:34:58.111Z pid=18039 [panel] loadData-start | rss=1310.6MB heap=963.4MB/1090.1MB ext=23.6MB
2026-05-28T14:34:58.113Z pid=18039 [panel] logs-dirs-found | rss=1310.6MB heap=963.4MB/1090.1MB ext=23.6MB | count=3
2026-05-28T14:34:58.113Z pid=18039 [parser] child-start | rss=1310.6MB heap=963.4MB/1090.1MB ext=23.6MB | attempt=1 logsDirs=3 worker=/home/rgr/.vscode-insiders/extensions/ai-engineer-coach.ai-engineer-coach-0.1.0/dist/parse-worker.js maxOldSpaceMb=30720
2026-05-28T14:34:58.223Z pid=18039 [parser] child-progress-phase | rss=1310.6MB heap=963.5MB/1090.1MB ext=23.6MB | attempt=1 phase=1 detail=Computing directory fingerprints
2026-05-28T14:34:58.268Z pid=18039 [parser] child-progress-phase | rss=1310.6MB heap=963.5MB/1090.1MB ext=23.6MB | attempt=1 phase=2 detail=Cold parse
2026-05-28T14:36:11.201Z pid=18039 [extension-host] unhandled-rejection | rss=612.8MB heap=400.2MB/408.4MB ext=16.7MB | Error (FileSystemError): Unable to resolve filesystem provider with relative file path 'output:extension-output-ai-engineer-coach.ai-engineer-coach-%231-AI Engineer Coach'
at or._handleError (file:///usr/share/code-insiders/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:502:22201)
at Object.stat (file:///usr/share/code-insiders/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:502:19119)
...
2026-05-28T14:40:55.009Z pid=18039 [extension-host] unhandled-rejection | rss=720.3MB heap=439.7MB/487.2MB ext=16.8MB | Error (FileSystemError): Unable to resolve filesystem provider with relative file path 'output:extension-output-ai-engineer-coach.ai-engineer-coach-%231-AI Engineer Coach'
at or._handleError (file:///usr/share/code-insiders/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:502:22201)
at Object.stat (file:///usr/share/code-insiders/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:502:19119)
2026-05-28T14:40:55.052Z pid=18039 [extension-host] unhandled-rejection | rss=728.1MB heap=447.9MB/494.9MB ext=16.8MB | Error (FileSystemError): Unable to resolve filesystem provider with relative file path 'output:extension-output-ai-engineer-coach.ai-engineer-coach-%231-AI Engineer Coach'
at or._handleError (file:///usr/share/code-insiders/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:502:22201)
at Object.stat (file:///usr/share/code-insiders/resources/app/out/vs/workbench/api/node/extensionHostProcess.
js:502:19119)
2026-05-28T14:42:23.282Z pid=18039 [extension-host] unhandled-rejection | rss=706.1MB heap=431.5MB/501.7MB ext=17.2MB | Error (FileSystemError): Unable to resolve filesystem provider with relative file path 'output:extension-output-ai-engineer-coach.ai-engineer-coach-%231-AI Engineer Coach'
at or._handleError (file:///usr/share/code-insiders/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:502:22201)
at Object.stat (file:///usr/share/code-insiders/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:502:19119)
2026-05-28T14:42:23.285Z pid=18039 [parser] child-exit | rss=706.1MB heap=431.5MB/501.7MB ext=17.2MB | attempt=2 code=null signal=SIGABRT
2026-05-28T14:42:23.285Z pid=18039 [panel] loadData-error | rss=706.1MB heap=431.5MB/501.7MB ext=17.2MB | Error: Child process killed by SIGABRT
2026-05-28T14:44:03.266Z pid=47687 [extension] rules-loaded | rss=669.8MB heap=411.1MB/452.4MB ext=18.0MB | builtin=45 personal=0 project=0 pending=0 root=/home/.tools
2026-05-28T14:44:03.266Z pid=47687 [extension] metrics-loaded | rss=669.8MB heap=411.1MB/452.4MB ext=18.0MB | builtin=10 personal=0 project=0
2026-05-28T14:44:19.889Z pid=47687 [extension] command-reload | rss=1379.6MB heap=969.0MB/1081.2MB ext=23.6MB
2026-05-28T14:44:19.889Z pid=47687 [panel] create-new | rss=1379.6MB heap=969.0MB/1081.2MB ext=23.6MB
2026-05-28T14:44:19.890Z pid=47687 [panel] constructor | rss=1379.6MB heap=969.0MB/1081.2MB ext=23.6MB
2026-05-28T14:44:19.890Z pid=47687 [panel] loadData-start | rss=1379.6MB heap=969.0MB/1081.2MB ext=23.6MB
2026-05-28T14:44:19.892Z pid=47687 [panel] logs-dirs-found | rss=1379.6MB heap=969.1MB/1081.2MB ext=23.6MB | count=3
2026-05-28T14:44:19.892Z pid=47687 [parser] child-start | rss=1379.6MB heap=969.1MB/1081.2MB ext=23.6MB | attempt=1 logsDirs=3 worker=/home/rgr/.vscode-insiders/extensions/ai-engineer-coach.ai-engineer-coach-0.1.0/dist/parse-worker.js maxOldSpaceMb=30720
2026-05-28T14:44:20.016Z pid=47687 [parser] child-progress-phase | rss=1379.9MB heap=969.5MB/1081.2MB ext=23.6MB | attempt=1 phase=1 detail=Computing directory fingerprints
2026-05-28T14:44:20.028Z pid=47687 [parser] child-progress-phase | rss=1379.9MB heap=969.6MB/1081.2MB ext=23.6MB | attempt=1 phase=2 detail=Cold parse
2026-05-28T14:44:29.815Z pid=47687 [parser] child-exit | rss=632.6MB heap=367.2MB/374.1MB ext=16.7MB | attempt=1 code=null signal=SIGABRT
2026-05-28T14:44:29.815Z pid=47687 [parser] child-retry | rss=632.6MB heap=367.2MB/374.1MB ext=16.7MB | reason=Child process killed by SIGABRT maxOldSpaceMb=30720
2026-05-28T14:44:29.815Z pid=47687 [parser] child-start | rss=632.6MB heap=367.2MB/374.1MB ext=16.7MB | attempt=2 logsDirs=3 worker=/home/rgr/.vscode-insiders/extensions/ai-engineer-coach.ai-engineer-coach-0.1.0/dist/parse-worker.js maxOldSpaceMb=30720
2026-05-28T14:44:29.917Z pid=47687 [parser] child-progress-phase | rss=632.7MB heap=367.5MB/374.4MB ext=16.7MB | attempt=2 phase=1 detail=Computing directory fingerprints
2026-05-28T14:44:29.929Z pid=47687 [parser] child-progress-phase | rss=632.7MB heap=367.6MB/374.4MB ext=16.7MB | attempt=2 phase=2 detail=Cold parse
2026-05-28T14:44:39.850Z pid=47687 [parser] child-exit | rss=596.7MB heap=372.1MB/379.7MB ext=18.8MB | attempt=2 code=null signal=SIGABRT
2026-05-28T14:44:39.850Z pid=47687 [panel] loadData-error | rss=596.7MB heap=372.1MB/379.7MB ext=18.8MB | Error: Child process killed by SIGABRT

Steps to Reproduce
  1. Open VS Code Insiders.
  2. Activate the AI Engineer Coach extension.
  3. Open or switch to the extension's output channel window/logs, or trigger an extension command that generates logs.
  4. Check the Developer Tools console/extension host logs to observe the unhandled rejection crash.
Expected Behavior

The extension should properly handle or filter out custom virtual URI schemes (like output:) and ensure that relative paths are not passed directly into filesystem methods like fs.stat.

Extension Version

0.1.0

VS Code Version

1.22.0-insiders

Operating System

Ubuntu 26

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the extension's output-channel and log-loading flow from the reported extension-host, panel, and parser events, then locate filesystem calls such as fs.stat handling the output: URI. Done means virtual output schemes and relative paths no longer produce an unhandled rejection or crash during the listed reproduction steps.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.