"""Verifica fix anti_cluster_loss.record_win (deve resettare paused_until)."""
import sys
import time
import os

V2_DIR = "/opt/charter-live/live_deploy_v2"
sys.path.insert(0, V2_DIR)
os.chdir(V2_DIR)

import anti_cluster_loss as acl

print("=" * 70)
print("VERIFICA FIX anti_cluster_loss.record_win (deve resettare paused_until)")
print("=" * 70)

# Cleanup eventuale stato precedente
sf = "/opt/charter-live/live_deploy_v2/logs/anti_cluster_state.json"
if os.path.exists(sf):
    os.remove(sf)

# Scenario completo
print("\n[1] Dopo 0 trade su BTCUSDT:")
print(f"  should_pause = {acl.should_pause('BTCUSDT')} (atteso: False)")

print("\n[2] record_sl('BTCUSDT') x2:")
acl.record_sl('BTCUSDT')
acl.record_sl('BTCUSDT')
print(f"  should_pause = {acl.should_pause('BTCUSDT')} (atteso: True)")

print("\n[3] record_win('BTCUSDT') (FIX: deve resettare pausa):")
acl.record_win('BTCUSDT')
state = acl.get_state()
btc = state.get('symbols', {}).get('BTCUSDT', {})
print(f"  state = {btc}")
print(f"  should_pause = {acl.should_pause('BTCUSDT')} (atteso: False)")

if acl.should_pause('BTCUSDT') == False:
    print("\n  TEST 3 FIX PASS: WIN resetta correttamente la pausa")
else:
    print("\n  TEST 3 FIX FAIL: WIN NON resetta la pausa")

# Cleanup
if os.path.exists(sf):
    os.remove(sf)
print(f"\nOK cleanup: {sf} rimosso")
