#!/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()