Harness governance / validate (push) Has been cancelled
Initialize the full harness coding document set from the harness_coding_docs template, customized for the SoftBox project: - Vision, requirements, tech stack (modern Go 1.25 + Gio v0.10.1; Win7 legacy Go 1.20.14 + Gio v0.6.0), architecture, coding rules - Protocol contracts (signed catalog, package protocol v1, Ed25519 license, events, CLI) and Gio view structure - Roadmap Phase 0-6 with 20 suggested tasks; T-001 (monorepo skeleton) filed and ready to claim - Agent entry points (AGENTS.md, docs/00-ai-start-here.md), context manifest, governance scripts and tests - Merge Go gitignore with harness rules; keep go.work tracked Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2.6 KiB
2.6 KiB
id, title, phase, deps, status, created, issue, context_ref, claim_branch, work_branch, write_paths
| id | title | phase | deps | status | created | issue | context_ref | claim_branch | work_branch | write_paths | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| T-001 | 初始化 monorepo 骨架(core / app-modern / app-win7 + go.work) | 0 | TODO | 2026-07-16 | null | null | null | null |
|
问题 / 背景
仓库当前只有 harness 文档,没有任何 Go 代码。按 docs/04-architecture.md 建立「单仓库、双构建」的工程骨架,是所有后续任务的前置。git 仓库与 Gitea 远端(origin)已存在,init 脚本三个命令仍是占位符。
方案
- 创建
core/(go.mod,go 1.20),含domain/、application/空包和一个最小可测函数(如 SemVer 比较占位)+ 对应测试,保证go test ./...有真实断言可跑。 - 创建
app-modern/(go.mod,锁定 Go 1.25 + Gio v0.10.1)与app-win7/(go.mod,go 1.20+ Gio v0.6.0),各含cmd/softbox/main.go(暂可为无 UI 的最小 main,空 Gio 窗口归 T-003)、ui/gio/、platform/windows/空包;两模块 require core(replace 由 go.work 处理,go.mod 不留本机路径)。 - 根目录创建
go.work纳入三个模块。 - 替换
init.sh/init.ps1顶部三个命令变量:- INSTALL:
go work sync - VERIFY:
cd core && go vet ./... && go test -count=1 ./...(脚本内等价写法) - START:打印双目标构建命令(桌面应用无常驻 dev server)
- INSTALL:
- 把真实命令同步到
docs/03-tech-stack.md、docs/00-ai-start-here.md、docs/current-state.md。
验收要点
go work sync成功。cd core && go vet ./... && go test -count=1 ./...通过(Linux 无头环境),至少一个真实测试。cd app-modern && GOOS=windows GOARCH=amd64 go build ./cmd/softbox产出 EXE。cd app-win7 && GOTOOLCHAIN=go1.20.14 GOOS=windows GOARCH=amd64 go build ./cmd/softbox产出 EXE(证明 Go 1.20 兼容)。./init.sh全流程跑通,不再提示占位符未替换。- core 的 go.mod 无 Gio、无 Windows 专属依赖;依赖方向 app-* → core。
docs/current-state.md已覆盖更新为骨架完成后的现实。
边界(不改什么)
- 不实现任何业务功能(清单、下载、安装、授权均不做)。
- 不写 Gio 界面(空窗口在 T-003)。
- 不建
schemas/、testdata/业务内容。 - 不引入除 Gio 外的第三方依赖。
协作约束
(未启用 Gitea;单 agent 直接在独立分支领取,状态改 DOING 后开工。)
执行记录
(做完在此记录:改了哪些文件、跑的验证命令与结果、阻塞、关键决策。)