◉RORK LABEN
●GPT-6.1 SOL — Rork のモデルメニューに追加(09-29)。Low/Medium/High を選べ、Pro・Max に含まれます●SONNET 5.5 — UI づくりが得意で、Sonnet 5 より出力が速いモデルが選べます(09-28)●SDK 58 — Beta が 09/15 から。stable の案内はまだなく、Expo Go でのプロジェクト実行は 09/03 からログインが必要です●WIDGET — iOS のウィジェットが本番ビルドだけ真っ黒になる原因を追った報告が出ています●OBSERVE — EAS Observe がネイティブクラッシュも記録します(SDK 57.0.21 以降・10/07)●NEW — 起動広告が、背面から戻った回にしか出ていませんでした。「前面に戻った」合図が、…●GPT-6.1 SOL — Rork のモデルメニューに追加(09-29)。Low/Medium/High を選べ、Pro・Max に含まれます●SONNET 5.5 — UI づくりが得意で、Sonnet 5 より出力が速いモデルが選べます(09-28)●SDK 58 — Beta が 09/15 から。stable の案内はまだなく、Expo Go でのプロジェクト実行は 09/03 からログインが必要です●WIDGET — iOS のウィジェットが本番ビルドだけ真っ黒になる原因を追った報告が出ています●OBSERVE — EAS Observe がネイティブクラッシュも記録します(SDK 57.0.21 以降・10/07)●NEW — 起動広告が、背面から戻った回にしか出ていませんでした。「前面に戻った」合図が、…
記事一覧/開発ツール
⬡ 開発ツール/2026-07-14上級

AI再生成に壊されない設計 — Rork の生成コードと手書きロジックを分ける境界の引き方

Rork へ追加指示を出すたびに手書きのロジックが消える。プロンプトで守るのは対症療法です。生成コードと自分の所有コードを層で分け、再生成が届かない境界を設計で引く方法を、Zustand と service 層の実装例つきでお伝えします。

Rork585アーキテクチャ22設計11状態管理12Zustand4長期運用11React Native239

✦ プレミアム記事

三つ目の画面をRorkに追加してもらった直後、前の週に手で書き込んだ課金状態の判定ロジックが跡形もなく消えていました。生成された新しい画面はきれいでした。ただ、その裏で動いていたはずの「購入済みユーザーには広告を出さない」分岐が、標準的な実装に戻ってしまっていたのです。

追加指示のたびにこれが起きます。プロンプトに「既存のロジックは変えないで」と書き添える対処法は広く知られていますし、私も長く頼ってきました。けれど、指示文で守れる範囲には限界があります。AIは毎回コードベース全体を読み、最適と判断した形へ画面を作り直すからです。守りたいものを指示文の外側に、つまり設計の側に逃がしておく。この記事で扱うのはその考え方と、具体的な実装です。

プロンプトで守るのをやめ、境界で守る

Rorkへの追加指示でコードが戻ってしまう仕組みは、差分ではなく全体を再生成するという生成AIの性質そのものです。詳しくは「Rork で修正が上書きされる問題の解決策」で扱っていますが、そこでの結論は「プロンプトで保護範囲を明示する」でした。日々の開発ではこれで十分に効きます。

ただ、アプリが育つほど守りたいものは増えます。課金判定、データの取得と整形、通信のリトライ、ローカル保存の整合。これらを毎回プロンプトで列挙するのは現実的ではありませんし、一度でも書き漏らせば消えます。

発想を変えます。AIが再生成するのは画面です。ならば、守りたいロジックを画面の外に出してしまえばよい。画面からは呼び出すだけにしておき、実体を別のファイルに置く。AIが画面を何度作り直しても、呼び出しの一行さえ残っていれば、実体は無傷で残ります。

境界を設計で引くとは、この「呼び出す側」と「呼び出される側」を物理的に別のファイル、別のディレクトリに分けることです。指示文の丁寧さに依存しない、構造による保護です。

何をAIに所有させ、何を自分が持つか

まず、コードを二つの層に分けて考えます。

層所有者中身再生成の扱い
プレゼンテーション層AI(Rork)画面・レイアウト・見た目・遷移何度でも作り直してよい
ドメイン層自分状態管理・データ取得・課金判定・業務ルールAIに触らせない

線引きの基準はシンプルです。作り直されても痛くないものはAIに、作り直されたら困るものは自分に。ボタンの位置や色は前者です。購入済み判定のように、間違うとお金や信頼に直結するものは後者です。

この区別は、コードの善し悪しの話ではありません。変更の頻度と、間違えたときの痛みの話です。見た目は頻繁に変わってよく、多少崩れてもすぐ直せます。業務ルールは滅多に変わらず、崩れると気づかないまま損失を出します。だから守り方を変える。ここに設計の起点があります。

✦

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
✦AI所有と自分所有を分ける二層の原則: 画面は作り直させ、ドメインは守る
✦再生成が届かない境界の実装(service層・Zustand store・型契約)をそのまま使えるコードで
✦「この画面だけ作り直して」を安全に言えるディレクトリ構造と運用プロンプト
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Rork Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • ✦コピー&ペーストで使える実装コード付き
  • ✦毎日新しい上級ガイドを追加
  • ✦¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

⬡ 開発ツール2026-08-01
実験の割り当てが同じ端末に偏る — 100万件のIDで確かめたハッシュ選定と salt の位置
端末側で実験の変種を決める割り当てが、実験を2本並べた途端に同じ端末へ集中しました。100万件のIDで4つのハッシュを測り、原因がハッシュの一様性ではなく salt の連結位置にあったこと、そして採用した実装までを実測値とともに残します。
⬡ 開発ツール2026-07-27
最低サポート iOS をいつ上げるか — 利用率ではなく、コードに残った分岐の数で決める
最低サポート OS の引き上げを利用率で判断すると、毎年同じ結論になって先送りが続きます。OS 分岐に注記を付けて棚卸しし、iOS と Android の引き上げ先ごとに消せる分岐を数えるスクリプトと、引き上げ後に見る指標をまとめました。
⬡ 開発ツール2026-07-24
同じ通信が同時に何本も飛ぶのを1本に束ねる — 参照カウント付きシングルフライト層の設計
起動直後に同じ API へ何本ものリクエストが同時に飛ぶ多重フェッチを、進行中の Promise を共有して1本に束ねる設計です。束ねる範囲を決めるキーの組み立て方、失敗した Promise を配り続けてしまう罠、呼び出し側の中断が全体を巻き込む罠、そして束ね率を数えて回帰を止めるテストまで、参照カウント付きシングルフライト層の実装を実測の通信ログとともに残します。