向 Clash 电脑端项目提交问题之前,应当先写成另一人只靠文字就能走一遍的复现步骤。仓库声明欢迎提交 Issue 与拉取请求,并引导阅读贡献说明。发布页不但提供安装包,还按 Windows、macOS、Linux 分开罗列修复项,说明维护者是按系统、架构和服务状态来理解报告的。电脑端同时存在系统代理、虚拟网卡、服务模式与 Sidecar,任何一项没写,都可能把两种完全不同的故障混在一起。步骤若只剩不能用三个字,议题就会停在无法核对的状态。
适用条件
适用前提有两条。第一,现象发生在客户端进程、系统服务或内核启动过程中,而不是仅仅某个订阅来源打不开。第二,你已经在发布页看到当前标签仍提供对应系统的安装包,并且知道自己用的是正式版还是滚动更新版。正式版特征是高可靠性、适合日常使用;滚动更新版适合测试反馈,可能存在缺陷;另有已废弃的 Alpha 标签只用于测试发布流程,不应再当作日常复现基线。
下列情况先不要写成复现:尚未区分 Win7 已退出支持;把完整订阅网址写进步骤;把资料中未出现的按钮名称当作步骤标题。订阅若需出现,只保留 token=示例。企业版系统或无法安装 Webview2 时,还必须写明是否使用了体积较大的内置 Webview2 包,否则别人会按普通包去复现。
编写复现步骤
身份段必须能在 https://github.com/clash-verge-rev/clash-verge-rev/releases 对上资产。写清版本标签、操作系统、处理器架构。Windows 写明普通安装包还是内置 Webview2 包。macOS 写明苹果芯片还是英特尔芯片。Linux 写明 deb 或 rpm,以及用 apt 还是 dnf 安装,并区分常见六十四位、ARM64 与 ARMv7。缺其中一项,别人就会下载错包。
环境段写运行方式:当前是服务模式还是 Sidecar;虚拟网卡是否打开;是否在开机网络未就绪时启动;是否曾手动配置网卡;是否首次以管理员身份启动。这些条件在发布说明中分别对应内核无法启动、系统代理读取报错、服务拒绝启动等不同修复项,不能互相替代。
操作段按时间顺序写:启动应用、导入或更新订阅、打开或关闭域名覆写、重启、安装或修复服务,直到问题出现。只写可观察结果。预期对照功能列表已声明的能力,例如系统代理与守卫、虚拟网卡、配置增强、可视化规则。实际则抄写提示原文,包括内核启动失败的具体原因,以及窗口恢复后仍提示尚未解决的错误。日志段说明服务运行日志已保存到文件、文件错误日志含路径和失败原因,并只附脱敏片段。
判断依据与失败时下一步
合格依据:另一人能根据文本选对安装包并重复顺序;标签与资产名一致;无完整订阅网址;正式版与滚动版已标明。不合格依据:只写最新版;把已废弃 Alpha 当基线;Win7 环境未加注已不支持;步骤中的系统与发布页资产表对不上。
若自己按该步骤第二次无法触发,先不要提交,改为一次只改变一个变量:改用正式版、关闭虚拟网卡、在 Sidecar 与服务模式之间切换,观察哪一项改变结果。若提示服务无法启动内核、找不到程序,或安全检查未通过,应把原因原文放进步骤。若仍然写不出有序步骤,回到仓库说明与贡献文档核对提交方式,补全身份段后再改一版。
https://github.com/clash-verge-rev/clash-verge-rev https://github.com/clash-verge-rev/clash-verge-rev/releases