-- Migration 092: Group invitations (v0.302 Lot S2.2) -- Admin/moderator can invite users to join a group CREATE TABLE IF NOT EXISTS group_invitations ( id UUID PRIMARY KEY DEFAULT gen_random_uuid(), group_id UUID NOT NULL REFERENCES groups(id) ON DELETE CASCADE, inviter_id UUID NOT NULL REFERENCES users(id) ON DELETE CASCADE, invitee_id UUID NOT NULL REFERENCES users(id) ON DELETE CASCADE, status VARCHAR(20) NOT NULL DEFAULT 'pending' CHECK (status IN ('pending', 'accepted', 'declined')), created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(), UNIQUE(group_id, invitee_id) ); CREATE INDEX IF NOT EXISTS idx_group_invitations_group_id ON group_invitations(group_id); CREATE INDEX IF NOT EXISTS idx_group_invitations_invitee_id ON group_invitations(invitee_id);