feat: v1.9.1 — operator quality-of-life: tunable auto-blacklist, configurable batch timeout, MHRV_AUTH_KEY hint, run.bat CLI fallback

Four small fixes that address recurring user-issue patterns:

- src/config.rs / src/domain_fronter.rs: auto_blacklist_strikes,
  auto_blacklist_window_secs, auto_blacklist_cooldown_secs config fields
  (#391, #444). Previously 3 strikes / 30s window / 120s cooldown were
  hard-coded. Single-deployment users on flaky networks hit this too
  aggressively; multi-deployment users want tighter fail-fast. Defaults
  preserve historical behavior. Power-user file edit only — no UI
  control yet. Clamps to [1, 86400] for durations.

- src/config.rs / src/domain_fronter.rs / src/tunnel_client.rs:
  request_timeout_secs config field (#430, masterking32 PR #25).
  Replaces hard-coded BATCH_TIMEOUT 30s. DomainFronter::batch_timeout()
  exposes the value, fire_batch reads it. Clamped to [5s, 300s].

- tunnel-node/src/main.rs: detect MHRV_AUTH_KEY env var being set
  while TUNNEL_AUTH_KEY is unset, and emit a specific warning pointing
  at the right env var name. Catches the recurring #391/#444 docker
  run typo that made users chase phantom AUTH_KEY-mismatch decoys.

- assets/launchers/run.bat: when both UI renderers (glow + wgpu)
  fail on older Windows / RDP / VM-without-GPU, fall back to launching
  mhrv-rs.exe (CLI) instead of just printing "open an issue".
  Addresses #417 / #426 / #487. CLI has the same proxy functionality
  on 127.0.0.1:8085 (HTTP) / :8086 (SOCKS5).

169 mhrv-rs lib tests + 33 tunnel-node tests still passing. UI build
clean. ConfigWire round-trips the new fields with skip-default-on-write
so unchanged configs stay clean.
This commit is contained in:
therealaleph
2026-04-30 08:33:53 +03:00
parent 58fb141cf7
commit cd6ff8d381
9 changed files with 193 additions and 35 deletions
+14 -3
View File
@@ -60,10 +60,21 @@ if not "%UI_EXIT%"=="0" (
echo - running inside RDP or a VM without GPU acceleration
echo - antivirus blocking the exe — whitelist the folder and retry
echo.
echo Copy everything above and open an issue on:
echo https://github.com/therealaleph/MasterHttpRelayVPN-RUST/issues
echo You can still use mhrv-rs without the UI. Run the CLI directly:
echo.
echo mhrv-rs.exe
echo.
echo Set your config in %%APPDATA%%\mhrv-rs\config\config.json (or
echo place a config.json next to mhrv-rs.exe in this folder), then
echo point your browser proxy at 127.0.0.1:8085 (HTTP) or
echo 127.0.0.1:8086 (SOCKS5). The CLI is the same proxy without
echo the UI shell, so all functionality is available.
echo.
echo Falling back to the CLI now so you can keep using the proxy.
echo Press Ctrl+C in the CLI window to stop it.
echo ---------------------------------------------------
pause
echo.
mhrv-rs.exe
)
)