Microsoft developer platformの更新情報で「uuidを11.1.0から14.0.0へ上げる」と表示されても、すぐに全ユーザーが設定変更する必要はありません。今回のポイントは、Microsoft PromptyのVS Code関連パッケージのうち、/vscode/prompty/packages/traceで使われるuuid依存関係が14系へ更新されたこと、そして14系ではNode.js 20以上やグローバルなcryptoを前提にする破壊的変更が含まれることです。特にPromptyをソースからビルドしている開発者、forkしているチーム、CI/CDでNode.js 18以前を使っている環境は確認が必要です。PR自体は2026年5月5日にクローズされ、「uuidは最新になっているため不要」と扱われていますが、現在のmainではtraceパッケージのpackage.jsonにuuid: ^14.0.0が記載されています。(GitHub)
Microsoft developer platformで確認すべき今回の更新内容
今回の更新名は、Microsoft developer platform documentation update: chore(deps): Bump uuid from 11.1.0 to 14.0.0 in /vscode/prompty/packages/traceです。内容だけを見ると単なる依存関係更新に見えますが、uuidはID生成に使われる定番ライブラリであり、メジャーバージョンを11系から14系へ上げるため、実務ではビルド環境・実行環境・TypeScript設定の確認が欠かせません。
対象はMicrosoft Promtyリポジトリ内のvscode/prompty/packages/traceです。PromptyはLLMプロンプトを.prompty形式で扱い、VS Code、Python、TypeScriptから実行できる開発者向けツールとして説明されています。また、VS Code拡張には実行ごとの.tracyトレースファイルを確認するトレースビューアが含まれます。つまり今回の変更は、Microsoft developer platform全体の利用者というより、PromptyのVS Code拡張やトレース表示まわりを開発・検証している人に関係する更新です。(GitHub)
PRではpackage-lock.jsonとpackage.jsonの2ファイルが変更対象になっており、package.jsonではuuidが^11.1.0から^14.0.0へ変更されています。PRの差分は2ファイル、合計で66行追加・20行削除として表示されています。(GitHub)
まず押さえるべき結論
今回の更新で見るべき結論は、次の3点です。
| 確認項目 | 結論 | 実務での見方 |
|---|---|---|
| PRの状態 | PR #365はクローズ済み | 「マージされたから完了」とは限らず、現在のmainや自社forkの状態を確認する |
| 依存関係 | traceパッケージのuuidは^14.0.0 | package.jsonだけでなくpackage-lock.jsonも一致しているか見る |
| 主な影響 | Node.js 20以上、グローバルcrypto、TypeScript下限、CommonJS非対応など | Node 18以前、古いTypeScript、require()利用のコードは要注意 |
特に注意したいのは、uuid 14.0.0のリリースノートに「cryptoがグローバルに存在することを期待する」「Node.js 20以上が必要」「Node.js 18サポートを落とす」といった破壊的変更が明記されている点です。(GitHub)
誰が対応すべきか
すべてのMicrosoft developer platform利用者が同じ対応をする必要はありません。影響を受けやすいのは、Promptyを「使うだけ」の人ではなく、PromptyのVS Code拡張やtraceパッケージをビルド・改修・検証している人です。
| 対象者 | 対応要否 | 確認すべきこと |
|---|---|---|
| Promptyをソースからビルドしている開発者 | 高 | Node.js、npm lockfile、npm run buildの成功可否 |
| Promptyをforkして社内ツール化しているチーム | 高 | fork側のuuidバージョン、TypeScript、CommonJS利用箇所 |
| VS Code拡張のトレースビューアを改修している人 | 中〜高 | ブラウザ/WebView環境でcryptoが使えるか、Viteビルドが通るか |
| Promptyをエンドユーザーとして使うだけの人 | 低 | 拡張機能や配布版のアップデートを通常どおり適用 |
自社プロダクトでuuid 11系を使っている開発者 | 中 | 同様に14系へ上げる場合の移行条件を確認 |
| セキュリティ・CI/CD担当者 | 中 | Node 18以前のCI、依存関係監査、ロックファイル更新の扱い |
PRはDependabotによる依存関係更新で、2026年5月5日に「uuidは最新になっているため不要」とコメントされたうえでクローズされています。これは「変更を見なくてよい」という意味ではなく、「このPR単体では不要になった」という状態です。自社環境でPromptyをforkしている場合は、PRのクローズ状態よりも、現在のmainと自社ブランチの差分を確認する方が重要です。(GitHub)
uuid 11.1.0から14.0.0で変わる主なポイント
uuid 11.1.0から14.0.0へ上げる場合、14系だけでなく、12系・13系で入った破壊的変更もまとめて踏むことになります。uuidのCHANGELOGでは、12.0.0でCommonJSサポート削除、Node.js 16サポート削除、TypeScript 5.2への更新が記載され、13.0.0ではブラウザexportsがデフォルトになる変更、14.0.0ではNode.js 18サポート削除、TypeScript最小バージョン5.4.3への引き上げ、cryptoのグローバル前提が記載されています。(GitHub)
| 変更点 | 影響しやすい環境 | 確認ポイント |
|---|---|---|
| Node.js 20以上が前提 | Node 18以前のCI、古い開発PC | node -vで20以上か確認 |
cryptoがグローバルに存在する前提 | テスト環境、古いNode、特殊なWebView | globalThis.cryptoが利用できるか確認 |
| CommonJSサポート削除 | require('uuid')を使うコード | ESMのimportへ移行 |
| ブラウザexportsがデフォルト | Vite、Webpack、VS Code WebView | バンドル結果と実行時エラーを確認 |
| TypeScript最小バージョン引き上げ | 古いTS設定のプロジェクト | TypeScript 5.4.3以上を使う |
v3()、v5()、v6()のバッファ境界チェック強化 | バッファとoffsetを直接渡すコード | 不正なoffsetでRangeErrorになる前提でテスト |
今回のtraceパッケージ自体はtype: "module"で、現在のpackage.jsonではTypeScriptが^5.5.3になっています。そのため、Prompty本体の最新状態に追随している環境では、少なくともTypeScriptの下限については大きな問題になりにくい構成です。一方、社内forkでTypeScriptを固定している場合や、古いpackage-lock.jsonを残している場合は別です。(GitHub)
実務での確認手順
Promptyのtraceパッケージを扱っている場合は、次の順で確認すると無駄がありません。
| 手順 | コマンド例 | 見るポイント | ||
|---|---|---|---|---|
| Node.jsの確認 | node -v | 20以上か。Node 18以前なら更新を検討 | ||
| 対象ディレクトリへ移動 | cd vscode/prompty/packages/trace | ルートではなくtrace配下で確認する | ||
| 依存関係の確認 | npm ls uuid | 実際に解決されているuuidのバージョン | ||
| クリーンインストール | npm ci | lockfileと依存関係が矛盾していないか | ||
| ビルド確認 | npm run build | TypeScript、Vite、exports解決の問題 | ||
| 利用箇所確認 | grep -R "from 'uuid'\ | from \"uuid\"\ | require('uuid')" . | CommonJSや深いimportが残っていないか |
package.jsonだけを見て「^14.0.0だから問題ない」と判断するのは危険です。実際にインストールされたバージョンはpackage-lock.jsonやキャッシュ、CIのNode.jsバージョンに左右されます。特にDependabot更新では、ローカルでは通ってもCIで落ちるケースがよくあります。
移行時に見落としやすいポイント
Node.js 18のままCIを回している
uuid 14.0.0はNode.js 18サポートを落としています。ローカルの開発PCはNode 20でも、GitHub Actions、Azure Pipelines、社内CIのイメージがNode 18のままだと、インストールやビルドで失敗する可能性があります。actions/setup-nodeやDockerfileのベースイメージを確認してください。
- uses: actions/setup-node@v4
with:
node-version: 20
Node.jsの更新は、uuidだけでなくViteやESLintなど周辺ツールにも影響します。PromptyのtraceパッケージはReact、Vite、TypeScriptを含むフロントエンド構成なので、依存関係全体のエンジン要件も合わせて見るのが安全です。(GitHub)
require('uuid')が残っている
uuid 12.0.0でCommonJSサポート削除が入っているため、古いコードで次のような書き方をしている場合は注意が必要です。
const { v4: uuidv4 } = require('uuid');
ESM環境では、次のようにimportへ寄せるのが基本です。
import { v4 as uuidv4 } from 'uuid';
const id = uuidv4();
Promptyのtraceパッケージはtype: "module"なので、最新構成に合わせるならESM前提で確認するのが自然です。(GitHub)
セキュリティ修正を「関係ない」と判断する
uuid 14.0.0のCHANGELOGでは、v3()、v5()、v6()で呼び出し側が渡したバッファに対して不正なoffsetが指定された場合の境界チェックに関するセキュリティ修正が記載されています。無効なoffsetではRangeErrorが投げられるようになっています。(GitHub)
v4()だけを使っているプロジェクトでは直接影響が小さい場合もありますが、依存関係更新のレビューでは「利用しているAPI」だけでなく、「テストが不正値をどう扱っているか」「例外処理が想定どおりか」まで確認すると安全です。
PRがクローズ済みなので対応不要と誤解する
今回のPR #365はクローズ済みですが、現在のmainにあるtrace/package.jsonではuuidが^14.0.0になっています。つまり、PRのステータスだけで判断せず、現在のブランチ・リリース・自社forkの状態を確認する必要があります。(GitHub)
実務では、次の順番で確認するのがおすすめです。
- 自社で使っているPromptyのコミットまたはタグを確認する
vscode/prompty/packages/trace/package.jsonのuuidを確認するpackage-lock.jsonで実際に固定されているバージョンを確認する- Node.jsとTypeScriptのバージョンを確認する
- ビルドとトレースビューアの動作確認を行う
自社プロジェクトでuuid 14へ上げる判断基準
Promptyとは別に、自社のJavaScript/TypeScriptプロジェクトでuuidを11系から14系へ上げるか迷っている場合は、次の条件を満たしてから進めると失敗しにくくなります。
| 判断基準 | 更新してよい状態 | 待った方がよい状態 |
|---|---|---|
| Node.js | 20以上へ移行済み | Node 18以前の本番・CIが残っている |
| モジュール形式 | ESMに移行済み | CommonJSのrequire()が多い |
| TypeScript | 5.4.3以上 | 5.3以前で固定している |
| ビルド環境 | Vite/Webpackの検証が済んでいる | ブラウザ向けexportsの確認が未実施 |
| テスト | UUID生成箇所をカバーしている | ID生成まわりのテストがない |
| セキュリティ | 依存関係監査の運用がある | lockfile更新をレビューしていない |
特に業務システムでは、「uuidはただのID生成だから大丈夫」と軽く見られがちです。しかし、ID生成はトレース、ログ、キャッシュキー、Reactコンポーネントの識別子、APIリクエストの関連付けなどに使われることがあります。ビルドは通っても、実行時にID生成処理が落ちると、画面表示やデバッグ情報の追跡に影響する可能性があります。
Prompty利用者が今すぐやるべきこと
Promptyを通常の拡張機能やツールとして使っているだけなら、まずは配布元のアップデートを通常どおり適用し、個別のuuid更新作業は不要です。一方、Microsoft developer platform上でPromptyを開発基盤として使っている場合は、次のチェックを行ってください。
| チェック | 内容 |
|---|---|
| 利用形態 | 配布版利用か、ソースビルドか、fork運用かを切り分ける |
| バージョン | 自社リポジトリのuuidが11系か14系か確認する |
| Node.js | 開発環境とCIの両方でNode 20以上か確認する |
| TypeScript | 5.4.3以上、できればPrompty側と同等以上か確認する |
| import形式 | require('uuid')や深いimportが残っていないか確認する |
| 動作確認 | VS Code拡張、トレース表示、ビルド、lintを確認する |
最初に見るべきファイルは、vscode/prompty/packages/trace/package.jsonとpackage-lock.jsonです。package.jsonでは依存関係としてuuid: ^14.0.0が確認でき、同じファイルにはreact、vite、typescriptなどトレースUIに関係する周辺依存も含まれています。(GitHub)
まとめ:PRの状態ではなく、自分の環境で確認する
今回のMicrosoft developer platform関連の更新は、Microsoft Promptyのtraceパッケージでuuidを11.1.0から14.0.0へ上げる依存関係更新です。PRはクローズ済みですが、現在のmainではuuid: ^14.0.0が確認できます。見るべきポイントは、PRが開いているか閉じているかではなく、自分の利用環境がuuid 14系の前提を満たしているかです。
対応の優先順位は明確です。Promptyをforkしている、VS Code拡張をソースからビルドしている、CIでNode 18以前を使っている、CommonJSのrequire()が残っている場合は、すぐに確認してください。配布版を使うだけのユーザーは、通常のアップデートを適用しつつ、開発環境を触っている場合だけNode.jsやTypeScriptの条件を確認すれば十分です。

コメント