CREATE TABLE inbox_items ( id TEXT PRIMARY KEY, project_id TEXT NOT NULL REFERENCES projects(id), task_id TEXT NOT NULL REFERENCES tasks(id), agent_session_id TEXT NOT NULL REFERENCES agent_sessions(id), thread_id TEXT NOT NULL, kind TEXT NOT NULL, priority INTEGER NOT NULL, blocking INTEGER NOT NULL, payload TEXT NOT NULL, state TEXT NOT NULL, snoozed_until TEXT, created_at TEXT NOT NULL, resolved_by TEXT REFERENCES users(login), resolved_at TEXT ); CREATE INDEX inbox_items_open ON inbox_items(state, priority, created_at); CREATE INDEX inbox_items_session ON inbox_items(agent_session_id, state); CREATE TABLE inbox_responses ( id TEXT PRIMARY KEY, item_id TEXT NOT NULL REFERENCES inbox_items(id), user_login TEXT NOT NULL REFERENCES users(login), type TEXT NOT NULL, option TEXT, text TEXT, attachments TEXT NOT NULL, snooze_until TEXT, created_at TEXT NOT NULL, delivered_at TEXT ); CREATE INDEX inbox_responses_item ON inbox_responses(item_id, created_at);