"""
Миграция v1.7: добавить поля для детекта мультиаккаунтов
"""
import sqlite3
import asyncio

DB_PATH = 'database/domovoy.db'


async def migrate():
    """Добавить поля для мультиаккаунтов"""
    conn = sqlite3.connect(DB_PATH)
    cursor = conn.cursor()

    # Проверяем есть ли поля в users
    cursor.execute("PRAGMA table_info(users)")
    columns = [col[1] for col in cursor.fetchall()]

    if 'multicount_score' not in columns:
        print("➕ Добавляем поле multicount_score...")
        cursor.execute("ALTER TABLE users ADD COLUMN multicount_score INTEGER DEFAULT 0")
        print("✅ Поле multicount_score добавлено")
    else:
        print("ℹ️ Поле multicount_score уже существует")

    if 'suspected_device_id' not in columns:
        print("➕ Добавляем поле suspected_device_id...")
        cursor.execute("ALTER TABLE users ADD COLUMN suspected_device_id TEXT")
        print("✅ Поле suspected_device_id добавлено")
    else:
        print("ℹ️ Поле suspected_device_id уже существует")

    if 'suspected_alt_accounts' not in columns:
        print("➕ Добавляем поле suspected_alt_accounts...")
        cursor.execute("ALTER TABLE users ADD COLUMN suspected_alt_accounts TEXT")
        print("✅ Поле suspected_alt_accounts добавлено")
    else:
        print("ℹ️ Поле suspected_alt_accounts уже существует")

    conn.commit()
    conn.close()
    print("✅ Миграция v1.7 завершена!")


if __name__ == '__main__':
    asyncio.run(migrate())
