feat: add user preferences migration and context

This commit is contained in:
2026-02-03 16:09:50 +08:00
parent abe0dc131b
commit 555bf38b71
21 changed files with 931 additions and 79 deletions

View File

@@ -0,0 +1,37 @@
import sqlite3
import json
import os
DB_PATH = os.path.join(os.path.dirname(__file__), "qwen_tts.db")
def migrate():
conn = sqlite3.connect(DB_PATH)
cursor = conn.cursor()
try:
cursor.execute("SELECT user_preferences FROM users LIMIT 1")
print("Column user_preferences already exists, skipping migration")
except sqlite3.OperationalError:
print("Adding user_preferences column to users table...")
cursor.execute("""
ALTER TABLE users
ADD COLUMN user_preferences TEXT DEFAULT NULL
""")
cursor.execute("SELECT id FROM users")
user_ids = cursor.fetchall()
default_prefs = json.dumps({"default_backend": "local", "onboarding_completed": False})
for (user_id,) in user_ids:
cursor.execute(
"UPDATE users SET user_preferences = ? WHERE id = ?",
(default_prefs, user_id)
)
conn.commit()
print(f"Migration completed: Added user_preferences column and initialized {len(user_ids)} users")
conn.close()
if __name__ == "__main__":
migrate()