GitHub Copilot Chatを使ってnodeモジュールをアップデートする

はじめに

参加しているSaaSアプリケーションのwebpackのバージョンが古いので、まずはnodeモジュールを最新のものにするところから取り掛かりました。なるべく最小単位で逐次進めていきたいので、ひとまずwebpackに関連するnodeモジュールがどれであるか、というところから調べていきました。

GitHub Copilot Chat

GitHub Copilot Chatは、GitHubに公開されているレポジトリから学習データを収集したAIであり、エンジニアの開発支援を行う生成AIです。今回は、nodeモジュールを列挙してもらい、webpackに関連のありそうなモジュールを探してもらいました。

nodeモジュールの調査

英語でやりとりした方が確実そうだったので、英語で対話しています。

生成AIに直接webpackに関連するものを聞くと、ほとんどの場合、いくつかしか列挙してくれません。これは、生成AIが実際に全て調べた上で列挙するということを理解しているのではなく、この質問に対して機械的にそれっぽい回答を生成しているということによるものです。回答時に順次テキストを生成している関係上、列挙している途中で急に満足して回答を切り上げる場合が多いようです。

今回はこれを避けるために、一度生成AIに全てのnodeモジュールを列挙したテーブルを作成してもらいました。

次は、このテーブルに操作を施す名目で、webpackに関連があるかどうかを調べてもらいます。

各モジュールについて、うまく yes もしくは no と答えさせることができました。次にyesと答えたもののみ出力してもらいます。

とりあえず、このリストをベースにnodeモジュールのアップデートを行っていき、エラーに順次対応していこうと思います。

まとめ

GitHub Copilot Chatに、webpackに関連のありそうなモジュールを調べてもらいました。コツは、一度全ての調査対象をテーブルとして出力してもらってから調査してもらうことです。確実性は保証しきれないので、出力結果をもとに、足りない部分を補いましょう。