# feature/task-start-rootfix 任务卡 任务主记录:PR #69 https://git-panel.u1680832.nyat.app:30319/weichen/Agent-System-Dev/pulls/69(merge 84b6ab084e);状态:已完成(回填);owner:weichen ## 基线与授权 - 权威仓:ssh://git@git-ssh.u1680832.nyat.app:31411/weichen/Agent-System-Dev.git;目标分支:main;R0(initial_base_sha)= ffda6d33eabb23c9be5bac221529367d771c5f7b - 工作区:/home/weichen/projects/Agent-System-Dev-wt-feature-task-start-rootfix(worktree);分支:feature/task-start-rootfix - 授权与交付终点:修复 cmd_start 的 worktree 落点推算并验证;终点为 PR 合入 main 后回收 worktree。 ## 目标与非目标 - 目标:`task.sh start` 的 worktree 落点从 `$PWD` 推算改为经 `git rev-parse --git-common-dir` 定位主检出,使从仓库子目录(或任务 worktree 内)运行时也落在主检出平级 `../Agent-System-Dev-wt-`;受影响入口仅 `cmd_start`。 - 非目标:不改 worktree 布局本身(维持平级散放,布局决策已定);不改 sync/close/finish;不引入对 `.gitignore` 的变更。 ## 同步记录 | 节点 | sync_base_sha | tested_head_sha | checked_at | |---|---|---|---| | 启动 | ffda6d33eabb23c9be5bac221529367d771c5f7b | ffda6d33eabb23c9be5bac221529367d771c5f7b | 2026-09-30T15:22:51Z | | 同步前验收 | 7fab8feaf7 | aecaa52e6b | 2026-09-30T15:28:27Z | ## 结果与验证 - 结果:`cmd_start` 增设 `mainroot=$(dirname "$(cd "$(git rev-parse --git-common-dir)" && pwd)")`(与 `cmd_finish` 定位主检出同款惯用法),落点改为 `$(dirname "$mainroot")/$(basename "$mainroot")-wt-${slug}`;主检出根运行时路径与旧实现一致。 - 验证:`bash -n` 通过(shellcheck 未安装,跳过);冒烟 A——主检出 `scripts/` 子目录运行修复版 start,worktree 落在 `/home/weichen/projects/Agent-System-Dev-wt-feature-rootfix-smoke`(修复前形态 `scripts-wt-…` 已断言不存在);冒烟 B——主检出根目录运行,落点与现有惯例一致;smoke worktree/分支已全部清理,`git worktree list` 无残留。 - 影响与剩余项:无剩余项;pre-commit 的 Mimosa 钩子报 advisory(scanner_no_output,兼容策略放行),属环境侧扫描器无输出,非本次改动引入。 ## 闭合记录(card-autoclose 回填) - 依据:merge 84b6ab084e2f70b4501c607b1395d647e4ed3af2(PR #69)已包含于 origin/main,分支成果已落盘;本段为合入后回填。 - 合并主题:Merge pull request 'Fix task worktree path derivation to anchor on the main checkout' (#69) from feature/task-start-rootfix into main - 归档:随闭合移入 .task/archive/;任务执行期的过程证据见原任务记录与 PR。