CREATE EXTENSION IF NOT EXISTS "uuid-ossp"; DROP TABLE IF EXISTS contacts CASCADE; CREATE TABLE contacts ( id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), phone_number TEXT NOT NULL, user_id UUID NOT NULL ); CREATE TABLE messages ( id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), content TEXT NOT NULL, user_id UUID NOT NULL ); CREATE TABLE scheduled_messages ( id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), scheduled timestamptz NOT NULL, created timestamptz DEFAULT now(), status TEXT CHECK (status IN ('PENDING', 'READY', 'PROCESSING', 'DONE')), user_id UUID NOT NULL ); CREATE TABLE scheduled_message_events ( id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), recipient_id UUID NOT NULL, message_id UUID NOT NULL, scheduled_message_id UUID NOT NULL, created timestamptz DEFAULT now() )