Skip to content

feat(mobile): sync validate.go with runner.go changes#87

Open
Hidden-Node wants to merge 3 commits into
MatinSenPai:mainfrom
Hidden-Node:pr-update-validate.go
Open

feat(mobile): sync validate.go with runner.go changes#87
Hidden-Node wants to merge 3 commits into
MatinSenPai:mainfrom
Hidden-Node:pr-update-validate.go

Conversation

@Hidden-Node
Copy link
Copy Markdown
Contributor

@Hidden-Node Hidden-Node commented Jun 5, 2026

  • Change mobileTraceURL to mobileTraceURLs array with fallback
  • Add cloudflare.com/cdn-cgi/trace as secondary URL
  • Refactor mobileConnectivityCheck into 3 functions matching runner.go
  • Add mobileConnectivityCheckTargets for URL iteration
  • Add mobileConnectivityCheckTarget for single URL testing
  • Update mobileSpeedTest to use mobileTraceURLs[0]
  • socks5:// → socks5h:// for DNS resolution through proxy (cellular)
  • Add mobileProxyTransportForTarget() with TLS ServerName support
  • Add traceTargetsForConfig() for IP-based + domain-based targets
  • Add tunnelPathTargets() for WebSocket path probing
  • Add proxyTunnelPathCheck() for tunnel path connectivity
  • Add proxyRelaxedEndpointCheck() for relaxed endpoint checking
  • Add proxyDataPathCheck() for data path fallback
  • Add mobileSpeedTestTarget struct with host field
  • mobileConnectivityCheck() now takes cfg parameter
  • mobileConnectivityCheckTarget() now takes authority parameter
  • mobileDownload() now takes authority parameter

Other improvements:

  • connectTimeout capped at 18s
  • speedBudget changed to 4s (from total/2)
  • HTTP status check: < 200 || >= 400
  • mobileSpeedTest uses IP-based targets
  • Added mobileTraceTarget struct

- Change mobileTraceURL to mobileTraceURLs array with fallback
- Add cloudflare.com/cdn-cgi/trace as secondary URL
- Refactor mobileConnectivityCheck into 3 functions matching runner.go
- Add mobileConnectivityCheckTargets for URL iteration
- Add mobileConnectivityCheckTarget for single URL testing
- Update mobileSpeedTest to use mobileTraceURLs[0]
feat(mobile): sync validate.go with runner.go changes
Major changes:
- socks5:// → socks5h:// for DNS resolution through proxy (cellular)
- Add mobileProxyTransportForTarget() with TLS ServerName support
- Add traceTargetsForConfig() for IP-based + domain-based targets
- Add tunnelPathTargets() for WebSocket path probing
- Add proxyTunnelPathCheck() for tunnel path connectivity
- Add proxyRelaxedEndpointCheck() for relaxed endpoint checking
- Add proxyDataPathCheck() for data path fallback
- Add mobileSpeedTestTarget struct with host field

Signature changes:
- mobileConnectivityCheck() now takes cfg parameter
- mobileConnectivityCheckTarget() now takes authority parameter
- mobileDownload() now takes authority parameter

Other improvements:
- connectTimeout capped at 18s
- speedBudget changed to 4s (from total/2)
- HTTP status check: < 200 || >= 400
- mobileSpeedTest uses IP-based targets
- Added mobileTraceTarget struct
@Hidden-Node Hidden-Node changed the title feat(mobile): add fallback trace URLs for connectivity check feat(mobile): sync validate.go with runner.go changes Jun 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant