muse-agent-example/.agent/rules/计划与提交.md

7.3 KiB
Raw Blame History

计划与提交

适用于需要制定 plan 的开发任务。本文件定义任务、分工、交付批次、提交与独立审查;执行与验证节奏见模块依赖。计划和 Skill 均不授予提交、合并、发布或外部调用权限。

任务与交付批次

  • 双环交付模型:
    • 内环(敏捷小增量):以可独立验收的能力拆分成敏捷小任务(Task),包含必要入口、执行与失败恢复路径;支持在 Plan 内部快速小步推进、局部验证并通过本地 commit 固化检查点。开发过程中允许根据新发现合理调整后续 Task。
    • 外环(Plan 终验全量闭环):交付批次(Plan)作为集中验收与合并的单位;整个 Plan 声明交付时,必须执行全量自动化验收(全量离线测试与核心集成验证),确保全局无回归破坏。
  • 开工边界:每项任务写清做什么、不做什么、交付物、修改边界、前置依赖、维护者、完成标准和验证方式。缺项或关键前提未确认时只阻塞受影响任务,继续其他已授权的独立工作。
  • 审查单位:Plan 是集中验收与最终审查的单位;大型计划可在执行合同中预先划定多阶段,并明确跨阶段集成顺序与最终验收。

依赖与分工

  • 按能力衔接:依赖的是具体输入和已验证能力,不是整个前置包的完成标签;尚未接通真实上游的部分明确留待集成验收,不以替身通过冒充完成。
  • 独立任务主动并发:前置满足、输入与修改范围互不影响且有实际收益的任务分工并发实现、验证和交付;共享状态、连续决策和简单任务由主代理处理,不为并发而制造拆分。
  • 隔离与归属:各线使用包含所需改动的同一可核验基线,并发写入者使用隔离工作区;共享接口、迁移、装配和生成文件指定唯一维护者。无法安全隔离时说明具体限制,先推进不冲突工作。
  • 集成有负责人:委派给出输入、输出、文件边界和完成判据,主代理按依赖顺序承接差异与证据,验证实际消费者和跨任务链路。重测试按环境与预算容量限流,可变数据库、端口和会话相互隔离。

研发相位(判据可判定)

相位 进入判据 验证义务
开发期 任务尚未通过自身完成标准 跑受影响快速检查或相关文件测试,及时修复失败;鼓励随时常态化运行全量离线测试(make 测试)快速捕捉回归破坏
能力稳定 任务自身完成标准全绿(按 L 级证据口径) 跑相应回归与真实接缝验证;替身与隔离遵守测试隔离
批次稳定 / 终验 批次内全部任务能力稳定 集中本批完整门禁(make 检查 + 全量测试)与必要真实入口验证,进入最终验收
  • 发现影响目标或授权的设计缺口时返回对应决策,不以临时替身掩盖,也不扩大无关任务;已有目标、方案和证据仍有效时直接承接。
  • 证据复用:确认代码、合同、输入、环境、配置和工具版本仍适用后复用证据;出现相关变更、证据失效、新失败或未解决疑点时重验对应范围,影响不清时扩大到能覆盖风险的范围。
  • 排版格式化为静默辅助:格式化(make 格式写入)仅作为 AST 等价的代码美化,在保存或提交前静默触发即可,不将其当做“破坏性语义变更”,不因格式化作废有效测试结论。
  • 测试分层与门禁:日常快速循环使用秒级 make 快检 范围=<受影响路径>;离线全套 make 测试(~70秒)鼓励常态全量运行;仅涉及存储/迁移/触发器时跑局部数据库测试(make 数据库测试 范围=<路径>)。Plan 终验时运行 make 验收数据库 完成全量闭环,移除繁琐的人为环境变量卡点。

验证级别

级别 适用范围 完成证据
L1 文档、注释、索引类改动 对应机械检查通过,含本批链接、索引或声明核对
L2 常规局部实现与缺陷修复 相关单元或契约测试通过,以及 git diff --check
L3 核心底层契约破坏(Breaking Changes)、不可逆核心表结构变更、生产数据清洗、鉴权核心逻辑重构 约定模块门禁、真实接缝验证,以及独立整体审查

不可逆操作包括生产凭据变更、核心数据清洗与破坏性表结构演进。不可逆操作或核心底层重构须先评审方案,再对稳定批次审查;常规功能演进与小步修复不滥用 L3。缺对应证据时标记 needs_verification,不以手工台账计数代替。

验证、提交与审查

  • 验证不过不收尾:任务未通过与自身完成标准相称的验证时,继续实现并重验受影响部分;不以“基本完成”隐去失败或推给无关后续任务。
  • 分支策略与本地沙盒自治:
    • 新功能开发分支:默认在主仓库切出独立特性分支进行开发,使用独立分支或 git worktree 隔离;
    • 简易小型修改:对于简易、小型的局部修复或修改,允许直接在主仓库(main 分支)进行提交;
    • 敏捷小步提交(Commit early and often):开发过程中敏捷推进,鼓励每个小任务测试完成后即执行一次本地 git commit 保存检查点与回滚锚点,无需逐步向人类申请审批。
  • 阶段收口与统一审查:
    • 代码审查严格基于已提交的 Git Commit 进行;
    • 全部任务完成后,再集中统一进行审核(Review)并修复发现的问题,不逐笔前置卡点阻塞开发;
    • 最终全量验证通过后,将特性分支(或 worktree 成果)合并回 main 分支。
  • 关键操作授权门禁:向远程仓库推送(git push)、向 main 主干分支合并或发起 PR、清理带有未保存改动的工作区前,必须获得用户明确授权。
  • 审查基于 Git Commit:代码审查严格基于已提交的 Git Commit 进行,不搞针对未提交工作树的审查;重点审查逻辑完整性、一致性、合理性、可行性,以及任务间链路与被替代实现残留。
  • 整体验收不省略:多任务或多批次计划最终必须通过全量验收(包含全量离线测试与核心集成链路),确保全局没有隐性破坏,不能仅凭各小任务局部通过代替整体验收。
  • 集中收尾:按批次同步权威记录和索引,清理本次替代内容,框架与创作内容分开审查、分开提交;按已交付能力、具体阻塞和剩余验收项汇报,不以测试或文档数量替代进度。

判定依据

任务边界和批次范围由计划逐项复核;运行命令、退出码、输入与代码版本构成验证证据;审查记录列明真实差异范围、审查结论和未覆盖项。链接、索引和格式使用现有机械检查;内容是否完整由独立语义审查判断,不以字符串存在性检查冒充流程正确。