大規模なプロダクトでは、lintや、use漏れチェック、使ってないファイルの検出といった、静的解析を伴う開発支援ツールが重宝されます。
しかし、存在するすべての記法を扱う必要のある汎用ツールでは、どうしても実行時間が伸びてしまったり、プロジェクト固有のかゆいところに手が届きにくかったり、といった課題がつきものです。
発表者が携わる、開発期間約10年・数十万行規模のリポジトリでは、近年注目されている"vibe coding"の考えを下敷きに、プロジェクト専用の軽量なツールを開発して、開発支援に活用しています。
本発表では、プロジェクト固有の静的解析ツールをAIとともに開発し、レガシーコード改善に活用する「バイブス静的解析」を提唱します。
静的解析を用いたツールのこれまで
PPI, PPRを使った汎用ツールのおさらい
汎用的がゆえに、いかなるソースコードも正しく解釈しなければならない宿命
ツールの実行時間増加への利用者側の工夫
バイブス静的解析のアプローチ
プロジェクトに合わせた専用の静的解析ツールを「バイブス」重視、すなわち、勢いで開発する
完璧を目指さず、コードベース上で必要な表現だけに対応する
AIの力を借りて、誰でも保守でき、壊れても機能開発の片手間に短時間で直せるものを目指す
ゴール
「バイブス静的解析」の考えを使って、新たなツールを勢い重視で開発できるようになる
お手元のリポジトリから、数秒以内にuse漏れや不要ファイルといったエラーを検出できるようになる