Skip to content

fix: align proxy latency testing with Mihomo client behavior #12

Description

@Felyx-Fu

Problem

MioProxy currently reports significantly higher latency than other Mihomo-based clients for the same subscription and nodes.

Example:

  • Other Mihomo clients: ~50–200 ms
  • MioProxy: several hundred ms, sometimes close to 1000 ms

Current behavior

MioProxy calls Mihomo:

/proxies/{proxy}/delay

without passing the proxy group's configured test URL.

The backend then falls back to:

https://www.gstatic.com/generate_204

with a 5000 ms timeout.

Reference behavior

Clash Party uses the following priority:

  1. User-configured delay test URL
  2. Proxy group's own url
  3. https://www.gstatic.com/generate_204

It also uses provider health checks where appropriate.

Expected behavior

MioProxy should:

  • respect a proxy group's configured test URL;
  • support a configurable default latency test URL;
  • support configurable timeout;
  • keep HTTPS as the safe default;
  • avoid modifying latency values artificially;
  • preserve direct use of Mihomo's delay API.

Acceptance criteria

  • Same node produces broadly comparable results to other Mihomo clients under equivalent test conditions.
  • Group-specific test URLs are respected.
  • Default behavior remains secure and HTTPS-based.
  • Existing proxy selection and profile behavior is unaffected.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions