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

58 lines
3.2 KiB
Markdown
Raw 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.
---
id: T-665
title: 生成范围按钮文案简化
status: DONE
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 请求、计费或③更新蝦皮逻辑。
## 执行记录
- ②范围选择框默认按钮改为“生成架上商品”,扩展按钮改为“生成全部商品”;保留原有 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`。