# Parcel Empire — Supabase Production Checklist

Use this before sharing an online beta.

## Required gates

- [ ] Create a separate Supabase production project.
- [ ] Run `sql/supabase_schema.sql`.
- [ ] Review and run `sql/production_hardening.sql`.
- [ ] Confirm Row Level Security is enabled on public gameplay tables.
- [ ] Create your first owner admin in `atlas_admins`.
- [ ] Confirm wallet, parcel purchase, marketplace, reward and upgrade actions go through RPC functions where possible.
- [ ] Keep `REAL_MONEY_ENABLED: false` until legal, tax, fraud and payout-provider setup is complete.
- [ ] Keep `PAYOUT_PROVIDER_READY: false` until the provider is approved and tested.
- [ ] Confirm app terms, privacy policy and rewards policy match the current product.
- [ ] Test Mapbox, GPS, PWA cache and service worker on multiple devices.
- [ ] Export a backup before inviting testers.

## Admin setup example

```sql
insert into public.atlas_admins(user_id, role, notes)
select id, 'super_admin', 'Initial owner admin'
from auth.users
where email = 'YOUR_ADMIN_EMAIL@example.com'
on conflict (user_id) do update set
  role = 'super_admin',
  is_active = true,
  updated_at = now();
```

## Beta rule

For closed beta, use demo ads and review-only cashout requests. Do not promise instant real-money payments.
