From cba13593d33ff2f1cc6c07167ace3afe3e04005a Mon Sep 17 00:00:00 2001 From: chengma Date: Fri, 17 Jul 2026 16:49:44 +0800 Subject: [PATCH] docs(tasks): fix review findings in T-658 split - T-658a: client-side trimming responsibility (cmhub rejects >8, never trims); add release-gating note for the four-task unit - T-658b: missing reference files are fail-fast only, drop the skip-and-rewrite fork that violated T-637 snapshot semantics - T-658d: mark as release gate for the a/b/c/d unit Co-Authored-By: Claude Fable 5 --- docs/tasks/T-658a.md | 3 ++- docs/tasks/T-658b.md | 2 +- docs/tasks/T-658d.md | 1 + 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/tasks/T-658a.md b/docs/tasks/T-658a.md index 141965e..d78ebc5 100644 --- a/docs/tasks/T-658a.md +++ b/docs/tasks/T-658a.md @@ -18,11 +18,12 @@ created: 2026-07-17 - 在 `app/image_studio_generation.py` 中集中实现多图 payload 构造。 - 本地图片统一使用 `images` 数组中的 `image_base64`,不再提交顶层旧字段。 - 单图也使用单元素 `images` 数组;多图按主图、参考图顺序提交。 -- 每个请求最多提交 8 张图片,超出部分由上游规则明确裁剪,并返回实际提交数量。 +- 每个请求最多提交 8 张图片。裁剪责任在**客户端**:cmhub 对超过 8 张返回 `400 bad_request`,不会代为裁剪。上游列表由 T-658b 在 spec 期裁到「主图 + 最多 7 张参考」;本层在提交前做防御性校验,若仍超过 8 张视为程序 bug,按中文错误失败,不静默截断。 - 保留异步提交、`Idempotency-Key`、轮询、自动重试、失败退点和现有并发语义。 - 在提交前校验单图和总 payload 大小,避免 Base64 请求体过大;同一轮生成可按资产 ID缓存已编码内容,但必须有界。 - 为 cmhub 请求增加真实接口契约测试:数组结构、最大数量、字段互斥、空项、错误响应和点数返回。 - 若接口契约不满足,按中文错误提示失败,不静默回退到旧字段;是否支持旧服务端必须在发布前明确验证。 +- **发布门槛**:T-658a/b/c/d 是一个发布单元。本任务落地而 T-658c(提示词一致性)未落地的中间版本,会出现「提示词声称单图、实际提交多图」的事实不符;在 T-658d 验收通过前不得打包发布安装程序。 ## 验收要点 diff --git a/docs/tasks/T-658b.md b/docs/tasks/T-658b.md index 2ed7c5e..6862b63 100644 --- a/docs/tasks/T-658b.md +++ b/docs/tasks/T-658b.md @@ -21,7 +21,7 @@ created: 2026-07-17 - 扩展 `ImageStudioJob`、`create_job()`、读取、列表和恢复路径,保证字段完整传递。 - 创建 job 时校验参考资产属于同一商品项目、顺序稳定且没有重复主图;以 JSON 快照落库。 - 历史 job 的该字段为 `NULL` 时视为没有参考图,查看、恢复和重试继续单图提交,不根据当前项目图片列表补图。 -- 参考图片文件缺失时,优先保证“提示词数量”和“实际提交数量”一致:该 job 按中文错误失败并记录缺失资产,不静默跳过导致语义不一致。若最终采用“跳过缺失图”,必须同步重新生成并持久化本次尝试的 prompt 与实际资产快照。 +- 参考图片文件缺失时**定死为 fail-fast**:该 job 按中文错误失败并列出缺失资产,不静默跳过。理由:跳过会导致「提示词声称 N 张、实际提交少于 N 张」的语义不一致;而“跳过后重写 prompt 与快照”违反 T-637 的冻结语义(历史重试必须使用原快照,不得重写),两条弥补路径都不可取。用户可删除该 job 后重新生成来获得与当前图片状态一致的新任务。 - 主图文件缺失继续按现有失败语义处理。 ## 验收要点 diff --git a/docs/tasks/T-658d.md b/docs/tasks/T-658d.md index 41fb068..df1d87f 100644 --- a/docs/tasks/T-658d.md +++ b/docs/tasks/T-658d.md @@ -23,6 +23,7 @@ created: 2026-07-17 - 增加端到端回归:不勾选多角度图、勾选多 SKU 图、单图、3 图、9 图、历史 NULL job、重试恢复和参考图缺失。 - 验证取消、失败、自动重试、轮询、点数展示和生成历史不受影响。 - 验证 ② AI 生成封面、AI 帮写、③ 更新蝦皮、CDP 流程不受影响。 +- **发布门槛**:本任务是 T-658a/b/c/d 发布单元的收口——全部验收通过前不得打包发布安装程序(a/b 先行落地的中间版本存在提示词与实际提交不符的窗口)。 ## 验收要点