← ishizakahiroshi.com
失敗談 2026-07-18

AI が「完了しました」と言ってきたけど、CSV の行数を数えたら嘘だった話

AI が完了報告を胸に貼っているが、床には未完のまま残された紙片が散らばっている構図のイラスト

前のセッションで AI が「Block 2 完了しました」と胸を張ったので、そのまま次の Block へ進もうとしました。念のため CSV の行数を数えたら、直っているはずの 21 行が直っていませんでした。「A案で解消」と自信ありげに書かれた freeze 文書の主張と、実ファイルの中身が真っ向から食い違っていました。SHA・行数・grep -c の 3 点独立検証で捏造を数秒で見抜き、複雑な例外契約より原則に戻すまでの記録です。

Qiita で読む → 姉妹記事を note で読む →

この記事のテーマ

AI データ検証の 3 本柱: SHA / CSV 行数 / grep -c の独立検証と、契約を増やす前に原則を疑う設計思想を示すインフォグラフィック

AI の完了報告を鵜呑みにしない 3 本柱と、原則回帰の設計思想(NotebookLM 生成)

AI コーディング CLI に任せた前セッションの成果物(freeze 文書 + candidate SQL + 品質フラグ CSV)が、断定的な文言で「完了しました」と主張していました。ただ、実ファイルの行数と grep 結果を測ってみると、主張どおりの変更が一切入っていませんでした。AI 側の tool output が壊れて、Write が「成功」と返し、直後の Grep が期待する数を返す、という食い違いを AI 自身が検出できない状態になっていた、というのが後で判明した真相です。

これに気づいたきっかけは、SHA・行数・grep -c の 3 点独立検証でした。1 点でも主張と噛み合わなければ、他の 2 点も疑う。今回は 3 点すべてが噛み合わなかったので判定は数秒でした。詳しい発見過程と、そもそも複雑な例外契約(§4)自体を廃止して「原表値をそのまま出す+出典 URL を添える」原則に戻した経緯は、Qiita 本文に書いています。

関連リンク