github / github/copilot-cli

npx vitest run hangs when running full test suites via Copilot CLI terminal

Open
#3,308 3 comments 0 reactions 0 assignees View on GitHub
area:platform-windows area:tools
Dominant language
Shell
Stars
11.2k
Forks
1.9k
Avg merge
14h 16m
Merged PRs (30d)
6

Description

### Describe the bug

## Summary

Running `npx vitest run` for a full test suite hangs indefinitely when executed through the GitHub Copilot CLI terminal. The same command works fine in a regular PowerShell/cmd terminal.

## Environment

- **Tool**: GitHub Copilot CLI (VS Code)
- **OS**: Windows
- **Node**: v22.14.0
- **npm**: 10.9.2
- **Vitest**: v4.1.2

## Reproduction Steps

1. Open a Copilot CLI terminal session in VS Code
2. Run `npx vitest run`
3. Vitest starts, queues all test files, runs a few, then hangs with no further output
4. Typically nothing is seen piped back to the session window (the above has been deduced)

## What Works

- Running a **single test file** works fine: `npx vitest run some.test.ts`
- Running **batches of up to ~10 files** works fine
- Running with **JSON output to file** works and completes successfully:
```
npx vitest run --reporter=json --outputFile=test-results.json
```

## Root Cause

According to copilot which tried to diagnose this:
Vitest's default live reporter continuously rewrites terminal output using ANSI escape sequences (cursor movement, line clearing) for all queued files simultaneously. This high-volume ANSI output appears to overflow or deadlock the Copilot CLI's stdout pipe, causing the process to hang.

Redirecting output to a file bypasses the pipe entirely and the suite completes normally.

## Workaround

```bash
npx vitest run --reporter=json --outputFile=test-results.json
```

## Suggested Fix

### Affected version

vs code 1.120.0

### Steps to reproduce the behavior

1. Open a Copilot CLI terminal session in VS Code
2. Run `npx vitest run`
3. Vitest starts, queues all test files, runs a few, then hangs with no further output
4. Typically nothing is seen piped back to the session window (the above has been deduced)

### Expected behavior

See output of vitest

### Additional context

_No response_

Contributor guide

Open the contributing guide

Research direction

No repository file or test is named. Start by reproducing `npx vitest run` in the Windows Copilot CLI terminal, then compare the default reporter with `--reporter=json --outputFile=test-results.json`; done means the full suite completes and output is visible without the hang.

Written by the indexing model from the issue text.

Assessment

Tech stack
node.js, shell, vscode
Domain
cli, developer-experience, testing-qa
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.