Files
beige/交付核销表.md
yangqianqian df1856d793 上线版: 产品表单统一+form嵌套修复+用户管理+部署+三套叙事
- 产品编辑入口统一走 ProductFormFull(卖点/风格/人群/品牌词全字段);
  修复开任务页 <form> 套 <form> 致"编辑产品"报错、改不了、跳回首个产品
- dashboard 入口卡片对齐实际路由: 系统管理(/config) 与 工作配置(/settings) 分开;
  settings ?tab=products 直达改用挂载后读 URL, 消除 hydration mismatch
- 新增用户管理(users API/admin service/改密页) + alembic 022/023/024
- 上线部署: Dockerfile / docker-compose.prod+https / nginx https / .env.example
- A8 三套正交叙事(痛点/场景/成分背书) + beige 调色去AI化 + 飞轮 text_import 高权重信号

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

53 lines
5.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
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 客户交付核销表2026-06-26
> 数据源2轮终审 + 执行级扫描workflow `wf_b9630bdd-46c`,全文 spec 见 scratchpad/tasks/w98crly0v.output
> 规则:每项 改哪→怎么改→验收能物理勾。修完一项→独立 agent 交叉验证→勾。任务只减不增。
> 状态图例:⬜待修 / 🔧修中 / 🔍待交叉验 / ✅已验勾 / ⏸待发布冻结
## 🔴 需倩倩姐拍板(攒批,定了我就连推)
- **A 部署环境**:北哥服务器有域名+HTTPS证书吗还是先 HTTP 裸跑试用(我把 HTTPS 配好待证书)?→ 决定 项1 形态 + 项uvicorn workers + 客户文档
- **B 执行范围**4个P0+14个P1+8个P2 全部一次过,还是先修 P0 硬阻断给北哥试用、P1/P2 下一轮?
- **C Git交付基线**feature 分支打 tag 交付(不动 main/ 合 main 再打 tagplans/截图等内部文件入库还是清理?
我对其余小决策取的默认你只验最终结果不同意再改FERNET 宿主`.env`托管 ·备份7天宿主cron不传OSS ·pip-audit 只阻断critical/high ·uvicorn workers 走env默认2 ·临时test脚本直接删 ·裂变兜底用 status 新枚举值区分 ·`ref_product.png`保留其余untrack ·首登改密用40102拦截+前端跳改密页。
---
## 批次A · P0 硬阻断4项不修不能交付
| 状态 | 编号 | 问题 | 改哪 | 验收(物理勾) |
|---|---|---|---|---|
| ✅ | 项1 | prod **完全无nginx**api:8000/前端:3000裸暴露无HTTPS | 已加 nginx 入口;默认 HTTPHTTPS 走 docker-compose.https.yml + nginx.https.conf | prod/https compose config 均通过默认不再假开443 |
| ✅ | P1-3-A | 生图写盘用相对 UPLOAD_BASE_PATHworker cwd=/ 写到 /uploads 丢图 | backend/app/workers/tasks.py 改用 UPLOAD_ABS_ROOT | compileall/pytest 通过 |
| ✅ | P0-6 | User 无 must_change_password三账号共用同密码 | user.py 加字段 + alembic 022 + seed_data 三账号拆密码 + 前端改密页 | pytest/build 通过;契约已入 openapi |
| ✅ | P0-5 | test_color_compare/test_3sets_e2e 在backend根、无__main__守卫、import即副作用 | 两文件加 __main__ 守卫 | ast/compileall 通过 |
## 批次B · P1 上线稳态14项
| 状态 | 编号 | 问题 | 改哪 | 验收(物理勾) |
|---|---|---|---|---|
| ✅ | 项2 | 前端Dockerfile无ARG注NEXT_PUBLIC_*prod compose误当运行时env传 | frontend/Dockerfile builder加ARG/ENV + prod compose 改 build.args | npm build + compose config 通过 |
| ✅ | 项7 | SSE nginx 缺 X-Accel-Buffering:no | nginx HTTP/HTTPS 配置均关闭 SSE 缓冲 | compose config 通过 |
| ✅ | 项16 | CORS .env.example 无填写说明易留localhost | env examples 加真实域名/禁*说明 | 已复核 |
| ✅ | P1-3-B | 打包 packages_base 相对+endswith错→双重/packages | packaging_task.py 改用 UPLOAD_ABS_ROOT | compileall/pytest 通过 |
| ✅ | P1-3-C | 读图未判 isabs历史绝对路径会双前缀 | packaging_task.py 加绝对路径/旧 URL 兼容 | compileall/pytest 通过 |
| ✅ | P1-3-D | dev compose .:/app 覆盖隐患prod已正确 | 客户交付改走根 docker-compose.prod.yml文档明确 dev compose 仅本地开发 | prod compose 无源码挂载、无DB裸端口 |
| ✅ | P1-2 | 前端 ReviewCard 仍降级读 selected_text无顶级旧字段任务显示空 | ReviewCard/dto 改读 selected_sets 并保留旧数据兼容 | npm build 通过 |
| ✅ | P1-7a | openapi TaskListItem 缺6字段 | openapi.yaml 补字段 | YAML parse 通过 |
| ✅ | P1-7b | openapi TextCandidateItem 缺~9字段 | openapi.yaml 补字段 | YAML parse 通过 |
| ✅ | 项11 | mysql+mongo 无备份脚本 | 新建 backend/scripts/backup.sh 并 chmod +x | sh -n 通过 |
| ✅ | 项12 | FERNET_KEY 无托管/丢失恢复说明 | README + docs/ops/fernet | 已复核 |
| ✅ | 项20 | 无面向客户操作手册 | 新建 docs/user/使用说明.md | 已复核 |
| ✅ | 项21 | 无运维手册 | 新建 docs/ops/runbook.md | 已补 HTTP/HTTPS/NEXT_PUBLIC 说明 |
| ⏸ | P1-1 | feature分支+91改动+0tag无交付基线 | 待发布冻结后 commit/tag delivery-... | 当前未提交改动很多,直接 tag 不包含修复 |
## 批次C · P2 打磨8项
| 状态 | 编号 | 问题 | 改哪 | 验收(物理勾) |
|---|---|---|---|---|
| ✅ | P2-3 | 裂变LLM失败静默降级兜底草稿仍报 completed | fission_pipeline.py 加 completed_with_fallback/is_fallback/fallback_reason前端同步提示 | compileall/build 通过 |
| ✅ | 项13 | 无 docs/ 排障文档 | 新建 docs/ops/troubleshooting.md | 已修正 /health 路径 |
| ✅ | P2-4 | 无 .github/workflows CI/pip-audit | 新建 .github/workflows/ci.yml | npm audit 本地 0 漏洞CI 文件已入库 |
| ✅ | 项mongo | prod mongo 无 healthcheckdepends service_started | docker-compose.prod.yml mongo块+depends改service_healthy | compose config 通过 |
| ✅ | 项uvicorn | prod uvicorn 单进程无--workers | docker-compose.prod.yml 加 --workers(env可配) | compose config 通过 |
| ✅ | P2-2 | git跟踪6个PNG产物 | 保留唯一测试参考图 test/ref_product.png其余未被 git 跟踪 | git ls-files 仅剩 ref_product.png |
| ✅ | 项10 | 图片批次失败提示只有数字无原因 | images/page.tsx 渲染 reason + retry | npm build 通过 |
| ✅ | P2-1 | README 与现状错位(端口/nginx/provider) | README/backend README/frontend README 校正 | 已复核 |