import socket
import json
import time

def test_communication():
    print("🔍 DEBUG Comunicazione Coordinator-GUI")
    
    # Testa connessione al coordinator
    try:
        s = socket.socket()
        s.connect(('localhost', 8765))
        print("✅ Connesso al coordinator")
        
        # Invia richiesta di test
        test_request = {
            'type': 'inference_request',
            'request_id': 'debug_test',
            'prompt': 'Ciao, rispondi con OK',
            'timestamp': time.time()
        }
        s.send((json.dumps(test_request) + '\n').encode())
        print("📤 Richiesta inviata")
        
        # Aspetta risposta
        s.settimeout(5.0)
        try:
            response = s.recv(4096).decode()
            print(f"📥 Risposta ricevuta: {response}")
            
            # Verifica se è una risposta valida
            if 'worker_response' in response:
                print("🎯 RISPOSTA VALIDA RICEVUTA!")
            else:
                print("❌ Risposta non valida")
                
        except socket.timeout:
            print("⏰ Timeout - Nessuna risposta")
            
        s.close()
        
    except Exception as e:
        print(f"❌ Errore: {e}")

if __name__ == "__main__":
    test_communication()