Microsoft developer platformのuuid 14更新を確認:Prompty traceの影響と対応ポイント

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.0package.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、古い開発PCnode -vで20以上か確認
cryptoがグローバルに存在する前提テスト環境、古いNode、特殊なWebViewglobalThis.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 -v20以上か。Node 18以前なら更新を検討
対象ディレクトリへ移動cd vscode/prompty/packages/traceルートではなくtrace配下で確認する
依存関係の確認npm ls uuid実際に解決されているuuidのバージョン
クリーンインストールnpm cilockfileと依存関係が矛盾していないか
ビルド確認npm run buildTypeScript、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)

実務では、次の順番で確認するのがおすすめです。

  1. 自社で使っているPromptyのコミットまたはタグを確認する
  2. vscode/prompty/packages/trace/package.jsonのuuidを確認する
  3. package-lock.jsonで実際に固定されているバージョンを確認する
  4. Node.jsとTypeScriptのバージョンを確認する
  5. ビルドとトレースビューアの動作確認を行う

自社プロジェクトでuuid 14へ上げる判断基準

Promptyとは別に、自社のJavaScript/TypeScriptプロジェクトでuuidを11系から14系へ上げるか迷っている場合は、次の条件を満たしてから進めると失敗しにくくなります。

判断基準更新してよい状態待った方がよい状態
Node.js20以上へ移行済みNode 18以前の本番・CIが残っている
モジュール形式ESMに移行済みCommonJSのrequire()が多い
TypeScript5.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以上か確認する
TypeScript5.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の条件を確認すれば十分です。

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次