from hermes_epg_search import buscar_epg

def consultar_programacion(termino, dias=3):
    if not isinstance(termino, str):
        raise ValueError("Término inválido")

    termino = termino.strip()

    if not termino or len(termino) > 100:
        raise ValueError("Término inválido")

    dias = max(1, min(int(dias), 7))

    eventos = buscar_epg(
        termino=termino,
        dias=dias,
        limite=25
    )

    return {
        "consulta": termino,
        "periodo_dias": dias,
        "total_devuelto": len(eventos),
        "eventos": eventos
    }
