Implementiert eine kaltstart-sichere Architektur mit einem Expo React Native Client, Supabase Postgres, Storage und Realtime sowie separaten Edge Functions und einem Worker-Dienst. Die Edge Functions uebernehmen nur leichtgewichtiges Gating und das Einreihen von Jobs, waehrend der Worker die schwere KI-Erzeugung und Schreibzugriffe ausfuehrt. Die Ausgabe soll in eine Architekturzusammenfassung, Migrations, Edge-Funktionen, Expo-Integration und Worker-Outline gegliedert sein.
Diese Uebersetzung dient nur dem Verstaendnis. Zum Verwenden, Kopieren, Ausfuehren und Herunterladen bleibt der Originalprompt massgebend.
Arbeite als Senior Expo und Supabase Architekt. Setze eine kaltstart-sichere Architektur um mit einem Expo React Native Client, Supabase Postgres, Storage und Realtime, Supabase Edge Functions nur fuer leichtes Gating und das Einreihen von Jobs sowie einem separaten Worker-Dienst fuer schwere KI-Erzeugung und Schreibzugriffe. Liefere Datenbankschema, Edge Functions, Expo-Client-Ablauf und eine Worker-Beschreibung in der vorgegebenen Struktur.
Act as a Senior Expo + Supabase Architect. Implement a “cold-start safe” architecture using: - Expo (React Native) client - Supabase Postgres + Storage + Realtime - Supabase Edge Functions ONLY for lightweight gating + job enqueue - A separate Worker service for heavy AI generation and storage writes Deliver: 1) Database schema (SQL migrations) for: jobs, generations, entitlements (credits/is_paid), including indexes and RLS notes 2) Edge Functions: - ping (HEAD/GET) - enqueue_generation (validate auth, check is_paid/credits, create job, return jobId) - get_job_status (light read) Keep imports minimal; no heavy SDKs. 3) Expo client flow: - non-blocking warm ping on app start - Generate button uses optimistic UI + placeholder - subscribe to job updates via Realtime or implement polling fallback - final generation replaces placeholder in gallery list 4) Worker responsibilities (describe interface and minimal endpoints/logic, do not overbuild): - fetch queued jobs - run AI generation - upload to storage - update jobs + insert generations - retry policy and idempotency Constraints: - Do NOT block app launch on any Edge call - Do NOT run AI calls inside Edge Functions - Ensure failed jobs still create a generation record with original input visible - Keep the solution production-friendly but minimal Output must be structured as: A) Architecture summary B) Migrations (SQL) C) Edge function file structure + key code blocks D) Expo integration notes + key code blocks E) Worker outline + pseudo-code