-- 0001_users.sql -- Create users table for authentication CREATE TABLE users ( id UUID PRIMARY KEY, email TEXT UNIQUE NOT NULL, password_hash TEXT NOT NULL, display_name TEXT, status TEXT NOT NULL DEFAULT 'pending', roles TEXT[] NOT NULL DEFAULT '{}', permissions TEXT[] NOT NULL DEFAULT '{}', email_verified BOOLEAN NOT NULL DEFAULT FALSE, created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(), updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW() ); -- Index for email lookups (login) CREATE INDEX users_email_idx ON users (LOWER(email)); -- Index for status filtering CREATE INDEX users_status_idx ON users (status);