docs: define outfit factory config seeding

This commit is contained in:
2026-06-23 17:45:52 +08:00
parent a9360f9421
commit cad8b61bcf
4 changed files with 50 additions and 5 deletions
+27 -1
View File
@@ -1494,4 +1494,30 @@
- [x] `excel_service.py`:`read_all_rows(excel_path, require_title=True)` 加开关——`require_title=False` 时只在 `_is_empty(garment_path)` 跳过(允许 A 空);默认 `True` 行为不变。更新 docstring
- [x] `ai_outfit_panel.py`:`_TitleWorker.run` 改调 `read_all_rows(self._excel_path, require_title=False)`;`_reload_after_titles` 仍可用默认(重载后 A 已填);图片生成/预览/`_show_no_pending_message` 不动(仍要求 A)
- [x] `tests/test_excel_service.py`:补用例——A 空、C 非空的行:`require_title=False` 收录、默认(True)跳过;既有用例保持绿
- [x] 验证:相关单测 + 全套 py37 通过;离屏冒烟:A 全空、C=印花目录的表,标题生成能加载 N 行(不再「无可处理行」),mock 文本模型 → 按序回填 A
- [x] 验证:相关单测 + 全套 py37 通过;离屏冒烟:A 全空、C=印花目录的表,标题生成能加载 N 行(不再「无可处理行」),mock 文本模型 → 按序回填 A
### 19.28 AI 穿搭出厂模型/提示词运行时补全 — docs/11 §6.1 / §7 / §17.3,docs/10 §5
前置阅读:
- `docs/11-ai-outfit.md`(§6.1、§7、§11、§17.3)
- `docs/10-lan-update.md`(§4、§5)
- `docs/09-packaging-release.md`(§7)
- `src/services/config_service.py`(`load_ai_models` / `load_outfit_prompt` / `load_title_prompt`)
- `src/launcher.py`(`CONFIG_FILES` / `seed_defaults`)
- `packaging/default_config/`
背景:
现有运行时兜底只处理 `ai_models.json` 缺失;老用户已有 `ai_models.json` 时不会补新增标题模型。`title_prompt.txt` / `outfit_prompt.txt` 也可能只走代码内置默认,打包默认文件未被启动器/运行时补种。升级后会出现标题模型缺失、默认提示词文件缺失的问题。
任务:
- [x] 文档更新:`docs/11-ai-outfit.md`、`docs/10-lan-update.md`、`docs/09-packaging-release.md` 已明确出厂 title model 追加和两个 prompt txt 的非覆盖式补种
- [ ] `packaging/default_config/ai_models.json` 加入 title model 模板(`api_key` 留空,不提交真实 key),并保持图片模型顺序符合 `tests/test_config_service.py` 预期
- [ ] `packaging/default_config/outfit_prompt.txt` / `title_prompt.txt` 纳入发布包默认配置
- [ ] `src/launcher.py` `CONFIG_FILES` 加入 `outfit_prompt.txt` / `title_prompt.txt`,首次运行播种
- [ ] `config_service`:`load_outfit_prompt` / `load_title_prompt` 读取前调用运行时兜底复制;用户文件存在不覆盖
- [ ] `config_service`:`load_ai_models` 在用户文件存在但缺 `app_config.title_model` 时,从 factory `ai_models.json` 追加同名模型;不覆盖同名模型、不改 `api_key`;factory 无同名只记录日志
- [ ] 测试:缺 prompt 文件时从 factory 复制;已有 prompt 不覆盖;已有 `ai_models.json` 缺标题模型时追加;已有同名标题模型不重复;factory 无同名不报错
- [ ] 验证:相关单测、全套测试、离屏启动 AI 穿搭页