決済が成功しても、渡してよい権限は決まりません。1つの Checkout に4種類の商品を載せたあとの分岐設計
チップ・記事単体・月額・買い切りの4商品を1つの Checkout に通したところ、決済成功をそのまま権限に変える実装が三度危うくなりました。金額ではなく metadata で分岐させ、権限ストアが読めない日は拒否側へ倒すまでの運用記録です。
3分の動画だけが失敗する — Rork の動画解析をワーカー経由から端末直送に引き直す
Gemini Files API に動画を渡す経路を、Cloudflare Workers 中継から端末直送へ引き直した記録です。128MB のメモリ上限に当たる仕組み、resumable upload の発行だけを残す実装、Expo SDK 54 での書き換え、20GB の保存枠と請求の見立てまでをまとめます。
Rork の A/B テスト基盤を GrowthBook と PostHog でゼロから組む
Firebase に頼らず、GrowthBook と PostHog をオープンソースで組み合わせて Rork アプリの A/B テスト基盤を構築する手順を、SDK 統合からベイズ統計の解釈、運用上の落とし穴までまとめました。
Rork アプリの Sign in with Apple を、サーバー検証とアカウント削除まで本気で実装するガイド
Sign in with Apple をクライアントだけで済ませたアプリは、審査より先にサーバー側で綻びます。サーバーが発行する nonce、ID トークンの検証、authorizationCode の即時交換、revoke を伴うアカウント削除、Apple からのサーバー間通知の受け取りまで、Cloudflare Workers の動くコードで順に組みます。
Rork × AIモデレーション実装:UGCアプリで通報・自動審査・段階的制裁を本番投入する
Rork で作ったUGCアプリに、AIモデレーション・通報・段階的制裁を本番品質で組み込む実践ガイド。OpenAI Moderation・Perspective API・Cloudflare Workers Queueで設計する3層パイプラインを、コード付きで解説します。
Rork × Stripe Meter で AI アプリの使用量課金を実装する — トークン数・API 呼び出し回数で正確に課金する設計ガイド
Stripe Meter Billing で Rork アプリに使用量課金を実装します。メーター報告・冪等キー・リトライキュー・イベント集約・前払いクレジットとの使い分けまで、運用の実感を交えて解説します。
RevenueCat の固定費が気になり始めた人のための、App Store Server Notifications V2 自前運用ガイド
Rork アプリで RevenueCat を経由せず、App Store Server Notifications V2 を Cloudflare Workers で受信する構成を、JWS 検証・冪等処理・テスト戦略まで含めて実装する実践ガイド。
App Store のレビュー返信を1日32分から8分にした半自動パイプライン — App Store Connect API × Gemini × Cloudflare Workers の実装記録
レビュー返信を AI が下書きし開発者が承認する半自動パイプラインの実装記録です。confidence しきい値 0.85 の根拠、JWT クロックスキュー対策、Crashlytics 突合による返信分岐を3ヶ月分の実測値とともに共有します。
StoreKit 2 の署名付きトランザクションを Cloudflare Worker で検証する
端末が申告した課金状態をそのまま信じると、改ざんされたエンタイトルメントを通してしまいます。StoreKit 2 の署名付きトランザクション(JWS)を Cloudflare Worker 側で検証し、端末を信用せずに権利を付与する設計と実装を、動くコードとともに整理します。
返金申請に12時間以内で応答する — CONSUMPTION_REQUEST を Cloudflare Workers で受け止める
Rork で作ったサブスクアプリに届く App Store の CONSUMPTION_REQUEST 通知を、Cloudflare Workers で受信して Send Consumption Information API に12時間以内で応答する実装を、フィールドの意味づけと運用判断まで含めて解説します。
リワード広告の報酬を、端末からの合図だけで配らない — Rork(Expo)アプリのSSV検証をWorkerで組む
リワード広告の「視聴完了」を端末側のコールバックだけで信じると、報酬の二重付与やなりすましが起こります。AdMobのサーバーサイド検証(SSV)コールバックをCloudflare Workerで署名検証し、transaction_idで冪等化して報酬を安全に配るまでの実装をまとめます。
無印 Rork と Rork Max を1つのバックエンドで支える — 旧バイナリを壊さない API レスポンス契約の設計
無印 Rork(React Native / Expo)と Rork Max(ネイティブ Swift)が同じ Cloudflare Workers バックエンドを叩く構成では、強制アップデートできない旧バイナリを壊さないことが設計の中心になります。レスポンスを封筒型にして加算のみで育て、能力フラグでクライアント差を吸収し、古いバージョンを安全に畳むまでを実装で示します。