fix: preserve production task and auth integrations

This commit is contained in:
2026-08-19 16:23:39 +08:00
parent 2da7f4f328
commit ca8611113e
5 changed files with 326 additions and 65 deletions

View File

@@ -85,6 +85,25 @@ def init_database() -> None:
FOREIGN KEY(task_id) REFERENCES research_tasks(id) ON DELETE CASCADE
);
CREATE TABLE IF NOT EXISTS task_keyword_runs (
id INTEGER PRIMARY KEY AUTOINCREMENT,
task_id INTEGER NOT NULL,
keyword_order INTEGER NOT NULL,
keyword TEXT NOT NULL,
status TEXT NOT NULL DEFAULT 'queued',
progress_percent INTEGER NOT NULL DEFAULT 0,
crawler_task_id TEXT,
result_json TEXT,
error_message TEXT,
started_at TEXT,
completed_at TEXT,
updated_at TEXT NOT NULL,
UNIQUE(task_id, keyword_order),
FOREIGN KEY(task_id) REFERENCES research_tasks(id) ON DELETE CASCADE
);
CREATE INDEX IF NOT EXISTS idx_keyword_runs_task_status
ON task_keyword_runs(task_id, status, keyword_order);
CREATE TABLE IF NOT EXISTS task_files (
id INTEGER PRIMARY KEY AUTOINCREMENT,
public_file_id TEXT NOT NULL UNIQUE,
@@ -134,6 +153,19 @@ def init_database() -> None:
CREATE INDEX IF NOT EXISTS idx_auth_sessions_user
ON auth_sessions(user_id, expires_at);
CREATE TABLE IF NOT EXISTS ai_access_tokens (
id INTEGER PRIMARY KEY AUTOINCREMENT,
token_hash TEXT NOT NULL UNIQUE,
user_id INTEGER NOT NULL,
expires_at TEXT NOT NULL,
created_at TEXT NOT NULL,
last_seen_at TEXT NOT NULL,
revoked_at TEXT,
FOREIGN KEY(user_id) REFERENCES auth_users(id) ON DELETE CASCADE
);
CREATE INDEX IF NOT EXISTS idx_ai_access_tokens_user
ON ai_access_tokens(user_id, expires_at);
CREATE TABLE IF NOT EXISTS acceptance_tasks (
id INTEGER PRIMARY KEY AUTOINCREMENT,
public_task_id TEXT NOT NULL UNIQUE,