Files
cmshoppe/docs/tasks/T-665.md
T

58 lines
3.2 KiB
Markdown
Raw Normal View History

2026-07-18 17:36:42 +08:00
---
id: T-665
title: 生成范围按钮文案简化
2026-07-18 17:39:10 +08:00
status: DONE
2026-07-18 17:36:42 +08:00
phase: 7
deps: [T-663]
created: 2026-07-18
---
# T-665 生成范围按钮文案简化
## 问题 / 背景
②AI生成的范围确认框已使用 T-663 的稳定纵向布局,但按钮“只生成状态正常的商品”和“生成所有状态的商品”偏长。为与①采集的“架上商品 / 全部商品”范围表达保持一致,运营需要更短、更易扫读的文案,同时必须保留对 AI 点数成本和商品状态范围的明确提示。
## 方案
- 仅修改②AI生成范围框的两个用户可见按钮文案:
- `只生成状态正常的商品` 改为 `生成架上商品`;
- `生成所有状态的商品` 改为 `生成全部商品`。
- 在说明文字中补足语义:`生成架上商品` 仅将检测结果为正常的商品交给 AI;`生成全部商品` 会把未上架、审核中和状态未知商品也交给 AI,可能额外消耗点数。
- 保留既有按钮 objectName、默认主操作蓝色、全部范围警示橙色、禁用条件、纵向布局、回车/Esc 行为和稳定返回值 `normal_only/all/None`。
- ①采集范围文案不改;不改变 `build_generation_plan()`、任务指纹、`GenerateWorker`、cmhub 调用、计费、日志或③更新蝦皮逻辑。
## 验收标准
- [ ] ②弹窗完整显示“生成架上商品”“生成全部商品”“取消”,按钮文案与说明文字一致。
- [ ] 选择“生成架上商品”仍返回 `normal_only`;选择“生成全部商品”仍返回 `all`;无异常候选时“生成全部商品”仍禁用。
- [ ] “生成全部商品”保持警示橙色,说明明确会处理未上架、审核中、状态未知并可能额外消耗点数。
- [ ] ①采集、生成范围计划、Worker 输入、计费、日志、并发和③更新蝦皮不回归。
## 测试与文档
- 更新 `tests/test_gui.py` 的②范围对话框按钮文案、说明文字、默认项、禁用和两种返回值断言。
- 更新 `docs/routes.md`、`docs/04-architecture.md`、`docs/api.md` 中②生成范围的用户可见文案与语义说明。
## 验证
```bash
py -3.10 -m unittest tests.test_gui
py -3.10 -m unittest discover -s tests
py -3.10 -m ruff check app tests main.py
py -3.10 -m compileall app main.py
git diff --check
```
## 非目标
- 不恢复 `QMessageBox`,不改①采集范围文案。
- 不改变商品状态判定、生成范围策略、数据库、cmhub 请求、计费或③更新蝦皮逻辑。
## 执行记录
2026-07-18 17:39:10 +08:00
- ②范围选择框默认按钮改为“生成架上商品”,扩展按钮改为“生成全部商品”;保留原有 objectName、颜色、禁用条件、布局、键盘行为与 `normal_only/all/None` 返回值。
- 说明文字明确“架上商品”只将检测结果为正常的商品交给 AI,“全部商品”还会处理未上架、审核中和状态未知商品并可能额外消耗点数;①采集范围文案未改。
- 同步更新 `docs/routes.md`、`docs/04-architecture.md`、`docs/api.md` 和 GUI 断言。
- 验证通过:`py -3.10 -m unittest tests.test_gui`(202 项)、`py -3.10 -m unittest discover -s tests`(617 项)、`py -3.10 -m ruff check app tests main.py`、`py -3.10 -m compileall app main.py`、`git diff --check`。