docs: settings dialog for update config (gear entry, not a numbered tab)

A low-key "⚙ 配置" button at the right end of the flow-tab row (separated by
stretch, not a numbered step) opens a settings dialog to edit update_source /
update_user / update_pass, with a test-connection check. Dialog is pure UI;
main_window owns save_config. docs/07 §3/§4.1/§4.3/§4.4; tasks 17.20.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-18 11:03:36 +08:00
co-authored by Claude Opus 4.8
parent ac428fb5ec
commit 3327276c9a
2 changed files with 57 additions and 2 deletions
+28
View File
@@ -938,6 +938,34 @@
- [ ] 退休 `scripts/update.ps1` 与 `scripts/install_local.ps1`
- [ ] 端到端实测(解压到 D 盘运行、自更新、回滚)
### 17.20 设置对话框(更新配置入口)
前置阅读:
- `docs/07-ui-design.md`(4.3 设置入口、4.4 设置对话框)
- `docs/02-prd.md`(`update_source` / `update_user` / `update_pass`)
- `docs/05-project-architecture.md`(4.12 config 集中管理)
背景:
- 更新地址/账号/密码目前只能手改 `~/.cmbot/config/app_config.json`,加一个应用内设置入口,管理员配一次,launcher 与 app 内通知都跟着用。
任务:
- [x] 文档:`docs/07` §3 布局、§4.1 去掉「暂不提供设置入口」、新增 §4.3 入口 + §4.4 对话框
- [ ] 页签栏右端加低调 `⚙ 配置` 按钮(`addStretch` 与编号页签隔开,非编号页签)
- [ ] `src/app/widgets/settings_dialog.py`(`QDialog`,纯 UI):更新地址 / 账号 / 密码(掩码+显示) / 测试连接 / 当前版本 + 安全提示
- [ ] `测试连接`:调用 `update_service.check_for_update`,反馈最新/发现新版/连接失败
- [ ] `main_window`:打开时注入当前 config,保存时集中 `save_config`,UI 不直接写配置
- [ ] 保存后重新触发一次在线更新检查(横幅刷新)
- [ ] 取消不改动配置
验收:
- [ ] 可在界面上改更新地址/账号/密码并持久化到 `~/.cmbot/config/app_config.json`
- [ ] 测试连接能正确反馈三种结果
- [ ] 改完无需重启 launcher 也能让 app 内横幅按新配置刷新
## 18. 后续暂缓任务
以下任务第一阶段暂不做,后续需要时再新增设计文档: