バグが起きたときに頼りになるのが、プログラムが吐き出す実行記録、いわゆるログです。何時にどの処理が走って、どんな値が入っていて、どこでこけたか。この足跡があるからこそ、原因を追いかけられます。
ところが現場の人ほどよく知っています。ログは書いた瞬間には完成しない、と。実際にバグが起きてから「あ、ここの値もログに出しておけばよかった」と気づいて、慌てて追加して、次のバグを待つ。この地味な繰り返しは、ソフトウェア開発の裏でずっと続いています。
この「書いて、直して、また書く」というサイクルをLLMに肩代わりさせようとする発想が、最近の研究から出てきました。コードを実際に動かしてみて、出てきたログを自分で読んで、「これで原因までたどれるかな」と考えて、足りなければ書き直す。人間のエンジニアが頭の中でやっていることを、そのまま機械に持ち込んだ格好です。

本記事では、この新しいやり方がどんな仕組みで成り立っているのか、静的にコードを読むだけの既存手法と比べて何がどう変わるのかを見ていきます。