PWMenu 1.4.2 makes OnlineHashCrack routing predictable and resilient when direct access is unavailable and Xray/VLESS is used as a fallback. It is fully compatible with 1.4.1 data and configuration; no migration is required.
Highlights
- Added explicit
ohc_route_mode = "auto" | "direct" | "vless"behavior. autouses the direct OHC API when available and falls back to VLESS only after a transport failure, HTTP 403/451, or a recognized country-block response.directnever starts Xray. Forcedvlessnever silently sends an OHC request directly.- Empty
ohc_vless_urlbehaves as direct mode instead of leaving a broken proxy path enabled. - Uploads and OHC task-history synchronization now share the same route, timeout, retry, and deduplication logic.
Xray/VLESS reliability
- Xray readiness now requires both a live loopback proxy and a real TLS request to OnlineHashCrack through that proxy. An open local port alone is no longer treated as a working Reality tunnel.
- Added configurable startup timeout, stabilization delay, probe timeout, probe attempts, and periodic probe interval.
- A stale or half-open Xray process is restarted once after a VLESS transport failure and rechecked before one controlled request retry.
- Temporary proxy or upstream failures return captures to PWMenu's persistent retry/backoff queue; files are not dropped and the worker does not spin continuously.
- Automatic mode starts Xray lazily only when direct OHC access is blocked.
- Requests ignore ambient process proxy variables so the selected route cannot be silently replaced by a system-wide proxy.
Configuration and diagnostics
- The OHC card shows the active
DIRECTorVLESSroute and its configuredAUTO,DIRECT, orVLESSpolicy. - The latest route error is visible while the persistent queue is backing off.
config.example.tomldocuments all new routing and lifecycle controls.ohc_vless_flowis explicitly documented as an override of the flow embedded in the VLESS URL. Servers requiring Vision normally needxtls-rprx-vision; an empty override may intentionally remove the link's flow and should not be used for such servers.
Verification
- Python compilation passed.
- All 99 unit tests passed.
- GitHub Actions passed for both the branch and pull request.
- Authenticated OHC task synchronization was validated through the local Xray/VLESS route.
Merged through PR #24.