ALTER TABLE tasks ADD COLUMN state TEXT NOT NULL DEFAULT ''; ALTER TABLE tasks ADD COLUMN review_requests INTEGER NOT NULL DEFAULT 0; UPDATE tasks SET state = CASE WHEN tasks.status != 'active' THEN tasks.status WHEN tasks.discard_state != '' THEN 'discarding' WHEN tasks.merging_by != '' OR tasks.finalizing != '' THEN 'merging' ELSE coalesce(( SELECT CASE WHEN s.state != 'idle' THEN s.state WHEN s.subagents > 0 THEN 'running' WHEN EXISTS (SELECT 1 FROM reviews r WHERE r.task_id = tasks.id AND r.state = 'running') THEN 'reviewing' WHEN tasks.review_requests > 0 THEN 'review_pending' ELSE 'idle' END FROM agent_sessions s WHERE s.task_id = tasks.id AND s.role != 'reviewer' AND s.state != 'completed' ORDER BY s.state = 'running' DESC, s.subagents > 0 DESC, s.created_at DESC LIMIT 1 ), 'no_agent') END;