问题描述
在本地 Ornn http://localhost:8080/settings 的 Redeem Code 流程中,用户输入一个已经被兑换过的 redemption code 后,后端接口返回了明确的 409 conflict 错误和具体原因,但前端只展示了泛化错误文案,用户无法知道失败原因。
复现环境
- 环境:本地 Ornn
- URL:
http://localhost:8080/settings
- 用户:普通用户登录态
- 相关接口:
POST /api/v1/redemption-codes/redeem
复现步骤
- 启动本地 Ornn,并使用普通用户登录。
- 打开
http://localhost:8080/settings。
- 在
Redeem Code 输入框中输入一个已经被兑换过的 redemption code。
- 点击
REDEEM。
- 打开 DevTools → Network,查看
POST /api/v1/redemption-codes/redeem 的响应。
- 观察页面上的错误提示文案。
实际结果
接口返回 409 Conflict,响应体里包含明确错误信息,例如:
{
"title": "Resource conflict",
"status": 409,
"detail": "This code has already been redeemed",
"instance": "/api/v1/redemption-codes/redeem",
"code": "redemption_code_already_redeemed"
}
但页面只显示泛化错误:
Couldn't redeem this code. Please try again or contact admin.
用户无法判断兑换失败是因为 code 已被使用、无效、过期、权限问题,还是系统异常。
预期结果
前端应根据后端返回的 code 或 detail 展示具体、可操作的错误原因。
例如当后端返回:
"code": "redemption_code_already_redeemed",
"detail": "This code has already been redeemed"
页面应展示类似:
This redemption code has already been used.
如果当前语言为中文,可展示:
建议优先用 code 做 i18n 映射;如果没有匹配的 code,至少 fallback 到后端 detail,避免固定展示泛化错误。
影响
- 用户可见的错误处理问题。
- 后端已经返回了明确错误原因,但前端未透出。
- 用户无法自助判断下一步操作,容易误以为系统异常或需要联系管理员。
备注
这个问题来自本地 Settings → Redeem Code 真实 UI workflow 复现,不是 agentic-testing harness 的 local Ornn API only 配置拦截问题。
问题描述
在本地 Ornn
http://localhost:8080/settings的 Redeem Code 流程中,用户输入一个已经被兑换过的 redemption code 后,后端接口返回了明确的 409 conflict 错误和具体原因,但前端只展示了泛化错误文案,用户无法知道失败原因。复现环境
http://localhost:8080/settingsPOST /api/v1/redemption-codes/redeem复现步骤
http://localhost:8080/settings。Redeem Code输入框中输入一个已经被兑换过的 redemption code。REDEEM。POST /api/v1/redemption-codes/redeem的响应。实际结果
接口返回
409 Conflict,响应体里包含明确错误信息,例如:{ "title": "Resource conflict", "status": 409, "detail": "This code has already been redeemed", "instance": "/api/v1/redemption-codes/redeem", "code": "redemption_code_already_redeemed" }但页面只显示泛化错误:
用户无法判断兑换失败是因为 code 已被使用、无效、过期、权限问题,还是系统异常。
预期结果
前端应根据后端返回的
code或detail展示具体、可操作的错误原因。例如当后端返回:
页面应展示类似:
如果当前语言为中文,可展示:
建议优先用
code做 i18n 映射;如果没有匹配的 code,至少 fallback 到后端detail,避免固定展示泛化错误。影响
备注
这个问题来自本地 Settings → Redeem Code 真实 UI workflow 复现,不是 agentic-testing harness 的
local Ornn API only配置拦截问题。