From 913769993580d25a74b0df5fca6b0e0b34e5aca0 Mon Sep 17 00:00:00 2001 From: QiuSW <105186638@qq.com> Date: Thu, 9 Jul 2026 01:25:57 +0800 Subject: [PATCH] docs: record template smoke checklist --- README.md | 1 + docs/06-tasks.md | 2 +- docs/current-state.md | 12 +++++++++++- docs/smoke-checklist.md | 37 +++++++++++++++++++++++++++++++++++++ progress.md | 19 +++++++++++++++++++ 5 files changed, 69 insertions(+), 2 deletions(-) create mode 100644 docs/smoke-checklist.md diff --git a/README.md b/README.md index 9201690..bbcc026 100644 --- a/README.md +++ b/README.md @@ -109,6 +109,7 @@ wails3 generate bindings -clean=true - [`docs/current-state.md`](docs/current-state.md):当前真实状态和命令。 - [`docs/06-tasks.md`](docs/06-tasks.md):任务看板。 - [`docs/windows-packaging.md`](docs/windows-packaging.md):Windows 打包验证流程。 +- [`docs/smoke-checklist.md`](docs/smoke-checklist.md):模板 smoke 验证清单。 - [`progress.md`](progress.md):执行流水和验证证据。 统一验证入口: diff --git a/docs/06-tasks.md b/docs/06-tasks.md index 071a08c..f78c9c3 100644 --- a/docs/06-tasks.md +++ b/docs/06-tasks.md @@ -49,7 +49,7 @@ | T-030 | 建立常用组件示例页 | T-012 | 输入框、多选框、下拉框、多行文本、表格、筛选、分页、状态标签有可运行示例 | DONE | | T-031 | 文档化 Wails bindings 生成流程 | T-012 | README 或技术栈文档说明 `wails3 generate bindings` 的使用、失败处理和版本要求 | DONE | | T-032 | 补充 Windows 打包验证文档 | T-031 | `wails3 package` 前置条件、输出目录和常见失败处理写入 README 或 docs | DONE | -| T-033 | 完成一次模板 smoke 清单 | T-023 | 登录、设置、业务样例、日志、统计、组件示例、托盘、热键都按清单验证并记录结果 | TODO | +| T-033 | 完成一次模板 smoke 清单 | T-023 | 登录、设置、业务样例、日志、统计、组件示例、托盘、热键都按清单验证并记录结果 | DONE | | T-034 | 添加 Windows Wails 快捷脚本 | T-001 | `dev.bat` 一行切到项目根目录、补 Go bin PATH、自动选择空闲端口并运行 `wails3 dev`;`build.bat` 一行切到项目根目录、补 Go bin PATH 并运行 `wails3 build`;README、技术栈、当前状态和执行流水已同步 | DONE | ## Backlog diff --git a/docs/current-state.md b/docs/current-state.md index 0e3e900..8a0b3b9 100644 --- a/docs/current-state.md +++ b/docs/current-state.md @@ -25,6 +25,7 @@ - 当前 Wails 前端 bindings:由 `wails3 build` / `wails3 generate bindings` 生成的 `.js` 文件。 - 已文档化 Wails bindings 生成流程:README 和技术栈文档包含固定版本、生成命令、失败处理和提交要求。 - 已文档化 Windows 打包验证流程:`docs/windows-packaging.md` 包含 `wails3 package` 前置条件、NSIS 输出目录、验证清单和常见失败处理。 +- 已完成模板 smoke 清单:`docs/smoke-checklist.md` 记录登录、设置、业务样例、日志、统计、组件示例、托盘和热键验证结果。 - 本地数据库:SQLite,用户配置目录下 `cmbone/cmbone.db` - 当前本地演示账号:`admin` / `admin123`,密码由后端初始化为 salt + SHA-256 hash,不写死在前端。 - 当前主窗口路由:`/#/` 重定向到 `/#/dashboard`。 @@ -88,6 +89,7 @@ wails3 build - bindings 生成依赖本机安装的 `wails3`。 - Windows 默认打包路径依赖 NSIS `makensis`;当前本机 PATH 未检测到 `makensis`。 - 当前项目未配置 `wails.json`,MSIX 暂不作为可用打包路径。 +- 托盘菜单点击行为仍建议在真实桌面环境人工复核,本轮已确认初始化代码路径和应用启动 smoke。 - `npm install` 当前报告 3 个 moderate audit findings,后续如做依赖治理应单独开任务。 - 前端构建当前有 Browserslist 数据过期和 chunk 大小警告,不阻塞生产构建。 - Windows 快捷脚本依赖 `go env GOPATH` 下的 `bin\wails3.exe`,如果未安装 Wails CLI,先按 README 安装固定版本。 @@ -229,9 +231,17 @@ wails3 build - 文档记录 `wails3 package` 前置条件、默认 NSIS 路径、输出目录、安装包验证清单和常见失败处理。 - 已确认本机 `wails3 package -help` 可用,但 PATH 中未检测到 `makensis`,因此未强跑 NSIS 打包。 +同日完成模板 smoke 清单: + +- 新增 `docs/smoke-checklist.md`。 +- `go test ./...`、`npm run build`、`go build -o bin\cmbone.exe .` 和 `cmd /c build.bat` 通过。 +- 启动 `bin\cmbone.exe` 后进程未退出,主窗口标题为 `main`。 +- 自动发送默认 `Alt+P` 后可见窗口包含 `second, main`,热键打开第二窗口通过。 +- 登录、设置、业务样例、日志、统计、组件示例、托盘、热键均已按清单记录验证方式和结果。 + ## 下一步 -从 [`06-tasks.md`](06-tasks.md) 领取第一个 `TODO` 任务。目前建议先做 `T-033`:完成一次模板 smoke 清单。 +当前任务看板中剩余任务均已完成。下一步建议先人工复核托盘菜单点击和 NSIS 打包环境,再决定是否新增真实 AI provider、统计页面展示或日志页面列表任务。 ## 当前 blocker diff --git a/docs/smoke-checklist.md b/docs/smoke-checklist.md new file mode 100644 index 0000000..04a9a6a --- /dev/null +++ b/docs/smoke-checklist.md @@ -0,0 +1,37 @@ +# 模板 Smoke 清单 + +验证日期:2026-07-09 +验证环境:Windows,本机项目根目录 `D:\chengma\cmbone` +目标:确认可复用桌面应用模板的基础模块在当前构建下可用,记录自动验证边界。 + +## 命令验证 + +| 项目 | 命令 / 方式 | 结果 | 备注 | +| --- | --- | --- | --- | +| Go 测试 | `go test ./...` | PASS | 覆盖登录、设置、窗口状态、图片任务、日志、统计等后端服务 | +| 前端构建 | `cd frontend && npm run build` | PASS | 仍有 Browserslist 过期和 chunk 大小警告 | +| 后端编译 | `go build -o bin\cmbone.exe .` | PASS | 生成 `bin/cmbone.exe` | +| Wails 构建 | `cmd /c build.bat` | PASS | 仍提示 `wails3 build` 是 `wails3 task` 的 alias | +| 启动 smoke | 启动 `bin\cmbone.exe`,等待 6 秒,读取窗口句柄 | PASS | 进程未退出,主窗口标题为 `main` | +| 热键 smoke | 启动应用后发送默认 `Alt+P`,枚举可见窗口标题 | PASS | 发送前:`main`;发送后:`second, main` | + +## 模块清单 + +| 模块 | 验证方式 | 结果 | 说明 | +| --- | --- | --- | --- | +| 登录 | 后端测试 + 前端构建 | PASS | `AuthService` 本地账号、会话、失败审计和 remote provider 边界有测试覆盖;登录页构建通过 | +| 设置 | 后端测试 + 前端构建 | PASS | 统一设置 schema、只读/类型校验、设置页 schema 展示构建通过 | +| 主业务样例 | 后端测试 + 前端构建 | PASS | 图片任务创建、列表、详情、失败路径有测试或页面构建覆盖 | +| 操作日志 | 后端测试 + 前端构建 | PASS | 审计日志、运行日志服务和写入路径有测试覆盖;日志页入口构建通过 | +| 数据统计 | 后端测试 + 前端构建 | PASS | Dashboard 指标和趋势聚合有测试覆盖;统计页入口构建通过 | +| 组件示例 | 前端构建 | PASS | 输入框、多选框、下拉框、多行文本、表格、筛选、分页、状态标签示例构建通过 | +| 托盘 | 代码路径检查 + 启动 smoke | PASS | `AppService` 启动时初始化系统托盘和菜单;托盘菜单点击仍建议人工桌面复核 | +| 热键 | 自动化桌面 smoke | PASS | 默认 `Alt+P` 可打开第二窗口 | + +## 非阻塞项 + +- 前端构建仍提示 Browserslist 数据过期。 +- 前端构建仍提示部分 chunk 大于 500 kB。 +- `build.bat` 仍提示 `wails3 build` 是 `wails3 task` 的 alias。 +- 本机缺少 NSIS `makensis`,未执行 `wails3 package` 生成安装包;打包前置条件已记录在 [`windows-packaging.md`](windows-packaging.md)。 +- 托盘菜单的点击行为需要桌面人工复核;本轮已确认初始化代码路径和应用启动 smoke。 diff --git a/progress.md b/progress.md index e0d7c38..7a6bd29 100644 --- a/progress.md +++ b/progress.md @@ -369,3 +369,22 @@ - 非阻塞警告: - 文档任务未改运行代码。 - 本机缺少 NSIS `makensis`,未强跑 `wails3 package`。 + +### 完成模板 smoke 清单 + +- 任务:完成 `T-033`,登录、设置、业务样例、日志、统计、组件示例、托盘、热键都按清单验证并记录结果。 +- 结果: + - 新增 `docs/smoke-checklist.md`。 + - 清单记录登录、设置、业务样例、日志、统计、组件示例、托盘、热键的验证方式和结果。 + - 托盘记录为代码路径检查 + 启动 smoke 通过,菜单点击建议桌面人工复核。 +- 验证: + - `go test ./...` 通过。 + - `cd frontend && npm run build` 通过。 + - `go build -o bin\cmbone.exe .` 通过。 + - `cmd /c build.bat` 通过。 + - 启动 `bin\cmbone.exe` 后读取到主窗口标题 `main`,进程未提前退出。 + - 自动发送默认 `Alt+P` 后,可见窗口从 `main` 变为 `second, main`。 +- 非阻塞警告: + - 前端构建仍提示 Browserslist 数据过期和 chunk 大小警告。 + - `cmd /c build.bat` 仍提示 `wails3 build` 是 `wails3 task` 的 alias。 + - 本机缺少 NSIS `makensis`,未执行安装包打包 smoke。