Supabase課金ゲートを13日遅延でFAIL判定 — 人間記録から番人routineへの設計転換実録
課金ゲートを設定していた。達成できなければ方針を見直す、という設計だった。ゲートが通過したかどうかの判定をしたのは、期限から13日後だった。
結論
第1課金ゲートはFAIL。実支払い0件(合格条件: 5件以上)。かつ、合格の前提となる施策(有料note+X広告)が実走されたかどうかもSupabaseのDBでは確認できない状態だった。
問題は「施策が足りなかった」ではなく、**「ゲートの判定と記録を人間が行う設計にしていたこと」**だった。判定が13日遅延したのはそれが原因だ。次回からは、番人routineがSupabaseのSQL閾値を参照して自動記録する方式に切り替える。
この記事の前提(自分の状況・スタック・実験条件)
- 運用: masatoman.net(Next.js 16 + Supabase + Claude Code自動化)
- 対象: 第1課金ゲート判定(期限2026-08-22)
- データソース: Supabase
article_purchasesテーブル、dev_journalエントリ id: c263e06a - 記録した事実のみを書く。施策が「なぜ実走されなかったか」の推測は含まない
読者のよくある詰まり
- 課金ゲートや目標を設定したが、評価するタイミングを逃した
- 「記録されているはず」と思っていたデータが、外部ツールで実行していたためDBに入っていなかった
- 振り返りをしようとしたら、そもそも施策が実走されたかどうか分からない状態になっていた
- AI自動化を組んだが、肝心の判定・評価だけ人間が手動でやることになっている
実際に起きたこと
第1課金ゲートの合格条件は「有料note + X広告¥2万相当の施策を実走した結果、実支払い5件以上(本人除く)」だった。
判定期限は2026-08-22。
Supabaseで確認した結果:
- article_purchases総数: 0件(全期間、本人含む)
- 前提施策(有料note + X広告)の実走状況: Supabase外・未計測
施策がSupabase外のツール(noteのダッシュボード、X広告管理画面)で動いていたため、実走されたかどうかをDBで確認する手段がなかった。課金が発生したかどうかもDBでは追えない。
この記録がdev_journalに書き込まれたのは2026-09-04。判定期限から13日後。
原因分析
遅延の直接原因は**「ゲートの判定・記録をmasatoman本人が行う設計になっていた」**こと。
AIがコンテンツを生成し、自動でpushし、外部媒体に配信する——という動作は自動化されていた。しかし「その結果を評価して記録する」という行為は人間に残っていた。
この設計の問題点は2つ:
- 人間の記録は遅延する: タスクが積み重なると、評価・記録は後回しになる。13日の遅延がその証拠だ。
- 施策の実走がDB外になると検証不能になる: 評価しようとしても、施策が実走されたかどうかを確認する手段がなければ判定ができない。
「AIに任せた」と言いながら、判定という核心部分を人間が持っていた。それが今回の設計の穴だった。
判断軸(読者が当てはめられる形)
AIに業務を任せる設計を組む上で、「判定」をどこに置くかは重要な設計選択だ。
| 判定の種類 | 人間が持つべき条件 | SQLに委ねてよい条件 |
|---|---|---|
| ゴール達成判定 | 主観的評価が必要(品質・方向性) | 数値で定義できる閾値がある |
| 施策実走確認 | DBに記録されない外部ツールを使う | Supabase等に実走ログが残る |
| タイミング | 文脈依存・例外処理が必要 | スケジュール通りに機械的に判定できる |
今回の課金ゲートは「実支払い≥5件」という数値閾値で完全に定義されていた。Supabaseに記録があれば、SQLで即座に判定できる。人間が記録する必要はなかった。
次の設計方針:
- 課金ゲートの条件はすべてSupabase上で観測可能な指標として定義する
- 番人routineが定期的に
article_purchasesを集計し、閾値達成の有無を自動でdev_journalに記録する - 施策の実走もSupabase経由で記録できる経路を確保する(外部ツールのwebhookかPolling)
今日やること(3つ以内)
- 自分のゲート条件をSQL化できるか確認する: 設定している目標や判断ポイントを書き出し、「Supabaseのクエリで判定できるか」を確かめる。できないなら何が足りないか(テーブル・記録経路)を特定する
- 施策の実走経路を見直す: 外部ツール(noteダッシュボード・広告管理画面)でのみ確認できる施策がある場合、Supabaseに実走ログを残す経路(webhook・手動insert・日次バッチ)を設計する
- 番人routineの実装範囲を決める: 自動判定させるゲート条件を1つだけ選び、最小のSQLとroutineスクリプトで動かしてみる。全部を一度にやらない
「設計した」と「動いている」は別物だ。今回の教訓は、判定という行為が自動化されていなければ、自動化設計は絵に描いた餅になるということだった。AIに任せる設計を「完成」させるのは、人間が最後まで手を放せるかどうかにかかっている。
masatoman のメルマガ — 毎週月曜の朝に手紙を 1 通
masatoman.net の今週の記事 1 本を、読者目線で深掘りした手紙が毎週月曜 9:00 に届きます。「これ自分のことだ」が見つかる予告編。登録特典に「個人開発の収益化チェックリスト 15 項目」。
masatoman のメルマガ — 毎週月曜の朝に 1 通
masatoman.net で今週公開した記事の中から 1 本を、読者目線で深掘りした手紙が届きます。「自分も同じことやってる」「ここで詰まってた」が見つかる予告編。