merchantPost now retries once after clearing the cached token and
re-authenticating when the upstream signals an invalid session:
HTML login page, HTTP 401, or business msgs containing login-expiry
keywords. Previously a stale token left stock queries returning
empty until manual intervention.
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
The plain ip:port output forced consumers to guess the protocol.
The probe already knows it from the handshake, so return the full
URL directly (socks5h/http/socks4).
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>