Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

CLI tests write the developer's real ~/.mcp-inspector OAuth state file (oauth-runner, programmatic-ergonomics)

オープン
#2,719 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
半日
初心者へのやさしさ
62/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
nodejs, typescript
領域
testing-qa

調査の方向性

Start with clients/cli/__tests__/oauth-runner.test.ts and programmatic-ergonomics.test.ts, then read core/auth/node/storage-node.ts to see how it resolves the state path from homedir() and MCP_INSPECTOR_OAUTH_STATE_PATH. Follow the #2677 approach for the web integration project to add a CLI setup file that points those variables at a per-file temp dir, plus a guard that fails if the path is outside tmpdir. Done when the repro loop in the issue leaves no oauth.json* files under the scratch HOME.

索引モデルが issue の本文から書いたものです。

説明

bug v2

Problem

Two clients/cli test files write the developer's real ~/.mcp-inspector/storage/oauth.json (and oauth.json.namespaces.json): __tests__/oauth-runner.test.ts and __tests__/programmatic-ergonomics.test.ts. This is the same bug #2670 / PR #2677 fixed for the web integration project, now in the CLI suite, which has no equivalent isolation.

It was found during the v2.11.0 milestone smoke (#2718). The real store's mtime moved to 23:11:58 while coverage:cli was running (23:11:51–23:12:02) inside npm run local:gate.

It predates 2.10.1: both files are unchanged in the relevant respect since that tag. It is test-only and does not ship in the package, so it does not block 2.11.0.

Reproduce

Run each CLI test file with HOME pointed at an empty scratch dir. core/auth/node/storage-node.ts falls back to homedir() when MCP_INSPECTOR_OAUTH_STATE_PATH is unset:

cd clients/cli
for f in oauth-runner programmatic-ergonomics stored-auth e2e; do
  H=$(mktemp -d); HOME=$H npx vitest run __tests__/$f.test.ts >/dev/null 2>&1
  echo "$f: $(find $H -name 'oauth.json*' | sed "s#$H#~#" | tr '\n' ' ')"
done

Observed on the v2.11.0 tree:

  • oauth-runner and programmatic-ergonomics both create ~/.mcp-inspector/storage/oauth.json and oauth.json.namespaces.json.
  • The other ten OAuth-touching CLI test files are clean.

Expected

No CLI test reads or writes the developer's real OAuth state.

The fix is the #2677 shape: a CLI setup file that points MCP_INSPECTOR_OAUTH_STATE_PATH (and whatever else storage-node.ts resolves from home) at a per-file temp dir, plus a guard that fails if the resolved path is outside tmpdir. That also stops concurrent worktree gates racing on one shared file.

主要言語
TypeScript
スター
11.1k
フォーク
1.5k
平均マージ
4時間 28分
マージ済み PR(30日)
151

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

modelcontextprotocol/inspector のほかの issue

modelcontextprotocol/inspector の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。