Files
claudedo-online/server/db/migrations/0001_init.sql

23 lines
940 B
SQL

-- ClaudeDo Online Inbox — initial schema.
-- Mirrors the desktop's Idle task backlog. Idempotent.
create table if not exists lists (
id text primary key, -- GUID supplied by the desktop, reused verbatim
name text not null,
updated_at timestamptz not null default now()
);
create table if not exists tasks (
id text primary key, -- GUID; shared id space (web + desktop)
list_id text not null references lists(id) on delete cascade,
title text not null,
description text,
source text not null, -- 'web' | 'desktop'
consumed boolean not null default false, -- web->desktop handoff flag
created_at timestamptz not null default now(),
updated_at timestamptz not null default now()
);
create index if not exists idx_tasks_list_id on tasks(list_id);
create index if not exists idx_tasks_unconsumed on tasks(consumed) where consumed = false;