Files
cmbone/docs/current-state.md
T

124 lines
5.1 KiB
Markdown
Raw Normal View History

2026-07-08 15:27:21 +08:00
# 当前状态
更新时间:2026-07-08
## 当前阶段
项目处于可复用桌面应用模板的产品定位校准阶段。目标已经从迁移后的基础工程调整为“Windows-first、可扩展到其他平台的桌面端应用模板”。
当前代码仍是迁移后的 Wails/Vue/SQLite 基线,已具备设置、多语言、主题、本地配置、热键、托盘和 OCR 示例。登录、商品图片 AI 优化、审计日志、运行日志和数据统计仍是目标模块,尚未落地实现。
2026-07-08 15:27:21 +08:00
## 已确认事实
- 项目类型:可复用桌面应用模板。
- 主要运行场景:Windows 10 以及以后的 Windows 操作系统。
- 跨平台策略:Windows-first,保留 macOS / Linux 适配边界,不在 MVP 承诺完整体验。
- 第一批业务样例:电商商品图片 AI 优化。
- 登录策略:本地固定账号 provider + 真实后端 provider 的可替换边界。
- 日志策略:审计日志用于用户动作追踪,运行日志用于系统排错。
- 第一批统计指标:今日处理图片数、AI 优化成功率、平均处理耗时、失败任务数、今日操作日志数、最近 7 天处理趋势。
2026-07-08 15:27:21 +08:00
- Go 模块名:`cmbone`
- Go 版本:`1.23.0`
- Wails 版本:`v3.0.0-alpha.9`
- 前端 runtime:`@wailsio/runtime 3.0.0-alpha.66`
- 前端框架:Vue 3、Vite、TypeScript、Tailwind CSS、Ant Design Vue
2026-07-08 16:18:53 +08:00
- 当前 Wails 前端 bindings:由 `wails3 build` / `wails3 generate bindings` 生成的 `.js` 文件。
2026-07-08 15:27:21 +08:00
- 本地数据库:SQLite,用户配置目录下 `cmbone/cmbone.db`
2026-07-08 16:01:16 +08:00
- 当前主窗口路由:`/#/`,已保留为主应用入口,不再自动跳转到第二窗口。
- 当前第二窗口路由:`/#/second`
2026-07-08 16:01:16 +08:00
- 已实现主窗口策略:默认不最大化,初始 `1280x800`,最小 `1024x720`,居中,可调整大小。
- 已实现页面布局策略:根容器 `width: 100%`、`height: 100vh`,内部 flex/grid 填满窗口。
- 已实现内容区策略:阅读型内容保留最大宽度;列表、仪表盘、设置页自适应拉伸。
- 已保留第二窗口策略:保持小窗,不参与主窗口最大化和尺寸恢复逻辑。
2026-07-08 15:27:21 +08:00
## 当前命令
统一验证:
```powershell
.\init.ps1
```
拆分验证:
```powershell
go test ./...
cd frontend
npm run build
2026-07-08 22:17:42 +08:00
npm run typecheck
2026-07-08 15:27:21 +08:00
cd ..
go build -o bin\cmbone.exe .
```
Wails CLI:
```powershell
go install github.com/wailsapp/wails/v3/cmd/wails3@v3.0.0-alpha.9
wails3 dev
2026-07-08 16:18:53 +08:00
wails3 build
.\dev.bat
.\build.bat
2026-07-08 15:27:21 +08:00
```
## 已知风险
- 模板范围容易膨胀,必须按任务小步实现。
2026-07-08 15:27:21 +08:00
- Wails v3 alpha 版本需要保持 CLI、Go 模块和前端 runtime 匹配。
- 登录 provider、AI provider、日志和统计模块尚未实现,当前只是文档目标。
2026-07-08 15:27:21 +08:00
- OCR 和热键依赖平台实现,跨平台修改需要分别验证。
- 当前前端以构建检查为主,暂未引入专门的前端单元测试。
- bindings 生成依赖本机安装的 `wails3`。
- `npm install` 当前报告 3 个 moderate audit findings,后续如做依赖治理应单独开任务。
- 前端构建当前有 Browserslist 数据过期和 chunk 大小警告,不阻塞生产构建。
2026-07-08 16:18:53 +08:00
- Windows 快捷脚本依赖 `go env GOPATH` 下的 `bin\wails3.exe`,如果未安装 Wails CLI,先按 README 安装固定版本。
2026-07-08 22:17:42 +08:00
- `dev.bat` 为了尽快打开 GUI,使用不含 `vue-tsc` 的 `build:dev`;提交前必须继续运行 `npm run build`。
2026-07-08 15:27:21 +08:00
## 最近验证
2026-07-08 已运行:
```powershell
.\init.ps1
```
结果:
- `npm install` 通过。
- `go test ./...` 通过。
- `npm run build` 通过。
- `go build -o bin\cmbone.exe .` 通过。
同日完成可复用桌面应用模板定位校准后,已再次运行旧定位残留检查、`git diff --check` 和 `.\init.ps1`,结果均通过。
2026-07-08 16:01:16 +08:00
同日完成主窗口启动参数与根布局策略实现后,已运行:
- `.\init.ps1` 通过。
- `go test ./...` 通过。
- `cd frontend && npm run build` 通过。
- `go build -o bin\cmbone.exe .` 通过。
- `bin\cmbone.exe` 启动 6 秒 smoke 通过。
2026-07-08 16:18:53 +08:00
同日新增 Windows Wails 快捷脚本:
2026-07-08 16:33:18 +08:00
- `dev.bat` 一行切到项目根目录,把 Go bin 加入当前进程 PATH,并从 `9245` 开始选择空闲端口运行 `wails3 dev`。
- `build.bat` 一行切到项目根目录,把 Go bin 加入当前进程 PATH 并运行 `wails3 build`。
2026-07-08 16:18:53 +08:00
- 已补齐 `build/windows/wails.exe.manifest` 和 `build/windows/info.json`,使 `wails3 build` 的 Windows syso 生成步骤可运行。
- `cmd /c build.bat` 通过。
2026-07-08 16:33:18 +08:00
- `dev.bat` 已验证能避开端口占用问题,进入 `windows:run` 并加载 WebView 资源。
2026-07-08 16:18:53 +08:00
- 使用同样 PATH 逻辑执行 `wails3 dev -help` 通过。
- `.\init.ps1` 通过。
2026-07-08 22:17:42 +08:00
同日修复 `dev.bat` 启动 GUI 等待过长问题:
- `frontend` 的 `build:dev` 改为快速 Vite dev 构建,避免 `vue-tsc` 在开发启动链路中长时间阻塞窗口打开。
- 新增 `npm run typecheck`,正式质量门禁仍由 `npm run build` 覆盖类型检查和生产构建。
- 已验证 `dev.bat` 能进入 `windows:run`,拉起 `bin/cmbone.exe`,并创建可见主窗口。
2026-07-08 15:27:21 +08:00
## 下一步
2026-07-08 16:01:16 +08:00
从 [`06-tasks.md`](06-tasks.md) 领取第一个 `TODO` 任务。目前建议先做 `T-012`:搭建主应用路由骨架。
2026-07-08 15:27:21 +08:00
## 当前 blocker
无。