You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
探活用 new URL("/", apiBase) 丢掉路径前缀,带前缀的 apiBase 一定误报;断连报错也不含目标 host:port #111
Activity
ExSchwi commentedon Oct 31, 2026
两个问题都改了,和 #110 在同一个 PR:#113
问题一(探活丢前缀):
probeCommandCode()里的new URL('/', options.apiBase)换成新的probeTargetOf(apiBase)——new URL(apiBase)之后只补尾斜杠,不再折回 host root。真实模型请求本来就是${apiBase}${path}字符串拼接,所以探活目标也应该是配置的 base 本身;http://127.0.0.1:18797/bili/https://api.commandcode.ai现在会去探/bili/https://api.commandcode.ai/而不是http://127.0.0.1:18797/。probeOutcomeForStatus()的白名单没动:探到前缀根的 404 仍然算http-error,但现在这个 404 是真从上游回来的,而不是自己构造出来的。问题二(失败串没有 host:port):
getUsage()里两处failures.push(${path}: …)改成${base.replace(/\/+$/, '')}${path},于是面板detail里是完整地址,例如http://127.0.0.1:18797/bili/https://api.commandcode.ai/alpha/whoami: fetch failed。端口从 18797 漂到 18798 时,这条提示直接指出客户端试过的地址,不用再猜。usageNetworkHint/errorNetworkHint的中英文案也改成说明这件事。验证:新增
probeTargetOf单元测试、path prefix 与反向代理 prefix 两个探活测试、以及getUsage失败记录保留前缀的测试;npm test全量 1148 项通过,npm run typecheck与npm run build均正常。Mars-Sea commentedon Oct 31, 2026
谢谢反馈,两个问题都已确认并修复。
new URL('/', apiBase),改为请求${apiBase}/alpha/whoami,路径前缀会保留;探活不带凭据,所以未认证的 401/403 计为可达。已用真实宿主 + 带前缀反向代理复现并验证过,会随下一个补丁版本发布(当前尚未发版)。
fix: 探活改探真实端点并补齐失败诊断(#110、#111)
发布 v0.16.3:修复探活路径前缀与失败提示诊断(#110、#111)