Dade
2a28ababf1
fix(service): 模型错误提示 - 按上游正文归类 400/422 失败原因 (#327)
上游返回 400/422 时,providerUserFacingErrorMessage 只按状态码返回固定文案
「模型服务拒绝了请求,请检查模型和参数」,捕获到的 providerHTTPError.Body
从未参与判断。用户看到的原因与真实原因无关:内容审核、额度不足、模型无权限
都会被提示成参数问题,导致排查方向错误。
providerPayloadErrorMessage 已经实现了正确的归类逻辑,但只在 HTTP 成功后的
正文解析路径上生效,HTTP 失败路径取不到。
本次改动:
- 抽出 providerPayloadErrorCategory,归类失败时返回 ok=false,调用方退回原有
通用文案,不因为归类失败而改变现有行为。
- providerUserFacingErrorMessage 仅对 400/422 解析正文。401/403/404/5xx 的正文
可能是网关 HTML、鉴权诊断或含密钥的内部信息,不参与归类,且这些状态码本身
已有更贴切的固定文案。
- 新增真人肖像类目:部分视频模型(如火山方舟 Seedance)会以
InputImageSensitiveContentDetected.PrivacyInformation 拒绝含真人的输入图片,
原先落到默认分支,提示为参数问题。该类目只匹配供应商错误码中的稳定标识
(privacyinformation / sensitivecontentdetected),不扫描自然语言:正文经常
回显用户提示词,按「肖像」「likeness」这类词判断会把普通参数错误误报。
归类结果始终是固定文案,正文只参与匹配,不会进入用户可见错误。请求分析仍按
既有方式记录经过脱敏的响应正文,本次改动没有新增日志路径。
验证:backend gofmt 无输出;go test ./... 除 TestAutoDLPluginArtifact、
TestPluginRuntimeDropsRemovedBundledProtocol、
TestAutoDLPluginPackageInstallsThroughUploadRuntime 外全部通过,这三项在未改动
的 upstream/main 上同样失败。
2026-08-27 09:14:51 +08:00
..
2026-08-02 16:27:22 +08:00
2026-08-20 13:24:09 +08:00
2026-08-07 12:35:03 +08:00
2026-08-22 17:00:08 +08:00
2026-08-23 23:19:27 +08:00
2026-08-22 09:52:09 +08:00
2026-07-31 15:46:58 +08:00
2026-07-31 15:46:58 +08:00
2026-07-28 20:12:24 +08:00
2026-07-22 14:29:10 +08:00
2026-08-22 09:52:09 +08:00
2026-08-06 16:40:57 +08:00
2026-07-22 14:29:10 +08:00
2026-08-25 11:24:47 +08:00
2026-08-17 17:20:00 +08:00
2026-08-22 09:52:09 +08:00
2026-08-22 17:00:08 +08:00
2026-08-24 21:32:56 +08:00
2026-08-26 15:02:42 +08:00
2026-08-26 15:02:42 +08:00
2026-07-23 21:19:07 +08:00
2026-07-23 18:35:51 +08:00
2026-08-23 23:19:27 +08:00
2026-08-04 16:24:18 +08:00
2026-08-15 12:45:29 +08:00
2026-08-15 12:45:29 +08:00
2026-08-16 22:35:20 +08:00
2026-08-15 13:25:50 +08:00
2026-08-15 12:45:29 +08:00
2026-08-25 13:49:15 +08:00
2026-08-25 13:49:15 +08:00
2026-08-03 21:38:04 +08:00
2026-08-03 21:38:04 +08:00
2026-08-25 13:49:15 +08:00
2026-08-22 02:30:26 +08:00
2026-08-25 13:49:15 +08:00
2026-08-22 09:52:09 +08:00
2026-08-22 09:52:09 +08:00
2026-08-25 13:49:15 +08:00
2026-08-25 13:49:15 +08:00
2026-08-23 23:19:27 +08:00
2026-08-07 12:35:03 +08:00
2026-08-16 13:12:41 +08:00
2026-08-22 17:00:08 +08:00
2026-08-19 07:16:07 +08:00
2026-08-19 07:16:07 +08:00
2026-08-19 07:16:07 +08:00
2026-08-02 16:27:22 +08:00
2026-08-22 17:00:08 +08:00
2026-08-21 11:57:36 +08:00
2026-08-24 21:32:56 +08:00
2026-08-24 16:55:45 +08:00
2026-08-26 15:02:42 +08:00
2026-08-24 21:32:56 +08:00
2026-08-24 10:14:19 +08:00
2026-08-24 10:14:19 +08:00
2026-08-15 15:48:16 +08:00
2026-08-15 15:48:16 +08:00
2026-08-25 13:49:15 +08:00
2026-08-24 21:32:56 +08:00
2026-08-20 16:33:51 +08:00
2026-08-20 16:33:51 +08:00
2026-08-20 15:16:45 +08:00
2026-08-20 15:16:45 +08:00
2026-08-25 15:22:05 +08:00
2026-07-27 10:45:11 +08:00
2026-07-27 10:45:11 +08:00
2026-08-22 11:35:23 +08:00
2026-08-25 11:24:47 +08:00
2026-08-14 11:54:34 +08:00
2026-08-07 12:35:03 +08:00
2026-08-26 21:36:48 +08:00
2026-08-26 16:28:45 +08:00
2026-08-26 21:36:48 +08:00
2026-08-24 19:42:30 +08:00
2026-08-25 13:49:15 +08:00
2026-08-22 09:52:09 +08:00
2026-08-23 23:19:27 +08:00
2026-07-22 14:29:10 +08:00
2026-07-22 14:29:10 +08:00
2026-07-29 18:08:01 +08:00
2026-07-29 20:57:24 +08:00
2026-08-20 22:58:31 +08:00
2026-08-23 23:19:27 +08:00
2026-08-07 12:35:03 +08:00
2026-08-26 15:02:42 +08:00
2026-08-22 09:52:09 +08:00
2026-08-27 09:14:51 +08:00
2026-08-16 22:35:20 +08:00
2026-08-27 09:14:51 +08:00
2026-07-22 14:29:10 +08:00
2026-08-25 20:10:11 +08:00
2026-08-25 20:10:11 +08:00
2026-08-25 20:10:11 +08:00
2026-08-20 16:21:59 +08:00
2026-08-22 09:52:09 +08:00
2026-08-18 20:42:25 +08:00
2026-08-18 20:42:25 +08:00
2026-08-26 15:02:42 +08:00
2026-08-18 15:16:05 +08:00
2026-08-07 18:52:31 +08:00
2026-08-25 20:10:11 +08:00
2026-08-25 13:49:15 +08:00
2026-08-22 09:52:09 +08:00
2026-08-23 08:27:55 +08:00
2026-08-26 15:02:42 +08:00
2026-08-02 16:27:22 +08:00
2026-08-02 16:27:22 +08:00
2026-07-22 14:29:10 +08:00
2026-08-07 12:35:03 +08:00
2026-08-15 12:52:11 +08:00
2026-08-25 11:24:47 +08:00
2026-08-10 01:42:47 +08:00
2026-08-25 11:24:47 +08:00
2026-08-25 11:24:47 +08:00
2026-08-07 11:46:23 +08:00
2026-08-07 11:46:23 +08:00
2026-08-19 11:58:06 +08:00
2026-08-19 11:58:06 +08:00
2026-08-19 11:58:06 +08:00
2026-08-22 09:52:09 +08:00
2026-08-22 09:52:09 +08:00
2026-08-26 15:02:42 +08:00
2026-08-26 15:02:42 +08:00
2026-08-26 21:36:48 +08:00
2026-08-22 09:52:09 +08:00
2026-08-26 15:02:42 +08:00
2026-08-26 15:02:42 +08:00
2026-08-22 09:52:09 +08:00
2026-08-22 09:52:09 +08:00
2026-08-22 09:52:09 +08:00
2026-08-22 09:52:09 +08:00
2026-08-04 16:24:18 +08:00
2026-08-22 09:52:09 +08:00
2026-08-26 15:02:42 +08:00
2026-08-26 15:02:42 +08:00
2026-08-19 22:04:41 +08:00
2026-08-19 22:04:41 +08:00
2026-08-16 13:12:41 +08:00
2026-08-15 12:52:11 +08:00
2026-07-23 21:19:07 +08:00
2026-08-15 17:00:30 +08:00
2026-08-25 15:22:05 +08:00
2026-08-26 21:36:48 +08:00
2026-08-26 21:36:48 +08:00