-- Case-briefing checklist: an ordered list of short, player-tickable steps authored per -- level, sitting alongside the brief body and concepts. Tick state is client-side only, -- so the server just stores the authored item text and its order. CREATE TABLE osint.level_brief_checklist_items ( id UUID PRIMARY KEY, board_id UUID NOT NULL REFERENCES osint.boards(id) ON DELETE CASCADE, sort_order INTEGER NOT NULL DEFAULT 0 CHECK (sort_order >= 0), text TEXT NOT NULL ); CREATE INDEX level_brief_checklist_items_board_order ON osint.level_brief_checklist_items (board_id, sort_order);