AIインスタ担当 v3 — 段階リリース案の確認依頼

2026-04-17 | 高木悠哉 → 子安さん

✅ このページの要点
  1. GW明けに 10店舗で軽構成スタート(Stage 1)→ 収益が立つ 20店舗規模で本格化(Stage 2)の段階リリース
  2. 技術スタック — Supabase (Tokyo) + Cloudflare Workers のハイブリッド。構成は同一、投資規模だけを段階化
  3. Stage 1 は最小構成でサッと立ち上げて運用開始、Stage 2 への投資依頼は運用実績が見えてから

1. 何を作るか

飲食店がスマホで料理画像をアップロードすると、AI がキャプション・ハッシュタグを自動生成し、 承認フロー or 即時で Instagram に投稿する SaaS。既に v2 が稼働中。 これを 100店舗まで安全に拡大するための v3 を、段階リリースで進めたい。

1.1 機能スコープ

機能Stage 1 (10店舗)Stage 2 (20+店舗)
画像アップロード + AI キャプション生成(Claude)MVP継続
即時投稿 / 予約投稿(日時指定)MVP継続
承認フロー(店長承認後に投稿)MVP継続
投稿履歴画面・店舗設定 GUIMVP継続
IG トークン自動更新・投稿メソッドモードMVP継続
LINE 通知 / 店舗設定 GUI 拡充 / フィードバック学習Phase 2
助っ人API連携(カプセル社)Phase 3

2. 段階リリース方針

🚀 Stage 1 — GW明けスタート

2026年5月中旬 / 〜 10店舗

📈 Stage 2 — 収益確認後に本格化

20店舗到達後(想定 2026年秋〜冬)

2.1 段階移行のトリガー

Stage 1 開始条件
GW 明け (5月中旬)
実装 6-8週 / 原価 約 ¥4,500/月
Stage 1 運用
5〜10 店舗で検証
契約獲得・機能フィードバック回収
Stage 2 開始条件
20 店舗到達時
追加実装 2-3週 / 原価 約 ¥50,000/月

3. アーキテクチャ(Stage 1 / 2 共通)

技術スタック自体は Stage 1 / 2 で変えない。サービスの有効化・add-on 購入・冗長化レベルだけを段階的に上げる。

店舗ブラウザ (React + Vite) │ ├─ Cloudflare Pages (静的配信) │ ├─ Cloudflare Workers + Hono (API Gateway) │ └─ 認証: Supabase Auth JWT 検証 │ ├─ Supabase (Tokyo region, ap-northeast-1) │ ├─ Postgres 14: 全テナントデータ │ ├─ Row Level Security: 店舗間データ分離 │ ├─ pgsodium Vault: IG access token 暗号化保管 │ ├─ pg_cron: 予約投稿・token refresh │ └─ Edge Functions (Deno): 業務ロジック │ ├─ Cloudflare R2 (APAC): 画像ストレージ │ └─ 外部 API: Claude / Instagram Graph / 監視 (Sentry, Better Stack)

3.1 Stage 別の構成差分

コンポーネントStage 1(軽)Stage 2(本格)
SupabasePro $25(Micro compute 込み)Pro + Small $15 + PITR $100 add-on
Cloudflare WorkersPaid $5Paid $5
Cloudflare R2使用分(~$1)使用分(~$5)
Cloudflare WAF Rate Limiting—(未導入)$20/月(攻撃対策)
Cloudflare TurnstileFree
SentryDeveloper Free(5k events/月)Team $26/月
Better StackFree(1 responder, 基本監視)2 responder $68/月(24/7 SMS)
Claude APIusage(10店舗で $5〜$10)usage(100店舗で $30〜$50)
Staging/DevFree project で運用有料 $15〜30

4. 月額インフラ原価(Stage 別)

項目Stage 1(10店舗)Stage 2(100店舗想定)
Supabase$25$142($25 + Small $15 + PITR $100 + 使用超過分)
Cloudflare (Workers/R2/Pages)$6$10
Cloudflare WAF$0$20
Sentry$0 (Developer Free)$26 (Team)
Better Stack$0 (Free)$68 (2 responder / 24/7 SMS)
Claude API (usage)$8$40
Staging/Dev$0 (Free)$30
月額合計約 $39(≒ ¥5,900)約 $336(≒ ¥50,400)
💡 Stage 1 は原価 月 ¥5,900 で運用開始できる

Stage 1 の 10店舗運用では有料 add-on を極力使わず、Supabase Pro と Cloudflare Workers だけで立ち上げる。20店舗を超えて収益が見えてきた段階で PITR・WAF・24/7 on-call などの本格投資に切り替える。

5. Stage 1 で受容するリスク(20店舗到達までの割り切り)

リスクStage 1 の割り切りStage 2 での対応
DB 障害時のデータ復旧PITR なし。Supabase 日次バックアップのみ(RPO 24時間)PITR $100 add-on で RPO 5分に
ログイン攻撃・DDoSCloudflare 標準の DDoS 保護のみ(WAF なし)WAF Rate Limiting + Turnstile で多層防御
障害検知・アラートBetter Stack Free の基本監視のみ(SMS 無し)2 responder 24/7 SMS + Sentry 詳細 trace
承認フローURL承認 + CSRF のみ(LINE 通知なし)LINE 通知連携(Phase 2)
24/7 体制営業時間内対応のみ(夜間は best-effort)24/7 on-call + 手当支給
データ residency の完全担保PII は Supabase Tokyo に閉じ込める設計は Stage 1 から顧客契約書に明記・監査ログで証跡

前提: Stage 1 は 10店舗まで。20店舗を超える前に Stage 2 投資を発動する。

6. なぜ Supabase + Cloudflare を選んだか(Stage 共通)

比較項目Supabase + CF却下: Neon+Clerk+Trigger.dev却下: Cloudflare all-in (D1)
Tokyo region (PII 国内保管)✅ 対応❌ いずれも非対応✅ CF edge はあるが DB が別問題
PITR(Stage 2 で必須)✅ 7日 add-on✅ 7日❌ D1 は PITR 未提供
Stage 1 の最小構成コスト◎ $39/月で立ち上げ可✕ Neon CU課金でミニマムが重い◎ 最も安いが Stage 2 で詰む
単一ベンダ集中度◎ DB+Auth+Vault+Queue 統合△ 3ベンダ組合せ◎ CF 単一
学習コスト / 実績Postgres 標準、ドキュメント豊富Trigger.dev が新興Durable Objects 専門知識が必要

6.1 設計の 6原則(Stage 1 から適用)

軽構成でも設計原則は Stage 2 と同じ。後で Stage 2 に移る時に手戻りが起きないように。

原則実装で担保
① PII は絶対に国外に出さないClass 1 データは Supabase Tokyo のみ(Stage 1 から適用)
② 国外送信は redaction 済みデータのみSentry / BetterStack / Claude には redaction 後のみ
③ Instagram 投稿は絶対に二重実行しないexternal_operations ledger + idempotency_key
④ 予約投稿ジョブは race-freePostgres FOR UPDATE SKIP LOCKED + lease CAS
⑤ 監査ログは改竄検知可能hash chain + monotonic sequence
⑥ 削除は GDPR 準拠の erasure flowMeta token revoke → soft delete → 物理削除

7. 実装工期

フェーズ期間Stage内容
Phase 0: PrototypeWeek 1-2S1リスク検証(publish idempotency / audit / migration)
Phase 1a: Core 実装Week 3-8(6週)S1Auth / Publish / Approval / Upload / Audit / Migration tool
Phase 1b: Stage 1 ローンチ準備Week 9S1v2→v3 データ移行・軽監視・最終テスト
Stage 1 GW明け運用開始 🚀Week 10〜S110 店舗で実運用
Phase 2: Stage 2 本格化20店舗到達時に 2-3週S2PITR / WAF / Turnstile / 24/7 on-call / 運用ダッシュボード

GW明け(5月中旬)ローンチ逆算で 今週中にキックオフ、Week 9 末(7月中旬)までに Stage 1 完成・運用開始。

8. 子安さんへの依頼内容

💼 段階契約の提案

Stage 1 / 2 で子安さんへの報酬・稼働体制も段階的にしたい。 Stage 1 は軽くスタートし、収益が立つ 20店舗到達時に正式に予算を組んで本格化する、という契約の仕方にさせていただきたいです。

項目Stage 1(10店舗)Stage 2(20+店舗)
実装範囲MVP(Phase 0-1)ハードニング + Phase 2 機能
稼働期間約 9週間(GW明け前まで)20店舗到達時に追加 2-3週
on-call 体制営業時間内ベストエフォート24/7 escalation + 手当
報酬形態(子安さん判断)軽め(固定 or 実費)本格(月額 retainer + on-call 手当)

9. 確認して欲しいこと(返信用 Q1〜Q5)

Q1. この段階リリース方針(Stage 1 軽構成 → 20店舗で Stage 2 本格化)で進めて良いか?
Yes / No(No の場合、懸念点や代案)
Q2. アーキテクチャ(Supabase Tokyo + Cloudflare Workers)で進めて良いか?
Yes / No
Q3. GW明け(5月中旬)ローンチ逆算で、Stage 1 実装 9週間で可能か?
Yes / No(No の場合、現実的な期間)
Q4. Stage 1 での報酬・稼働体制の希望条件(軽構成なのでお気軽に)
固定報酬 / 実費ベース / スポット等、お考えを
Q5. 実装前に潰しておきたい懸念点があれば(自由記述)
Supabase Vault alpha / pg_cron dispatch / データ移行など

GW 明けローンチ逆算で、今週中にキックオフしたいです。48時間以内にざっくりでもお返事いただけると助かります。

10. 深掘り資料(必要な方のみ)

判断に必要な情報は 1-9 章に集約済み。以下は実装時の参考。