Files
Agent-System/.doc/test-reports/2026-09-15-leftover-branch-cleanup-test-report.md
weichenandCursor edb7411474 docs(ops): record leftover branch cleanup and short smoke evidence
Local merged side branches and their worktrees are gone; FAV/herdr/diagnosis/old-linear stay unmerged on purpose.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 06:44:39 +00:00

4.8 KiB
Raw Permalink Blame History

旁支清点与收口 测试报告

一、 测试背景 (Background)

主仓在 dev@347c5f5 时本地仍挂着大量 tip 已是 dev 祖先的旁支,以及 8 个 extra worktree。未合入 dev 的 5 条分支均不能整支 --no-ff merge(会回归审计关闭结果、盖掉 U12 arch-check、触 FAV 红线,或引入旧线性历史)。本轮只做清理 + 冒烟,无功能 merge。

二、 测试目标 (Test Objectives)

  • 拆掉已合入分支的 7 个 worktree;保留错名 FAV worktree。
  • git branch -d 删除已是 dev 祖先的本地旁支(31 条)。
  • 5 条未合入分支一律保留、不合入、不 -D。
  • 主仓冒烟:go vet、go test -short、arch-check --mode block、:8080 /health 与 /ready(schema 38、pi-agent)。
  • 不 rebuild、不跑真实 PI、不碰项目 143、不从 worktree 起停 docker、不 push、不删 origin/*。

三、 测试方案与环境 (Test Plan & Environment)

项 值
OS Linux 7.0.0-31-generic
Go go1.27.1 linux/amd64
分支 chore/leftover-branch-cleanup(自 dev@347c5f5)
容器 现网 U11 镜像,不做 rebuild
冒烟 go vet ./...;unset TEST_DATABASE_URL; go test -short ./...;./scripts/arch-check.sh --mode block;curl -sf http://127.0.0.1:8080/health 与 /ready
证据 .doc/test-reports/assets/2026-09-15-leftover-branch-cleanup/

四、 预期结果 (Expected Results)

栏 期望
worktree extra 只剩 .worktrees/fix-dev-runtime-data-root-guard(检出 feature/final-artifact-vault)
本地旁支 --merged 的 31 条已删;5 条未合入仍在
vet exit 0,无诊断
short 全仓 ok / no test files,exit 0
arch-check block production gate passed
health/ready status=ok,schema_version=38,agent_backend=pi-agent

五、 实际测试结果与判定 (Actual Results & Evaluation)

5.1 worktree 与已合入旁支

  • 测试输入: git worktree remove --force 七个已合入目录;git branch -d 对 --merged HEAD 且非 dev/test/main 的旁支。
  • 实际输出: extra worktree 仅余 FAV 错名目录。31 条已合入旁支删除成功。部分目录含 Docker Playwright 产物(root 属主),经 Docker chown/rm 后完成拆除。见 assets/2026-09-15-leftover-branch-cleanup/preflight.txt、deleted-local-branches.txt。
  • 评价判定: PASS
  • 性能与耗时: 拆除约 2 分钟(含 root 属主清理)

5.2 故意保留的未合入分支

  • 测试输入: git branch --no-merged HEAD
  • 实际输出: 仍为 dev-old-linear、feature/final-artifact-vault、feature/remove-herdr-agent-settings、fix/dev-runtime-data-root-guard、fix/project143-controlled-content-404-diagnosis。未 merge、未 -D。
  • 评价判定: PASS
  • 性能与耗时: <1s

5.3 go vet

  • 测试输入: go vet ./...
  • 实际输出: exit 0,无诊断。assets/2026-09-15-leftover-branch-cleanup/go-vet.txt
  • 评价判定: PASS
  • 性能与耗时: 0.5s

5.4 go test -short

  • 测试输入: unset TEST_DATABASE_URL; go test -short ./...
  • 实际输出: 全仓 ok / [no test files],TEST_EXIT=0。最慢 internal/server 9.731s。assets/2026-09-15-leftover-branch-cleanup/go-test-short.txt
  • 评价判定: PASS
  • 性能与耗时: 约 10.6s

5.5 arch-check --mode block

  • 测试输入: ./scripts/arch-check.sh --mode block
  • 实际输出: arch-check block: production gate passed
  • 评价判定: PASS
  • 性能与耗时: 0.2s。日志:arch-check-block.txt

5.6 health / ready

  • 测试输入: curl -sf http://127.0.0.1:8080/health 与 /ready
  • 实际输出:
{"status":"ok","env":"dev","agent_backend":"pi-agent","version":"v1.0","shared_kb_port":5432,"database_ready":true,"schema_version":38,"schema_ready":true,"task_store_ready":true}
  • 评价判定: PASS
  • 性能与耗时: <1s。未 rebuild。

六、 自动化测试套件汇总 (Test Suite Execution)

命令 结果
go vet ./... PASS
unset TEST_DATABASE_URL; go test -short ./... PASS(全仓)
./scripts/arch-check.sh --mode block PASS
curl -sf :8080/health / /ready PASS,schema 38,pi-agent
go test -v ./... 全量非 short 未跑(本轮范围是 short 冒烟,无新业务代码)

七、 测试结论与后续优化建议 (Conclusion & Next Steps)

清理与冒烟达到合回 dev 的标准:无功能回归信号,现网 schema 38 / pi-agent 仍健康。后续若要处理故意保留的旁支,须单独授权:FAV 由 durable-event 任务审计后选用;herdr-removal 与 project143 诊断旧提交禁止整支合入;dev-old-linear 仅作历史残骸。