feat(backend): establish gin sqlite service skeleton

This commit is contained in:
QiuSW
2026-07-25 22:29:56 +08:00
parent 84f2da3cf7
commit ab21219a07
32 changed files with 1854 additions and 42 deletions
+22 -7
View File
@@ -5,16 +5,19 @@
## 当前快照
- 日期:2026-07-25
- 阶段:Phase 1 已完成,准备开始 T-201 后端骨架
- Git:当前分支为 `main`;T-001 至 T-004、T-101 至 T-104 均已纳入 Git 历史
- 阶段:T-201 已完成,准备开始 T-202 P0 低保真原型
- Git:当前分支为 `main`;T-001 至 T-004、T-101 至 T-104、T-201 均已纳入 Git 历史
- 生产代码:`android-buyer/` 已接入 Roubao Android 源码
- Android:固定 `main@c8a6d7f03422eb01744b01f3ee77bf7757741f7e`;MIT 许可证已保留
- 后端:已决定使用 Go 1.23.0 + Gin 1.11.0;Go Blueprint v0.10.11 骨架尚未接入
- 后端:Go 1.23.0 + Gin 1.11.0 + SQLite + Goose 3.26.0 骨架已建立;Go Blueprint
v0.10.11 只作为一次性输入,危险默认与演示逻辑已移除
- 本机 Android 工具:JDK 17.0.13、Command-line Tools 22.0、SDK 34、
Build Tools 34.0.0、Platform Tools/ADB 37.0.0;用户级 SDK 环境变量已设置
- Android Studio:未安装;`winget` 静默安装卡住后已终止,不阻塞命令行构建
- 测试:`lintDebug test assembleDebug` 成功;App 两个变体、task contract 和导入器
共 26 份报告、166 次测试,0 failure、0 error、0 skipped
- 后端测试:`GOTOOLCHAIN=local go test -count=1 ./...` 共 25 个测试通过;
`go vet ./...`、API/migration Windows 构建和根 `init.ps1` 均通过
- Workflow:纯 Kotlin runner 已支持步骤 timeout、最多 3 次 retry、安全阻塞、
用户停止和单 runner 并发拒绝;T-102 已接入搜索加有界候选采集五步
- TaskSource:严格 CLI 已生成并验证真实私有 ProbeTask;默认 APK 不含私有 fixture
@@ -47,18 +50,19 @@
| `docs/tasks/T-102.md` | DONE | 最多 5 个候选详情截图、证据 manifest 和结果页返回 |
| `docs/tasks/T-103.md` | DONE | 私有任务需求 schema、硬约束、隐私边界和 VLM 适配器 |
| `docs/tasks/T-104.md` | DONE | 动态搜索、候选严格评估、本地建议和人工确认点 |
| `docs/tasks/T-201.md` | DONE | Go-Gin、SQLite、Goose migration 和健康检查骨架 |
| `deepseek总结.txt` | 已有 | 历史讨论摘要,不是正式需求权威 |
| `android-buyer/` | 已有 | Roubao `main` 固定 commit 的 Android 基线 |
| `android-buyer/task-contract/` | 已有 | Android/CLI 共享 ProbeTask 与 TaskSource |
| `android-buyer/tools/shopee-importer/` | 已有 | 开发机私有 fixture 导入 CLI |
| `backend-api/` | 待建 | Go-Gin、管理 Web 和数据目标目录 |
| `init.ps1` / `init.sh` | 已验证 | Android 构建入口;可选真机安装启动 |
| `backend-api/` | 已有 | Go-Gin API、SQLite、migration、健康检查和测试骨架 |
| `init.ps1` / `init.sh` | 已验证/待跨平台 | Windows 同时验证 Android/Go;Unix 入口待 Linux/WSL 复核 |
## 任务摘要
- 已完成:T-001 至 T-004,以及 T-101 至 T-104。
- 已完成:T-001 至 T-004、T-101 至 T-104,以及 T-201。
- 正在进行:无。
- 下一个可领取任务:T-201 生成并收敛 Go-Gin、SQLite 和迁移骨架。
- 下一个可领取任务:T-202 生成并确认 P0 Web/App 低保真原型。
## 当前可运行内容
@@ -67,6 +71,11 @@
$env:RUN_START_COMMAND = "1"
.\init.ps1
Set-Location backend-api
$env:GOTOOLCHAIN = "local"
go run ./cmd/migrate up
go run ./cmd/api
```
2026-07-25 已在 PKG110、Android 16/API 36、拼多多 8.17.0 上完成 Debug APK
@@ -85,6 +94,12 @@ $env:RUN_START_COMMAND = "1"
`order_submitted` 始终为 false;日志敏感词、Base64、原始响应和 schema/prompt
命中均为 0。该结果不代表真实模型的商品匹配质量。
同日完成 T-201 后端 smoke:本机迁移执行 `status -> up -> up -> down -> up`,
第二次 `up` 应用数为 0;API 真实进程的 `GET /healthz` 返回 `200` 和稳定 JSON,
未知路由返回 `404`,错误方法返回 `405`,无默认 CORS,stdout/stderr 均为空。
`http.Server.Shutdown` 由集成测试验证在 1 秒预算内结束。当前 Windows 没有可用 WSL
发行版,因此 `init.sh` 未实际运行;Windows 标准入口已验证。
## 维护规则
发生以下变化时覆盖更新本文: