diff --git a/.task/fix-agent-exec-terminal-wrapper.md b/.task/fix-agent-exec-terminal-wrapper.md index 78c04a8f..ce2a0fbf 100644 --- a/.task/fix-agent-exec-terminal-wrapper.md +++ b/.task/fix-agent-exec-terminal-wrapper.md @@ -34,25 +34,26 @@ | 单元 ID | 预期范围 | 配置摘要 | 角色 | 候选顺序 | attempt | CLI/模型 | 终态 | transport | fallback | 源码外收据路径 | |---|---|---|---|---|---|---|---|---|---|---| -| 待定义 | — | NOT_RUN | NOT_RUN | NOT_RUN | NOT_RUN | NOT_RUN | NOT_RUN | NOT_RUN | NOT_RUN | — | +| dev-agentexec-terminal-wrapper-bump | deps/development-manager、policy/delivery.md | config_digest 见收据 | implementation | cursor → antigravity → pi | cursor#1(4df7e8132c82,fresh_session=true) | cursor-agent-stable / auto | success | c7b46f0(apply 快进 15703b7..c7b46f0) | 否 | /tmp/dev-wrapper-run1.json;单元包 /tmp/dev-wrapper-unit.json | ## 关联方向与规划 -- 适用状态:待核对(无适用规划时说明原因) -- 主记录路径/版本:待核对(路径按仓库根目录定位,归档后不变;只引用唯一正文) -- 对应里程碑:待核对 +- 适用状态:不适用(执行器缺陷修复,无对应规划正文) +- 主记录路径/版本:本任务卡;上游修复见 Development-Manager PR #23 +- 对应里程碑:无 ## 需求分析 | ID | 描述 | 项目符合度及依据 | 优先级 | 验收条件 | 依赖 | 结论 | |---|---|---|---|---|---|---| -| R1 | 待填写 | 待评估 | 待定 | 待定义 | 待确认 | 待评审 | +| R1 | Dev 的 agent-exec 使用含终态包裹修复的 DM | 符合:执行器只来自 DM gitlink(PR #600) | 高 | gitlink=67784f4;`scripts/agent-exec validate` 通过;CI 通过 | DM PR #23 已合入 | 已实施 | +| R2 | policy/delivery.md 写入 worker Git 操作与 host 运行期纪律 | 符合:对应 4 次 git 索引变更与 3 次运行中改检出的 failed-unknown | 中 | 新段落位于指定节,其他文本不变 | 无 | 已实施 | ## 方案与计划 -- 方案引用:待填写(含对象版本) -- 实施计划引用:待填写(含增量与需求 ID) -- 测试计划引用:待填写(含需求 ID 与验收条件) +- 方案引用:owner 于 2026-10-18 确认的「agent-exec 失败修复」方案(仓外计划文件),第 3 节 Dev 接入 +- 实施计划引用:单一增量 I1,一个 agent-exec 单元覆盖 R1、R2 +- 测试计划引用:R1 由 `scripts/agent-exec validate --repo .`、`make test-pins` 和 PR CI 验证;R2 由 diff 审阅和独立 Review 验证 ## 阶段记录 @@ -97,9 +98,23 @@ ## 结果与验证(完成后填写) -- 结果: -- 验证:<结论摘要 PASS/FAIL/SKIP/NOT_RUN 逐项;逐条证据由 make evidence 写入上方证据表> +- 结果:`deps/development-manager` 从 0552b73 升到 67784f4。该范围包含 DM PR #21、#22、#23,其中 #21、#22 只涉及 DM 自身的治理、钩子、CI 和证据文件,不改变 Dev 行为。`policy/delivery.md` 加入 worker Git 操作与 host 运行期纪律段落。 +- 验证: + - `scripts/agent-exec validate --repo .` PASS(SELF,按新 pin 重建 dm-server)。 + - `make test-pins` PASS(SELF)。 + - `make task-sync` 无需同步(SELF)。它对导入的启动 precheck 收据给出 WARN:该收据记录的组件状态早于 gitlink 变更,与新 pin 不一致。关键检查已在新 HEAD 上重跑并写入。 + - 独立 Review:APPROVE(全新 code-reviewer 子会话,只接收需求、base/head、diff 和验证摘要;fresh_session=true,session ID not-observable)。 + - PR CI:见合入记录(GATE)。 - 影响与剩余项: + - 合入后,Dev 的 agent-exec 接受一层 fence/tag 包裹的终态记录,worker 提示词带上新的两条规则。 + - 不在本次范围的后续项: + - `/tmp/agent-exec-1000` 在内存盘上约占 12G(保留约 5000 个工作区),需要定期清理已对账的现场。 + - 第二候选 agy 的账号不支持 `--mode auto`,以前也卡过 OAuth;Cursor 不可用时运行可能直接 fail-stop。 + - Cursor 0 字节输出挂住触发空闲超时,按合同仍记 failed-unknown。 + - Agent-System-RDM、Agent-System-Documents 等仓库仍钉旧 DM,例行升级时再带上。 + - 本机包装脚本 `~/.local/bin/cursor-agent-stable` 已在仓外修复:会话建立前的 TLS 失败退避重试。它的连接清理会断开本机所有 Cursor 代理连接,可能影响并行会话。 + - DM Review 的非阻塞意见:prompt.go 有一处过时注释;CRLF 包裹会被拒收。 + - 过程事件:本任务 worktree 的任务卡在 03:00:05 被会话外的进程恢复为已提交内容,原因未查明,证据已重写并立即提交。主检出 `modules/frontend` 中的遗留改动经 owner 授权保存在该子模块的具名 stash(stash@{0})中,可用 `git stash pop` 恢复。 ## 规划进展与下一步 @@ -113,7 +128,7 @@ ## 合入与清理 -- Review 记录:NOT_RUN(审阅智能体/平台身份、base/head、结论、问题闭合及重放依据) +- Review 记录:code-reviewer 全新子会话;base 15703b7,实施提交 c7b46f0;结论 APPROVE,无阻塞项。非阻塞意见是在卡中写明 pin 范围横跨 DM #21–#23,已写入结果段。 - 冲突记录:NOT_RUN(最新目标同步、冲突处置、组合兼容核验及复审/补测) - CI 记录:NOT_RUN(当前 HEAD 完整 SHA、全部必需检查、运行链接、执行身份及 GATE 结果) - 合入记录:NOT_RUN(交付授权范围、PR、被核验 HEAD、合入 SHA、目标分支及内容核验)