Back to Easydict

Agent 提交结果统一报告

docs/exec-plans/completed/2026-08-21-agent-commit-result-reporting.md

2.22.03.5 KB
Original Source

Agent 提交结果统一报告

状态

  • 状态:completed
  • 创建日期:2026-08-21
  • 完成日期:2026-08-21
  • 负责人:Codex
  • 关联 Issue/PR:none

背景

自动本地提交已经执行成功时,最终回复可能只显示短哈希和标题,导致用户无法确认提交 动作与完整提交内容。worktree-rebase-merge 另外维护了更严格的展示要求,使同一提交在 两个工作流中的报告详细程度不一致。

任务契约

  • 用户目标:统一提交后的用户可见结果,并增加总变动、代码变动和文档变动信息。
  • 允许动作:修改仓库 Agent 指南、git-commitworktree-rebase-merge skill, 增加统计脚本、行为测试、计划和历史。
  • 允许修改路径:.agents/skills/git-commit/.agents/skills/worktree-rebase-merge/SKILL.mddocs/agents/repository-guide.md、 本执行计划和完成历史。
  • 预期交付物:唯一提交后报告契约、确定性文本行统计和复用提交说明。
  • 验收标准:统计可复算,行为测试和静态检查通过。

目标

  • git-commit 统一定义成功提交后的用户可见结果。
  • 明确区分本次创建提交与复用源分支已有提交。
  • 展示完整提交哈希、完整实际提交信息、工作树状态和 push 状态。
  • 展示可复算的总变动、代码变动和文档变动文本行数。
  • 静默忽略二进制文件,不在最终结果中显示二进制统计。

非目标

  • 不修改产品代码、构建配置或运行时资源。
  • 不改变 staging、commit、rebase、merge 和 push 的授权边界。
  • 不为单一案例复制第二套提交展示模板。

工作计划

  1. git-commit 增加确定性的提交变动统计脚本和行为测试。
  2. git-commit 中定义唯一的提交后报告契约。
  3. worktree-rebase-merge 复用该契约,并补充提交来源与集成状态。
  4. 在仓库自动提交规则中要求完整、用户可见的提交结果。
  5. 完成 skill 校验、脚本测试、静态检查和文档归档。

决策记录

  • 2026-08-21:代码与文档分类互斥,总计必须等于两类之和。
  • 2026-08-21:二进制 numstat 记录静默跳过,不进入用户可见报告。
  • 2026-08-21:单提交集成复用 git-commit 报告;多提交集成报告完整提交列表和区间统计。
  • 2026-08-21:统计脚本只依赖 Python 标准库和 Git,测试使用临时仓库验证真实输出。

进度

  • 增加提交变动统计脚本和测试。
  • 更新 git-commit 提交后报告契约。
  • 更新 worktree-rebase-merge 提交来源与报告规则。
  • 更新仓库自动提交交付规则。
  • 完成验证并归档计划。

验证

  • python3 .agents/skills/git-commit/tests/test_commit_change_stats.py:6 个测试通过。
  • Python 语法检查通过。
  • 统计脚本对真实历史提交输出的总计等于代码与文档之和。
  • 两个 skill 的报告字段、提交来源分类和 Push 边界通过静态检查。
  • git diff --check 通过。
  • 未运行 xcodebuild,因为没有修改产品代码、测试或 Xcode 工程元数据。

完成条件

  • 成功提交后不能再用短哈希和标题代替完整结果。
  • 用户可见结果包含完整哈希、完整消息、工作树、push 和三组文本变动统计。
  • worktree 流程能够准确说明本次创建提交还是复用已有提交。
  • 计划已归档,并在 docs/histories/ 记录结果。