CREATE TABLE IF NOT EXISTS users ( user_id INTEGER PRIMARY KEY, username TEXT, first_name TEXT, token TEXT UNIQUE, is_active INTEGER DEFAULT 1, created_at TEXT NOT NULL, last_seen TEXT, total_turns INTEGER DEFAULT 0 ); CREATE TABLE IF NOT EXISTS tokens ( token TEXT PRIMARY KEY, assigned_to INTEGER, is_active INTEGER DEFAULT 1, created_at TEXT NOT NULL, turns_used INTEGER DEFAULT 0, last_used TEXT ); CREATE TABLE IF NOT EXISTS conversations ( id INTEGER PRIMARY KEY AUTOINCREMENT, user_id INTEGER NOT NULL, role TEXT NOT NULL, content TEXT NOT NULL, timestamp TEXT NOT NULL, latency_ms INTEGER, gpu_time_ms INTEGER ); CREATE INDEX IF NOT EXISTS idx_conv_user_ts ON conversations(user_id, timestamp); CREATE TABLE IF NOT EXISTS admin_audit ( id INTEGER PRIMARY KEY AUTOINCREMENT, admin_id TEXT, action TEXT, target_user_id INTEGER, timestamp TEXT NOT NULL, details TEXT ); CREATE TABLE IF NOT EXISTS gpu_log ( id INTEGER PRIMARY KEY AUTOINCREMENT, user_id INTEGER, timestamp TEXT NOT NULL, duration_ms INTEGER, status TEXT ); CREATE TABLE IF NOT EXISTS settings ( key TEXT PRIMARY KEY, value TEXT NOT NULL );