begin; create type scanner.request_kind as enum( 'episode', 'movie' ); create type scanner.request_status as enum( 'pending', 'running', 'failed' ); create table scanner.requests( pk serial primary key, id uuid not null default gen_random_uuid() unique, kind scanner.request_kind not null, title text not null, year integer, external_id jsonb not null default '{}' ::jsonb, status scanner.request_status not null, started_at created_at timestamptz, created_at created_at timestamptz not null default now() ::timestamptz, constraint unique_kty(kind, title, year) ); commit;