PASS make test(core ok;backend 13 包 ok 含 server 4.08s;frontend 9/9;ui tsc+6/6;agent-command vet+tests);PASS make task-sync(sync_base=69fd335dea tested_head=beaefb7549)。
影响与剩余项:仅 Dev 仓治理面(task.sh/hooks/Makefile/AGENTS.md/.task),无子仓与 gitlink 变更。剩余:① 需 make setup 重新 chmod 启用 post-merge 钩子(主检出);② guidelines 仓 standards 层的对应条目更新(跨仓,后续任务);③ close 的自动建 PR 需 GITEA_TOKEN,缺失时打印手工链接。
Why: branches merged into main had left their task cards open; backfill status and archive to prevent bookkeeping debt.
Evidence: delivery-mechanism.md(PR#unknown) feature-adopt-draft9.md(PR#unknown) feature-core-cards-commands-r1.md(PR#unknown) feature-gate-hardening.md(PR#unknown) feature-hardening-batch.md(PR#unknown) feature-pin-config-surface.md(PR#unknown) feature-pin-documents-lessons.md(PR#unknown) feature-tool-adaptation-standard.md(PR#unknown) feature-ui-foundation-r0.md(PR#unknown) feature-zcode-hooks.md(PR#unknown) fix-empty-list-json.md(PR#unknown) — merges verified via git log --merges against origin/main.
Impact: .task/*.md moved to .task/archive/ with status backfilled; no code or submodule change.
Refs: task.sh close (card-autoclose-r1)
Why: 11 merged branches had left their task cards open (bookkeeping debt found on 2026-09-30); closure was manual and never triggered, so card status rotted after each merge.
Evidence: dogfood run of `task.sh close --fold` closed and archived the 11 cards (previous commit); temp-repo matrix 33/33 PASS covering detection, pending-branch idempotence, dirty/no-fold refusals, post-merge auto-close on merge-type pulls, worktree guard, and the full lifecycle (closure PR merge archives cards on main).
Impact: scripts/task.sh (+close, precheck [cards] report, finish-tail trigger), scripts/hooks/post-merge (new), Makefile (+task-close target, setup chmod), AGENTS.md rule; archive fixes correct PR links missed by the first dogfood run; no module or gitlink change.
Refs: task card feature/card-autoclose-r1
Why: the owner authorized the agent to create and merge this PR end to end (2026-09-30), and the goal section still said "chore branch" while the implementation uses feature/card-close-*.
Evidence: user instruction quoted verbatim in the authorization field; branch naming per task.sh close.
Impact: task card only.
Refs: task card feature/card-autoclose-r1
weichen
merged commit e1bf68d414 into main2026-09-30 07:21:41 +00:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
feature/card-autoclose-r1 任务卡
任务主记录:<PR 链接,task-finish 时填写>;状态:进行中;owner:weichen
基线与授权
69fd335dea目标与非目标
.task/archive/;② task.sh 新增close子命令——检测"分支已合入 origin/main 但卡片未闭合"的任务卡,自动回填+归档,变更经feature/card-close-*分支+PR 进 main(main 受保护,不直推);③ 新增 post-merge 钩子(仅主检出 main 分支触发)+ task-finish 收尾接线 + precheck 报告项;④ AGENTS.md 增补卡片闭合规则。同步记录
69fd335dea69fd335dea69fd335deabeaefb7549结果与验证
task.sh close --fold狗粮运行回填(状态→已完成(回填)、主记录 PR 链接+merge SHA、追加闭合记录)并归档.task/archive/(commit 6f6b670;首轮暴露 PR 号正则与 URL 模板两 bug,已修并修正归档内容,commit beaefb7);②task.sh close子命令(按合并提交检测、pending 幂等防重复闭合分支、主检出→feature/card-close-*分支+推送、--fold并入当前任务 PR、GITEA_TOKEN 可选自动建 PR);③ precheck 新增[cards]欠账报告(跳过 pending);task-finish 收尾自动触发 close;新增 post-merge 钩子(仅主检出+main 的 merge 型 pull 触发,ff-only 不触发由前两者兜底);④ Makefiletask-close目标与 setup chmod;AGENTS.md 增补闭合规则。make test(core ok;backend 13 包 ok 含 server 4.08s;frontend 9/9;ui tsc+6/6;agent-command vet+tests);PASSmake task-sync(sync_base=69fd335dea tested_head=beaefb7549)。make setup重新 chmod 启用 post-merge 钩子(主检出);② guidelines 仓 standards 层的对应条目更新(跨仓,后续任务);③ close 的自动建 PR 需 GITEA_TOKEN,缺失时打印手工链接。