CREATE TABLE ui_events (
id INTEGER PRIMARY KEY AUTOINCREMENT,
timestamp DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
session_id TEXT,
relative_ms INTEGER NOT NULL DEFAULT 0,
event_type TEXT NOT NULL,
-- click,
move,
scroll,
key,
text,
app_switch,
window_focus,
clipboard
-- Position
x INTEGER,
y INTEGER,
delta_x INTEGER,
delta_y INTEGER,
-- Mouse/key
button INTEGER,
click_count INTEGER,
key_code INTEGER,
modifiers INTEGER,
-- Text content
text_content TEXT,
text_length INTEGER,
-- App context
app_name TEXT,
app_pid INTEGER,
window_title TEXT,
browser_url TEXT,
-- Element context (from accessibility APIs)
element_role TEXT,
element_name TEXT,
element_value TEXT,
element_description TEXT,
element_automation_id TEXT,
element_bounds TEXT,
-- JSON: {"x":0,
"y":0,
"width":100,
"height":50}
-- Frame correlation
frame_id INTEGER,
-- Sync columns
sync_id TEXT,
machine_id TEXT,
synced_at DATETIME
)