Skip to content

[Bug] v1.19.28 中 proxy-provider 节点未加入代理组,回退 v1.19.27 后恢复正常 #2970

Description

@Lainmont

验证步骤

  • 我已经阅读了 文档,了解所有我编写的配置文件项的含义,而不是大量堆砌看似有用的选项或默认值。
  • 我仔细看过 文档 并未解决问题
  • 我已在 Issue Tracker 中寻找过我要提出的问题,并且没有找到
  • 我是中文用户,而非其他语言用户
  • 我已经使用最新的 Alpha 分支版本测试过,问题依旧存在
  • 我提供了可以在本地重现该问题的服务器、客户端配置文件与流程,而不是一个脱敏的复杂客户端配置文件。
  • 我提供了可用于重现我报告的错误的最简配置,而不是依赖远程服务器或者堆砌大量对于复现无用的配置等。
  • 我提供了完整的日志,而不是出于对自身智力的自信而仅提供了部分认为有用的部分。
  • 我直接使用 Mihomo 命令行程序重现了错误,而不是使用其他工具或脚本。

操作系统

Windows

系统版本

Windows 10 专业版 22H2(操作系统内部版本 19045.4474)

Mihomo 版本

Mihomo Meta v1.19.28 windows amd64 with go1.26.5 Wed Jul 8 00:25:02 UTC 2026
Use tags: with_gvisor

配置文件

log-level: debug

proxy-providers:
  p1:
    type: http
    url: "<REDACTED_SUBSCRIPTION_URL_1>"
    interval: 86400
    override:
      additional-prefix: "p1 |"

  p2:
    type: http
    url: "<REDACTED_SUBSCRIPTION_URL_2>"
    interval: 86400
    override:
      additional-prefix: "p2 |"

proxy-groups:
  - name: Proxy
    type: select
    proxies:
      - AUTO
      - DIRECT
      - REJECT
    include-all: true
    use:
      - p1
      - p2

  - name: AUTO
    type: url-test
    url: https://www.gstatic.com/generate_204
    interval: 300
    tolerance: 50
    include-all: true
    use:
      - p1
      - p2

rules:
  - MATCH,Proxy

描述

升级到 Mihomo v1.19.28 后,HTTP proxy-provider 可以正常下载、更新并显示节点,但这些节点没有被加入引用对应 Provider 的代理组。

具体表现:

  1. p1、p2 在 Provider API/代理集合界面中正常存在。
  2. p1 包含约 60 个节点,p2 包含约 40 个节点。
  3. 启动日志显示 p1、p2 均已成功初始化。
  4. 最终配置中的 ProxyAUTO 等代理组明确包含:

yaml
use:

  • p1
  • p2
  1. 代理组仍然只显示主配置proxies中的节点,不显示p1、p2中的节点。
  2. 手动更新Provider、重新应用配置、重启核心均不能恢复。

保持客户端、覆写脚本、订阅和最终配置完全不变,仅将MihomoCore从v1.19.28回退至v1.19.27后,p1、p2的节点
立即正常出现在代理组中。
版本对比:

  • v1.19.27:正常
  • v1.19.28:稳定复现

因此怀疑这是v1.19.28相比v1.19.27的回归,可能与代理组聚合Provider节点或 Provider更新后的代理组缓存有关。

重现方式

  1. 准备两个能够正常返回 Mihomo 节点列表的 HTTP proxy-provider,名称分别为 p1 和 p2。
  2. 创建一个 select 代理组,并通过以下配置引用两个 Provider:

yaml
use:

  • p1
  • p2
  1. 使用 Mihomo v1.19.28 加载配置。

确认启动日志中出现:

Start initial provider p1
Start initial provider p2

  1. 通过 Provider API 或面板确认 p1、p2 均已成功下载节点。
  2. 查看 Proxy 代理组,发现其中只有主配置 proxies 中的节点,没有 p1、p2 中的节点。
  3. 手动更新 p1、p2,问题仍然存在。
  4. 不修改任何配置,将核心替换为 v1.19.27 并重新启动。
  5. p1、p2 中的节点立即正常出现在 Proxy 和其他引用它们的代理组中。

日志

Environment:
  OS: Windows 10 Pro 22H2, OS Build 19045.4474
  Core: Mihomo Meta v1.19.28 windows amd64 with go1.26.5
  Tags: with_gvisor

Result:
  - proxy-providers p1 and p2 were loaded successfully.
  - Both providers were visible and updateable through the provider API/UI.
  - Proxy and AUTO were configured with use: [p1, p2].
  - Nodes from p1 and p2 were missing from the proxy groups.
  - The same configuration works immediately after rolling back to v1.19.27.

Sanitized startup log from v1.19.28:

time="2026-07-12T15:30:41.172428900+08:00" level=info msg="Start initial configuration in progress"
time="2026-07-12T15:30:41.182866500+08:00" level=info msg="Initial configuration complete, total time: 10ms"
time="2026-07-12T15:30:56.683308800+08:00" level=info msg="Start initial provider p1"
time="2026-07-12T15:30:56.689511300+08:00" level=info msg="Start initial provider p2"
time="2026-07-12T15:30:56.688986700+08:00" level=info msg="Start initial compatible provider Proxy"
time="2026-07-12T15:30:56.688986700+08:00" level=info msg="Start initial compatible provider AUTO"
time="2026-07-12T15:30:56.712901200+08:00" level=warning msg="[Provider] get subscription-userinfo: failed to parse value"
time="2026-07-12T15:30:56.720822700+08:00" level=warning msg="[Provider] get subscription-userinfo: failed to parse value"

Sensitive subscription URLs, proxy server addresses, traffic records, local paths, IP addresses, and process names were removed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions