Files
beige/plans/总核销表.md
yangqianqian 25f86b2f4a 存量前端:生图分组/灯箱/重生控件/导入文案/驳回横幅+SSE+总核销表
- ImageStrategyGroup/ImageLightbox/RegenControls/ImportTextModal/
  RejectReasonBanner 新建组件
- tasks images/text/new + history + 配置/布局/SSE hooks 存量改动
- 总核销表进度更新

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-18 11:17:53 +08:00

180 lines
16 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Clover 总核销表(做完一项勾一项·任务只减不增)
> 孙总方法论载体:总核销表+分模块核销表,每模块小步快跑+高频check门禁硬卡。
> 勾选规则:□未做 / ◐做了没验 / ✅真端到端验过(附证据) / ⏸️阻塞(等北哥定义)。
> **报"✅"必附证据。绝不信第一遍自评,每环必独立交叉核对(孙总:实测AI谎报"都做了"实际20-30%)。**
> 事实底座勘验workflow wf_d4c1dbab-5832026-06-126容器全Uptask41端到端312s成功
## 终点线倩倩姐2026-06-12拍板·全量
KR1链路连通 + KR2质量达标 + KR3自主可验 + KR4引擎补全(第2环+第11环) 全绿 = 全勾完。
---
> 🟢 全部7份模块核销表已细化到90分级(每份含 Ralph修改步骤 + auto/human验收清单 + 已吸收独立交叉验证修正⚠️)。
## P0 主链修真bug第5环文案 + 第6环配图
| ID | 任务 | 模块核销表 | 细化 | 状态 |
|----|------|-----------|------|------|
| M0 | 模型探活(opus-4-8/gpt-5.5)→定模型 | — | — | ✅ 2026-06-12探活:opus-4-8/gpt-5.5/sonnet-4-5全HTTP200真可用,/models已列出。按拍板用opus-4-8(文案) |
| M1 | 第5环 写文案修bug | plans/核销-第5环-写文案.md | 🟢S1-S9/AC1-6 | ◐ 本体做了(随基线6a2632d,LLM生成+7维AI评委+合格线80+先展示后台补三链齐全:tasks.py:108/pipeline_io.py:136/replenish_task.py)。质量优化循环(text_variants.py:136)暂关等北哥prompt。**独立仓无专项commit,需补端到端验证标✅** |
| M2 | 第6环 配图修bug+3套 | plans/核销-第6环-配图.md | 🟢S1-S8/A1-A8(含A6b) | ✅ 2026-06-15 task62端到端真跑:3套A/B/C各2张入库,6张全1024×1536,瓶身只印素颜霜不P品牌词,背景干净无杂物,三套真拉开差异(A痛点/B场景/C成分背书),倩倩姐过目认可前后对比图能用。倩倩姐独立核对全绿 |
## P1 配套+底座第8环审核 / 第12环归档 / 工程底座)
| ID | 任务 | 模块核销表 | 细化 | 状态 |
|----|------|-----------|------|------|
| M3 | 第8环 审核(死链/打回回路) | plans/核销-第8环-审核.md | 🟢S1-S6/A1-A8 | □ |
| M4 | 第12环 归档(日期品类筛选/导出) | plans/核销-第12环-归档.md | 🟢S1-S8/A1-A12 | □ |
| M5 | 工程底座(5并发/magic/选标杆/置灰/lightbox) | plans/核销-工程底座.md | 🟢S1-S6/A1-A8 | □ |
## P2 引擎补全第2环标杆 / 第11环裂变
| ID | 任务 | 模块核销表 | 细化 | 状态 |
|----|------|-----------|------|------|
| M6 | 第2环 标杆8特征分析 | plans/核销-第2环-标杆.md | 🟢S1-S12(S12拆a/b)/A1-A12 | ◐ **引擎双路径端到端真验完成**(2026-06-16 c1ac2a6):①文本路径(手填亮点)8维齐全conf0.9 ②截图vision路径(真喂4.7MB素颜霜图)source=vision真读图,识别三段式卖点/√图标/大字报模板/办公背景,看不到的诚实标"截图未体现"。features_json落库done。端点健壮(404/422/读图失败降级/key缺失提示)。**剩非引擎本体待办:①北哥过目8维草案标✅满分 ②第5/6环消费features_json对标(接线,归M6下游或随M1/M2)**。8维=banana不变量+俊达配方+3链接 |
| M7 | 第11环 裂变(工作台内) | plans/核销-第11环-裂变.md | 🟢S1-S13(含S10.5)/AC1-12 | ◐ **引擎端到端真跑通**(2026-06-16 cefdbaa):①fission_service扇出1源→N子任务(回填source_fission_id,复用主管道run_generation_pipeline),MAX_FANOUT=5红线 ②fission_prompt三档(high/mid/low)规则 ③tasks.py worker识别裂变子任务→注入对应档位进文案上下文(自抓关键缺口,**worker曾跑旧内存代码未热重载,restart后实测注入日志level=high真出现**) ④POST/fission触发+GET/fission/{id}进度聚合,main.py注册路由 ⑤实测fission_id=2扇出task70/71,子任务带source_fission_id+档位注入生效,进度端点聚合正确(total=2/done=0/generating)。**剩待办:①三档真实措辞待北哥定义(现占位规则) ②前端裂变入口+进度呈现(归前端攒批) ③子任务真出3套差异化文案+配图的质量验收(需北哥过目)** |
## P3 前端打通+飞轮2026-06-16 九文档审核结论·按序逐条修)
> 来源:倩倩姐扒的对标文档+另一AI建议经3独立agent交叉验证。合5桶。门禁同上。
> 排期倩倩姐2026-06-16拍板"全都需要修,按顺序一个一个往下修"。
### 桶A 必须做(主链可用性,最先修)
| ID | 任务 | 根据 | 状态 |
|----|------|------|------|
| A1 | Sidebar 4个死链路由(/tasks /images /tasks/build /tasks/list 全不存在) | Sidebar.tsx确证 | ✅ 2026-06-16 删4死链+补回/review审核台(限supervisor+admin),tsc全量EXIT0,commit 77f52e7 |
| D1 | 改稿进飞轮(SignalType.text_edit + TextCandidate.edited + 改稿端点走task_actions) | 最强真实信号 | ◐ 后端✅2026-06-16端到端真跑(edited False→True+飞轮信号落库weight=5,实测抓出ENUM未同步bug已修,commit e3fb6f2)。**前端改稿框入口攒批做(倩倩姐2026-06-16:后端先串完前端攒批)** |
| C2 | 审核界面显分(读score_json总分,不读eval_score NULL列) | 审核可判断 | ✅ 2026-06-16 review.py复用_score_array_to_obj算总分+7维,ReviewCard接ScoreDimBars(passLine=80红线),端到端验task40返回total=83,新旧维度兼容,commit ea423e8 |
| B7 | 事件处理补齐(SSE/轮询状态流转) | 前端诊断 | ✅ 2026-06-16 核实已做无缺口:SSE签ticket换JWT(?ticket=合规红线)+useSse消费progress/done/error全链+轮询兜底,后端事件发布到位,标绿 |
| B6 | 错误态呈现(status=failed前端可见) | 前端诊断 | ✅ 2026-06-16 后端加TaskStatus.FAILED终态+异常区分重试中vs耗尽(耗尽落failed不retry)+014迁移ALTER status ENUM;前端fatalError state+useSse error不再静默丢+FatalErrorBanner提示+failed标签(列表/历史页可见,history纳入HISTORY_STATUSES),tsc EXIT0 |
### 桶B 飞轮专项(产品最大亮点·做扎实+前端呈现)
| ID | 任务 | 守的底线 | 状态 |
|----|------|---------|------|
| E12 | AI评图分进飞轮:仅"生成时筛选+前端展示X分已入飞轮" | 权重只认真实信号(选/改/审),eval_score留NULL铁律 | □ |
| FV | 飞轮可视化=轻量化关键节点反馈(让客户感到确实越用越好) | 不做独立飞轮主视图大页(砍E01) | □ |
### 桶C 接线(数据流薄,主链通后接)
| ID | 任务 | 状态 |
|----|------|------|
| B1 | 图片按strategy分组(generationStore现一维平铺) | □ |
| C1 | 任务看板 | □ |
| B2/B3/B4/B5 | 前端数据流补齐 | □ |
| C3/C4 | 展示层补薄 | □ |
### 桶D 踩刹车(砍/缓,防堆伪需求偏离纵切片)
| ID | 任务 | 裁决 |
|----|------|------|
| E04 | 竞品笔记数据监控 | ✅砍(自动抓小红书=合规反爬红线,倩倩姐2026-06-16拍板) |
| E02/E13/E05/E08/E01/E22 | 各类增强 | ⏸️二三期或砍,本轮不做 |
### 桶E 需补充(缺口补全)
| ID | 任务 | 状态 |
|----|------|------|
| 补1 | 上传主图校验(必含产品瓶身,防质地图/手臂图当主图) | □ |
| 补2 | status=failed 完整处理(后端+前端) | ✅ 同B6(2026-06-16),后端FAILED终态+前端可见,commit 1b48875/ffc213f |
| 补3 | git版本兜底 | ✅2026-06-16已建Clover独立仓库,基线6a2632d |
| D2 | 数据复盘(飞轮喂料可见) | □ |
| D3 | 爆款解析(并入M6标杆) | ⏸随M6 |
---
## P4 本轮执行清单倩倩姐2026-06-12实跑15问+截图欠账·去重合并·按序R1→R8做一块核销一块
> 来源倩倩姐亲自实跑前端提15问 + 上次实跑截图欠账(C3/C5/C7/B1/M3/M4/M5/E12/补1/D2)。
> 经4 agent并行审码定位 file:line + 2交叉核(is_active登录校验/api-keys路由前缀)。
> 顺序倩倩姐拍板P0(R1挑图体验/R2重生/R3生图质量) → P1(R4工作台/R5多图/R6账号) → P2(R7飞轮/R8归档)。
> 拍板3点①operator能看改**全部**产品档案 ②3套图是前端没分组非后端没出 ③截图欠账全接入不许丢。
### R1 挑图页体验P0
| 子项 | 去重映射 | 根因证据 | 状态 |
|------|---------|---------|------|
| 图按A/B/C分组展示 | =既有B1(九文档桶C) | ✅ImageStrategyGroup按strategy分3组,page.tsx:34-36+pipeline_io.py:263 | ✅ |
| 点图放大看全图lightbox | =C5,既有M5含 | ✅ImageLightbox object-contain完整不裁+ESC/遮罩关,page.tsx:78接线 | ✅ |
| 组内按seq固定6图序 | 问题12新 | ✅组内sort by seq升序,后端pipeline_io.py:272推seq+sse.ts声明 | ✅ |
| 修"交审"按钮点不动 | 问题7新bug | ✅useSse.ts:24进任务clearSelections清残留,选0张才灰 | ✅ |
| 修"批次重试"点不动 | 问题8新bug | ✅按钮可点+发请求+ROLE_LABEL中文名;单批重生归R2(一期整体重生已标注) | ✅ |
| 进度条补五维(不全0) | =B1实跑(≠九文档B1) | ✅占位0→异步GET补全,后端_score_array_to_obj返七维+dims,ScoreDimBars消费 | ✅ |
> R1 核销证据tsc EXIT=0(0错误) + 独立agent交叉重核5✅+1⚠一期妥协(单批重生归R2),无漏接线/无类型隐患。2026-06-12。
### R2 单张/单套重生+人工提示词P0
| 子项 | 去重映射 | 根因证据 | 状态 |
|------|---------|---------|------|
| 后端regenerate加strategy/role/custom_prompt | 问题6新 | ✅RegenerateRequest请求体+role必配strategy校验,透传enqueue→Celery→pipeline→image_gen全链路 | ✅ |
| 前端单张/单套重生+提示词输入框 | 问题6新 | ✅RegenControls弹窗(含custom_prompt框)+每张"重生此张"+每套"重生整套"+同strategy+role去重展示最新 | ✅ |
> R2 核销证据①后端真import+4签名校验通过 ②alembic 017(is_regen)升级到head ③Pydantic五模式校验全过(整体/单套/单张/非法strategy拦/超长拦) ④生图局部重生4逻辑测试过(单张只1张/custom_prompt注入/全量3张/匹配不到回退) ⑤前端tsc EXIT=0 ⑥独立agent交叉审8项:7✅+1硬伤(空文案降级生图)已修(无文案硬失败推error40002不静默降级) ⑦红线守住:重生新增不删旧/eval_score留NULL/合规约束不被custom_prompt覆盖(sanitize+追加末尾)。2026-06-12。
### R3 生图质量P0·C3硬伤提前
| 子项 | 去重映射 | 根因证据 | 状态 |
|------|---------|---------|------|
| C3中文乱码(canvas叠字) | =C3,记忆标硬伤 | 倩倩姐2026-06-12拍板"只留口子不实现":OVERLAY_TEXT_RENDER_ENABLED=False+image_gen.py TODO(C3-overlay)接入点;本轮验收图大标题"倍分子素颜霜"+瓶身字清晰未触发错别字 | ✅ |
| C7像小红书(prompt约束) | =C7截图🟡 | 新增IMAGE_XHS_STYLE_CONSTRAINTS(反电商/素人感)append到base_prompt;真实验收:参考图笔电背景→生成图换梳妆台镜子生活场景,带标题/卖点/#标签/emoji,明显去电商化 | ✅ |
| 补1上传主图必含瓶身校验 | =既有补1 | 后端2层硬拦截已就位(task_service.py:57建任务校验+pipeline_io.py:199worker兜底);前端ProductSubComponents.tsx加引导"必须含产品主体,质地图不能替代主图"(倩倩姐定调:质地图也算产品但主体必传) | ✅ |
| C1产品一致(走真图) | =既有C1 | 真实端到端:产品5真图(白罐金边盖)→生成图瓶身忠于参考图原样,印"倍分子焕颜沁透水润 素颜霜 SKIN CREAM"未改包装/未混入他品;apiports503自动回落codeproxy+gpt-5.5强档兜底 | ✅ |
> R3 核销证据(2026-06-17真实端到端)worker容器内 r3_verify.py 用产品5真图+真key+真模型生 product_closeup 特写图,83秒,1.9MB,AI分82。独立Explore agent交叉审4处改动无硬伤、R1/R2回归安全。
> 备忘(非R3,记R5收紧)ALLOW_TEXT_ONLY_IMAGE默认true第三层放水,与前端引导文案语义不一致;当前前两层防线已拦截"入镜却纯文生图",R5多图时一并收紧默认值。
> 待优化(非阻塞)①产品5未录brand_keyword(品牌词客户填,本次验证未带词) ②生成图出现"核心买点。"模板占位词漏到图上=文案字段没填实,记文案优化。
### R4 三功能工作台P1·形态级
| 子项 | 去重映射 | 根因证据 | 状态 |
|------|---------|---------|------|
| 文案/图片排版/裂变三独立入口+可连贯 | 问题3新形态 | Sidebar线性流水线,裂变前端零入口 | 🟢 倩倩姐2026-06-15拍板"三并列入口";Sidebar.tsx改三并列(文案创作/tasks/new·图片排版/history·裂变扩散/fission);裂变扩散=独立裂变页(倩倩姐拍板"新建独立裂变页",app/fission/page.tsx+FissionLauncher+FissionProgress);tsc零错 |
| 图片排版可脱离文案独立用 | 问题3新 | images页强依赖text页带入 | 🟢 图片排版入口落/history每行加"排图"链→/tasks/{id}/images(图片步骤需task id,从历史任一非failed任务直接进排图,不强依赖刚走完text);components.tsx已加 |
| supervisor含运营全部操作 | 问题9新 | AuthGuard:18把/tasks/new挡住supervisor | 🟢 AuthGuard:18已加supervisor;ProgressBar:25只排除admin;后端POST/tasks用require_write_permission不卡角色(前轮R4-a改) |
| 导入文案补粘贴/上传入口 | 问题11新 | tasks/new:48直跳过输入,/import-text没调 | 🟢 新建ImportTextModal(粘贴多条用"---"切分);new页"导入外部文案"→先校验→开弹窗→建import任务→逐条POST/api/v1/tasks/{id}/import-text→跳text页;半成品态保留task_id跳text可续;tsc零错;端点路径核对/api/v1/tasks/{id}/import-text真实存在 |
| 第8环审核回路(死链/打回) | =既有M3 | M3未开工 | 🟢 M3前后端已建成(前轮核实非未开工);_fmt_task补review_status/reject_reason/reviewed_at修死链;RejectReasonBanner组件text/images页呈现打回原因 |
### R5 产品多图P1
| 子项 | 去重映射 | 根因证据 | 状态 |
|------|---------|---------|------|
| 产品图多张(DB+上传端点+前端multiple) | 问题2/14新 | image_path单值字符串,无multiple,覆盖式 | □ |
| 生图按场景选用对应图 | 问题2新 | pipeline_io只读单条image_path | □ |
| operator选品/快速建品/产品入镜 | 问题1新 | POST/products限admin,operator不能建 | □ |
### R6 账号体系+Key+权限P1
| 子项 | 去重映射 | 根因证据 | 状态 |
|------|---------|---------|------|
| 后端users.py增/删/列用户(删=软删is_active) | 问题15新 | 无users CRUD,is_active登录已校验:37 | □ |
| 前端配置台账号管理Tab | 问题15新 | 无账号管理入口 | □ |
| Key绑定账号显式展示 | 问题15新 | UserApiKey已按user隔离,只缺前端展示 | □ |
| operator配置编辑权(放开全部产品) | 问题13a新 | /config硬限admin,products CRUD require_admin | □ |
| 保存按钮补错误提示(治点不动) | 问题13b新 | ProductForm校验静默return无提示 | □ |
### R7 飞轮闭环+可视化P2
| 子项 | 去重映射 | 根因证据 | 状态 |
|------|---------|---------|------|
| 飞轮片段注入生图链路(补断点1) | 新 | run_image_generation没传flywheel_fragment | □ |
| 选图信号带strategy进飞轮(补断点2) | 新 | image_select的angle_label=None空转 | □ |
| 统一前端查询与注入的计数口径 | 新 | service用次数/aggregator用权重不一致 | □ |
| AI评图分仅展示+生成筛选 | =既有E12 | 守eval_score NULL红线 | □ |
| 飞轮可视化轻量节点反馈 | =既有FV/D2 | 让客户感到越用越好 | □ |
### R8 归档P2
| 子项 | 去重映射 | 根因证据 | 状态 |
|------|---------|---------|------|
| 历史打回显示原因 | =问题10,既有M4沾边 | _fmt_task()没返reject_reason,前端没读 | □ |
| 日期/品类筛选+导出 | =既有M4 | M4未开工 | □ |
---
## 🔴 跨模块迁移版本号统一防三环撞008车
008=brand_keyword / 009=benchmark_analyze_fields(含features_json) / 010=fission_tasks表 / 011=task_benchmark_fission_fields / 012=product_target_audience / 013=text_candidate edited+signal_type ENUM补text_edit(D1已落) / **014=generation_tasks.status ENUM补failed(B6已落)**。下一个可用=015。
## 总验收(最高门禁)
| ID | 任务 | 状态 |
|----|------|------|
| Z1 | 一条龙真跑通(录屏为证) | □ |
| Z2 | 北哥抽检文案+图认可 | □ |
---
## 待北哥确认(不是干等·先提炼草案再请北哥过目)
1. 标杆8特征具体哪8维 → **我先从banana结构+俊达逻辑+3链接提炼8维草案,北哥只需过目确认/微调**
2. 裂变参考度档位(高/中/低)各多大改动、裂变维度可选哪些 → **先移植banana裂变流程打通,再请北哥定档位**
3. ~~90分过滤后不足数量~~**已定:合格线80(红线)+先展示后台补,已实现,此条作废**