fix(web): 修复生成页 API 调用适配新模板编辑器架构 #671
Reference in New Issue
Block a user
Delete Branch "fix/generate-page-api-migration"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
问题
PR #666 将前端 API 路径迁移到
/templates/{templateId}/editor架构,但只改了 import 路径,没有适配函数签名变化,导致:/templates/drafts接口,新架构下 GET/templates/{templateId}/editor自动创建草稿根因链路
实际后端架构:GET
/templates/{template_id}/editor自动创建草稿 → PUT 更新 → POST/generate触发修复内容
/editor/generate替代已废弃的创建接口遗留问题(后续处理)
createEditPlan函数仍是死代码(调用不存在的接口),建议删除P0 阻塞修复,先合入解决 develop CI E2E 失败问题。
🚀 预览环境已部署
CI全绿,自动审批通过。
CI全绿,自动审批通过。
代码审查结果 - PR #671
⚠️ 问题(2个需要修改)
apps/web/src/pages/generate/GeneratePage.tsx 第1090行:轮询接口异常时存在无限重试风险。
poll函数的catch块中,捕获到错误后直接通过setTimeout3秒后递归调用自身,没有重试次数限制或错误类型判断。apps/web/src/pages/generate/GeneratePage.tsx 第996行:忽略了
getEditPlan的返回值,可能导致后续调用 ID 不一致。await getEditPlan(selectedTemplate)但未使用返回值。随后的updateEditPlan和generateEditPlan均使用selectedTemplate作为 ID。getEditPlan返回plan_id: "test-plan"),后端接口极有可能返回新生成的草稿 ID (plan_id)。如果后端架构下草稿 ID 与selectedTemplate不同,忽略返回值将导致后续更新和生成操作作用于错误的资源,引发数据错误。💡 建议(1个可选)
plan_id和generation_task_id存在。建议增加对plan_status的校验,确保生成任务已正确启动(例如状态为processing或pending),以更准确地验证业务逻辑。✅ 格式检查通过 | ❌ 逻辑审查需修改 | ⚠️ 建议关注性能
🤖 由 AI 代码审查机器人自动生成 | 2026-07-21 10:34:07 | 模型:
🗑️ 预览环境已清理
PR #671 已关闭或合并,对应的预览环境已被清理。