ソースを書く行為が、仕様を完成させていた
人間がソースコードを書くときには、強制的に詳細について考える必要があった。チャンクの強制展開 仕様書がメインになり、都度ソースコードが生成できるようになったとしたら、このチャンクの強制展開が行われず、無自覚な曖昧さによって結果が揺れる現象が起きる。 ソースコードには曖昧な記述はできない
→人間がソースコードを書くことで、仕様の曖昧さを潰していた。
→LLMにソースコードを書かせると、この仕様の曖昧さをLLM任せになってしまう。
🤖
無自覚な曖昧さが生まれる構造
人間は「脳内で補完しながら」仕様を書く
書いた本人には自明なことが、文章に出てこない
「暗黙知の言語化失敗」とも言える
ソースコードが「穴を塞いできた」仕組み
コードを書く=意思決定の連続
DELETE FROM users WHERE id = ? と書いた瞬間に物理削除に確定する
LLMが補完すると何が起きるか
LLMは「それらしい選択」をする
論理削除が一般的と学習していれば論理削除を選ぶ
書いた人は気づかない→レビューもスルー→本番で発覚
認知科学的な視点
人間の思考は「圧縮されたチャンク」で動いている
「削除機能」と思った瞬間、細部はチャンクに隠れる
面白い逆説
仕様書は「何をしたいか」を書くものだが、「何をしたいか」を完全に言語化できる人間はいない
無自覚な曖昧さは「人間の認知の限界」に由来する。
LLMが補完を上手くやるほど、この限界が隠蔽される。