Skip to content

Speedtest respect user-set core type#8856

Merged
2dust merged 2 commits into2dust:masterfrom
DHR60:fix1
Mar 1, 2026
Merged

Speedtest respect user-set core type#8856
2dust merged 2 commits into2dust:masterfrom
DHR60:fix1

Conversation

@DHR60
Copy link
Copy Markdown
Contributor

@DHR60 DHR60 commented Feb 27, 2026

  • 尊重用户设置的核心类型,将使用该核心测试节点真连接
  • 允许测试链式代理连通性,顺带支持了策略组的测试

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the speedtest pipeline to respect each profile’s user-selected core type (Xray vs sing-box) when generating test configs, and extends speedtest config generation to support complex nodes like proxy chains and policy groups.

Changes:

  • Enrich ServerTestItem with the resolved full ProfileItem and computed CoreType so speedtest config generation can use real node data.
  • Batch speedtests by CoreType instead of inferring core from ConfigType lists.
  • Add GetProfileItemsByIndexIdsAsMap to reduce repeated lookups and preserve ordering for group child selection.

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
v2rayN/ServiceLib/Services/SpeedtestService.cs Builds ServerTestItem with resolved Profile + CoreType; batches tests by core type.
v2rayN/ServiceLib/Services/CoreConfig/V2ray/CoreConfigV2rayService.cs Allows group types in speedtest config generation; fixes balancer tag usage for routing rules.
v2rayN/ServiceLib/Services/CoreConfig/Singbox/CoreConfigSingboxService.cs Allows group types in speedtest config generation (but currently contains a core support filter issue).
v2rayN/ServiceLib/Models/ServerTestItem.cs Adds Profile (required) and CoreType fields.
v2rayN/ServiceLib/Manager/GroupProfileManager.cs Switches to map-based profile retrieval to preserve requested ordering.
v2rayN/ServiceLib/Manager/CoreManager.cs Chooses speedtest core type from ServerTestItem.CoreType.
v2rayN/ServiceLib/Manager/AppManager.cs Adds GetProfileItemsByIndexIdsAsMap helper.
v2rayN/ServiceLib/Handler/CoreConfigHandler.cs Uses ServerTestItem.Profile directly instead of re-fetching nodes from storage.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@2dust 2dust merged commit 9f6237f into 2dust:master Mar 1, 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.

3 participants