API設計でいちばん怖いのは「人間には通るけど、AIには通らない」ことだった
この元記事は、APIドキュメントの書き方ひとつで、AI agent が普通に失敗する話を扱っている 問題は「出力は number、入力は string」という型のズレ。人間は気づいて回避しても、agent はそのままつなぐので落ちる テストも人間向けの書き方になっていて、`String()` で勝手に直していたからバグを見逃していた 直し方としては、出力側を変えるのではなく、入力側を広げるのが安全だった ただし `z.union()` や `z.coerce.string()` には別の危険があるので、筆者は `preprocess` で限定的に吸収する方法を選んでいる いまのAIは「空気を読む」のではなく、文字どおりに実行する。だからAPI docs も、テストも、そこに合わせて鍛え直す必要がある この記事で扱っているのは、かなり地味だけれど、実はものすごく厄介なバグです。 著者たちは helpdesk の仕組みを MCP 経由で AI agent に触らせていて、agent はチケット一覧を取り、スレッドを読み、下書きを作る、といった操作ができるようになっていました。 で、ある日、
papoo.work