import json
import os
import time
from datetime import datetime, timezone

LOCK_FILE = '/home/aryy/.hermes/profiles/finance/backtests/xauusd_2026/backtest.lock'
MAX_LOCK_AGE = 3600  # 60 minutes

def manage_lock():
    if os.path.exists(LOCK_FILE):
        file_mtime = os.path.getmtime(LOCK_FILE)
        age = time.time() - file_mtime
        if age < MAX_LOCK_AGE:
            print("LOCKED")
            return False
        else:
            print("STALE_LOCK_REMOVED")
            os.remove(LOCK_FILE)
            
    with open(LOCK_FILE, 'w') as f:
        json.dump({
            "started_at": datetime.now(timezone.utc).isoformat(),
            "status": "running"
        }, f)
    print("LOCK_ACQUIRED")
    return True

if __name__ == "__main__":
    manage_lock()
