AGC 资源编辑远端 failed 分支丢弃错误详情,仅保存固定生成失败码 #555

Closed
opened 2026-09-30 15:53:47 +08:00 by lhk229 · 1 comment
Member

问题

资源编辑轮询拿到 status=failed 后,客户端不读取远端错误码或 message,统一保存 remote-generation-failed 并返回「资源编辑生成失败」。即使服务端提供可行动原因,当前分支也无法保留。

现场与证据边界

飞鸟游戏原型-r7 的 tool-calls.jsonl:17、18 是两个不同素材的抠图请求,均只返回 remote-terminal-failed: 资源编辑生成失败。

两个 operation 账本:

  • .agent/resource-edits/operations/2c08714d-4e6d-4acc-9337-43a09cb8f0eb.json
  • .agent/resource-edits/operations/6d9ae085-8f39-4b99-8c07-2e43fde9fda4.json

第 29 行为 remote-failed,第 32 行保留 remoteOperationId,第 49 行只有固定 terminalFailureCode;没有可区分原因的摘要。对应 errors sidecar 同样只有固定文案。

不能由导出证明服务端这两次实际返回了哪些 error/message,也不能推断网络、余额或模型是根因。 两次失败不是同参重试;项目未交付主要原因仍由已知 #529/#525 解释。本项只跟踪当前代码确定存在的诊断能力缺口,不重复它们,也不是 #495 的幂等 409。

当前代码

project/resource_editor.rs:2925 读取 job;第 2944–2948 行 failed 分支直接保存固定码和时间,不提取远端诊断。

验收

  • 模拟服务端 failed 回应携带已约定的 code/message,客户端保存有界、安全、可关联原 operation 的诊断摘要。
  • 返回给 Agent 的摘要可区分需要改参数、处理权限/余额及未知远端失败等情况,不暴露原始敏感响应。
  • 服务端缺少原因时明确「未提供原因」,不编造分类。
  • 远端已终态失败的操作继续遵守现有恢复/幂等边界,不因补诊断而自动再提交。

核查范围

2026-09-30 对九份项目导出做只读审计,代码基线 3540c5660fd294b70e054810b5384a2855908df5。本 Issue 仅登记问题,尚未实施修复。未重放项目付费操作,不提交原始会话、凭据或本地私密绝对路径。已排除 #529、#525、#518;偶发 Provider/网络错误不作为新增缺陷。

## 问题 资源编辑轮询拿到 status=failed 后,客户端不读取远端错误码或 message,统一保存 `remote-generation-failed` 并返回「资源编辑生成失败」。即使服务端提供可行动原因,当前分支也无法保留。 ## 现场与证据边界 `飞鸟游戏原型-r7` 的 `tool-calls.jsonl:17、18` 是两个不同素材的抠图请求,均只返回 `remote-terminal-failed: 资源编辑生成失败`。 两个 operation 账本: - `.agent/resource-edits/operations/2c08714d-4e6d-4acc-9337-43a09cb8f0eb.json` - `.agent/resource-edits/operations/6d9ae085-8f39-4b99-8c07-2e43fde9fda4.json` 第 29 行为 remote-failed,第 32 行保留 remoteOperationId,第 49 行只有固定 terminalFailureCode;没有可区分原因的摘要。对应 errors sidecar 同样只有固定文案。 **不能由导出证明服务端这两次实际返回了哪些 error/message,也不能推断网络、余额或模型是根因。** 两次失败不是同参重试;项目未交付主要原因仍由已知 #529/#525 解释。本项只跟踪当前代码确定存在的诊断能力缺口,不重复它们,也不是 #495 的幂等 409。 ## 当前代码 [`project/resource_editor.rs:2925`](https://git.genarrative.world/git/GenarrativeAI/Genarrative/src/commit/3540c5660fd294b70e054810b5384a2855908df5/apps/ai-game-creator-shell/src-tauri/src/project/resource_editor.rs#L2925) 读取 job;第 2944–2948 行 failed 分支直接保存固定码和时间,不提取远端诊断。 ## 验收 - [ ] 模拟服务端 failed 回应携带已约定的 code/message,客户端保存有界、安全、可关联原 operation 的诊断摘要。 - [ ] 返回给 Agent 的摘要可区分需要改参数、处理权限/余额及未知远端失败等情况,不暴露原始敏感响应。 - [ ] 服务端缺少原因时明确「未提供原因」,不编造分类。 - [ ] 远端已终态失败的操作继续遵守现有恢复/幂等边界,不因补诊断而自动再提交。 ## 核查范围 2026-09-30 对九份项目导出做只读审计,代码基线 `3540c5660fd294b70e054810b5384a2855908df5`。本 Issue 仅登记问题,尚未实施修复。未重放项目付费操作,不提交原始会话、凭据或本地私密绝对路径。已排除 #529、#525、#518;偶发 Provider/网络错误不作为新增缺陷。
lhk229 added the Kind/Enhancement
Priority
Medium
3
labels 2026-09-30 15:53:47 +08:00
k88936 self-assigned this 2026-10-02 16:07:42 +08:00
Member

#568 做的和这个也相关

#568 做的和这个也相关
Sign in to join this conversation.
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GenarrativeAI/Genarrative#555