title: 「何回やっても同じ結果」——非エンジニアがAIと仕事して学んだ冪等性という概念
tags: ClaudeCode,AI,設計,非エンジニア,API
private: false
updated_at:
id: null
organization_url_name: null
slide: false
送信ボタンを2回押したことがあるか
フォームの送信ボタンを押したとき、反応が遅いから「押せてないかな?」ともう一度押した。後で確認したら注文が2件入っていた。
これは笑い話ではなく、設計の問題だ。「ボタンを2回押したら2件入るシステム」と「2回押しても1件しか入らないシステム」は、仕様として別物だ。
この違いに名前がついている。**冪等性(べきとうせい)**だ。
冪等性とは何か
数学的な定義は難しいので捨てる。実用的な定義だけ:
同じ操作を何回繰り返しても、結果が変わらない性質。
送信ボタンの例で言うと:
- 冪等ではないシステム: 2回押したら2件注文が入る
- 冪等なシステム: 何回押しても「最終的に注文が1件ある状態」になる
どちらが良い・悪いかではなく、設計として意図的に選択するものだ。
AIと仕事して初めて実感した冪等性
Claude Codeを使ってZennに記事を投稿するシステムを作ったとき、APIの仕様で実感した。
Zennの記事APIには2種類の操作がある。
POST(新規作成): 呼ぶたびに新しい記事が作られる
PUT(内容更新): 何回呼んでも最終的な内容は同じになる
POSTは非冪等、PUTは冪等だ。
そしてやらかした。エラーが返ってきたと思って、POSTを2回叩いた。実際にはレスポンスを正しく解析できていなかっただけで、1回目は成功していた。結果:ゴースト記事が2個Zennのダッシュボードに出現した。
これは「POSTが非冪等である」という設計を理解していなければ起きない事故ではない。でも知らないとハマる。
冪等性の実例一覧
エンジニアが当然のように使っている冪等性の例を並べる。
冪等な操作
- GET(取得): 何回見ても情報は変わらない
- PUT(上書き更新): 「このIDの記事の本文を〇〇にする」→ 何回やっても最終状態は同じ
- DELETE(削除): すでに存在しないものを削除しようとしてもエラーにしない設計
冪等でない操作
- POST(新規作成): 呼ぶたびに新しいリソースが生まれる
- 「1追加する」処理: 何回も実行すると数字がどんどん増える
非エンジニアが直感的に理解できる場面
Excel/Googleスプレッドシートのマクロ:
「B列の数字を2倍にする」マクロを2回実行したら4倍になった。これは冪等ではない設計。「B列の数字がA列の2倍になっていない場合だけ修正する」マクロにすれば冪等になる。
Slackのリマインダー:
「月曜日にリマインダーを送る」設定は冪等。何回設定しても月曜日に1回届く(重複排除が設計されている)。
重複実行が怖いバッチ処理:
夜間処理が失敗して再実行したら、同じデータが2回処理されて二重請求が発生した——これは冪等性のない設計の典型的な事故だ。
知ってから変わった設計の考え方
冪等性を知ってから、「これは何回やっても大丈夫か?」という問いを持つようになった。
Claude Codeで自動化スクリプトを書くとき、「このスクリプトが2回実行されたらどうなるか」を必ず考える。
- ファイルへの書き込み → 追記か上書きか
- APIの呼び出し → POST(新規)かPUT(更新)か
- データベースへの挿入 → 重複チェックが必要か
エラーが起きたとき、再実行できるかどうかはシステムの信頼性に直結する。再実行しても安全なシステム(冪等なシステム)は、障害に強い。
まとめ
冪等性(Idempotency)——何回やっても同じ結果になる性質。
非エンジニアにとってこの概念は「APIの話」ではなく、日常のシステム設計の話だ。ボタンを2回押しても安全か。マクロを再実行しても大丈夫か。バッチ処理が失敗して再起動したとき、データは壊れないか。
この問いを持つだけで、システムの設計が変わる。
この記事は「非エンジニアがAIと仕事して初めて知ったエンジニア概念」シリーズの1本。前回:Single Source of Truth(SSOT)
Claude Codeのトークン消費パターンが気になる方はToken Checkup(無料・ブラウザで完結)で診断できます。
📖 トークン消費に困っているなら → Claude Codeのトークン消費を半分にする——800時間の運用データから見つけた実践テクニック(¥2,500・はじめに+第1章 無料)
📖 AIで事業を回す実体験を全記録 → Claude Code×個人事業 800時間の全記録(¥800・第2章まで無料)
⚠️ Opus 4.7をお使いの方へ(2026年4月)
Opus 4.7で安全分類器の不具合・トークン消費急増が報告されています。Safety Scannerで設定を無料チェック。対策はSurvival Guideを参照。