Skip to main content
Supabase stays. It is the most sensible current home for Lucia’s structured operational data unless and until Lucia outgrows it for a real reason.

Runbook phase mapping

  • Phase 1 — account access, project ownership, key references
  • Phase 5 — staging database alignment, key cleanup, and environment wiring
Primary runbook page: 08 - Live Transition Runbook

Why Supabase is still in the stack

Supabase is not the problem. For Lucia right now, Supabase gives:
  • managed Postgres
  • structured operational storage
  • backups
  • auth adjacency if needed
  • sane developer velocity
That is enough for serious staging and likely enough for early real production too.

Lucia role

Supabase should be the source of truth for:
  • bookings
  • guests
  • concierge requests
  • operational state
  • structured memory tables later
  • audit / truth-state records later

What should not live only in Supabase

  • ephemeral in-process session continuity
  • short-lived distress/session state without durability planning
  • anything that depends on single-process memory and pretends to be persistent
That is where Redis enters.

Database zones to think about

AreaPurpose
operational tablesbookings, guests, payments, concierge, tasks
truth-state tablesrequested / confirmed / in-progress / done
memory tables laterlong-horizon Lucia memory, controlled retrieval
telemetry / audit lateraction logs, event states, confirmations

Setup checklist

Stage 1 — confirm posture

  • confirm Lucia uses the intended Supabase project
  • confirm separation between staging and production projects
  • confirm database backups
  • confirm service-role key handling

Stage 2 — harden usage

  • document Lucia tables in use
  • document future memory tables
  • document truth-state requirements
  • document any row-level security rules
  • confirm engine-only secrets are never exposed to admin client

Stage 3 — future readiness

  • define durable memory schema
  • define audit/event schema
  • define execution-state tracking schema

Credentials + account reference

Account access

ItemValue
Account email
Organization
Dashboard URL
Project name
Project ID / ref
Region
MFA method

Core project references

ItemValue
Project URL
Project ref
Database host
Database name
Postgres connection string
Direct connection string
Pooled connection string

Keys and secrets

Secret / TokenValue or 1Password ReferenceNotesRotated
anon keyclient-safe only when appropriate
service role keyengine-only
JWT secretif relevant
storage access keyoptional

Environment variable tracker

VariableValue / ReferenceUsed In
SUPABASE_URLEngine
SUPABASE_ANON_KEYAdmin/client only if needed
SUPABASE_SERVICE_ROLE_KEYEngine only
DATABASE_URLEngine / tooling
DIRECT_URLoptional

Schema / table notes

Current Lucia tables

Planned future tables

Notes / gotchas

  • Supabase is good enough for this phase.
  • Do not rip out a working database because “serious” sounds cooler.
  • Replace it only when the product truly outgrows it.