#!/usr/bin/env python3
"""
env_config에서 지정한 id 행을 그대로 복사해 새 행으로 INSERT.
→ 봇은 항상 id 최대(최신) 행만 쓰므로, 4번 내용이 곧 '최신 설정'이 됨.

사용: python copy_env_row_to_latest.py [소스_id]
  소스_id 기본값: 4
"""
import sys
from pathlib import Path

SCRIPT_DIR = Path(__file__).resolve().parent
sys.path.insert(0, str(SCRIPT_DIR))

from database import TradeDB, ENV_CONFIG_KEYS

def main():
    source_id = int(sys.argv[1]) if len(sys.argv) > 1 else 4
    db_path = SCRIPT_DIR / "quant_bot.db"
    db = TradeDB(db_path=str(db_path))

    row = db.conn.execute("SELECT * FROM env_config WHERE id = ?", (source_id,)).fetchone()
    if not row:
        print(f"id={source_id} 행이 없습니다.")
        db.close()
        return

    # id=4 내용으로 새 스냅샷 생성 (created_at만 현재 시각)
    import datetime
    snapshot = {k: (row[k] if row[k] is not None else "") for k in ENV_CONFIG_KEYS if k in row.keys()}
    env_id = db.insert_env_snapshot(snapshot)
    db.close()

    if env_id:
        print(f"✅ id={source_id} 내용을 새 행(id={env_id})으로 복사했습니다. 이제 최신 설정입니다.")
    else:
        print("❌ INSERT 실패")

if __name__ == "__main__":
    main()
