[007]2026.03.24log

Something went wrong

AIの判断を鵜呑みにしてはいけない瞬間

決済ボタンを押した。モーダル画面が開いた。カード情報の入力画面が出るはずだった。代わりに表示されたのはこれだった。

「Something went wrong.」

五単語。これだけでは何も分からない。エラーコードもなく、詳細メッセージもない。ただ「何かが間違った」。

管制塔に送った。ところが今回は奇妙なことが起きた。

AIがエラーを診断する代わりに、私に質問をしてきた。

「マスタープラン文書には決済サービスとしてLemonSqueezyが指定されていますが、現在の実装はPaddleを使用しています。なぜ変更されたのですか?」

そしてもう一つ。

「Unlimitedティアが$19/月ですが、Maxティアが$29/月です。上位ティアの方が高いのが一般的ですが、なぜUnlimitedの方が安いのですか?」

二つの質問とも合理的に見えた。しかし二つとも——前提が間違っていた。

LemonSqueezyからPaddleに切り替えたのは意図的な決定だった。PaddleがMoR(販売代行者)として世界各国の税金処理を自動化してくれるからだ。マスタープランはこの決定より前に作成された文書だった。

Unlimitedティアが安いのも意図的だった。BYOK——「Bring Your Own Key」というモデルだ。ユーザーが自分のAI APIキーを持ち込んで使う。するとAIコストを私が負担しなくて済む。AIコストが抜けるから価格が下がる。

AIはこのコンテキストを知らなかった。「古い文書」を参照し、一般的な価格体系の常識を適用した。どちらも間違いではなかったが、現状に合っていなかった。

この時初めてAIにこう言った。

「claude.mdを確認して。」

claude.mdはプロジェクトの最新設定ファイルだ。マスタープランより新しい決定事項が反映されている。AIがこのファイルを読んでようやく「Paddleへの変更が意図的だったのですね。BYOK構造も理解しました」と言った。

前提を修正すると診断が変わった。

AIが容疑者を三つに絞ってきた。一つ目、PaddleのKYC(販売者本人確認)が完了していない可能性。二つ目、Sandbox用キーとLive用キーの不一致。三つ目、Paddleダッシュボードの商品IDとコードの商品IDが一致しない可能性。

このエピソードで学んだのは決済エラーの解決法ではなかった。

AIが間違い得るということを経験したことだった。より正確には——AIが間違ったのではなく、AIが参照したコンテキストが古かったか不完全だったのだ。AIは与えられた情報の中でしか判断しない。古い文書を渡せば古い判断をする。

だからAIに仕事を出すとき大事なのは「良い質問」だけでなく「良いコンテキスト」だ。そしてAIの答えを聞いたとき、その答えが正しいかを確認するのは自分の役目だ。


🔧 このエピソードの技術用語解説

決済モーダル(Payment Modal) 決済情報を入力するポップアップ画面。ECサイトで「購入する」を押したときに出るカード入力画面。

Paddle 決済を代行するサービス。MoR(Merchant of Record)として各国の税金計算と納付を自動処理する。

MoR(Merchant of Record) 法的に販売者の役割を代行するサービス。韓国で作ったサービスをアメリカ人が購入するとき、アメリカの税規定をMoRが処理する。

KYC(Know Your Customer) 販売者の本人確認手続き。Paddleが「あなたが正当な販売者であることを確認しました」と承認しないと実際の決済が動作しない。

Sandbox vs Live テスト環境と本番環境。Sandboxでは偽の決済でシステムをテストし、Liveでは本物のお金が動く。テスト用APIキーと本番キーは異なり、混同するとエラーが発生する。

BYOK(Bring Your Own Key) ユーザーが自分のAI APIキーを持ち込んで使うモデル。サービス提供者がAIコストを負担しないため、サブスクリプション価格が低くなる。