用途:bmad-loop 运行将故事从开发推进到评审时,若会话抛出 CRITICAL 升级(通常是冻结规格中的矛盾或未回答的问题),编排器会暂停整个运行等待人工介入。本技能即在该暂停点开启一个交互式新会话,与人类一起澄清歧义、修订冻结规格,使编排器能重新驱动故事。此会话中 $BMAD_LOOP_MODE 特意未设置,从不提问的自动化规则不适用,人类必须在场并做决定。
主要能力与用法:首先读取 $BMAD_LOOP_RESOLVE_CONTEXT 指向的 context.json,其中给出 run、故事键、project_root、code_root、spec_file、spec_reaches_the_redrive、redrive_base_ref、baseline_commit、paused_reason 及 escalations 等。会话工作目录固定为 project_root(存放 BMAD 产物与规格),code_root 才是在代码与 git 工作归属的树,两者可能不同。然后完整阅读 spec_file 的 <frozen-after-approval> 块。呈现暂停证据:escalations 非空时按最新优先顺序展示记录条目,不得用 paused_reason 替代;为空时要求 paused_reason 为非空白文本,否则报告上下文畸形且不写标记。说明歧义为何阻塞实现,给出 2 至 4 个具体方案与推荐及权衡,获取人类决定后以最小改动修订冻结规格(可借助 bmad-spec 或 bmad-correct-course 技能),使全新开发会话只有一种正确读法。最后在 resolution_path 写入 resolution.json(含 story_key、decision、spec_file、spec_updated,可选 restore_patch),并告知人类可退出会话,编排器将重新武装故事。
特殊情形:评审阶段意图缺口且已保存补丁时,可读取补丁作为证据;若确认实现读法正确且上下文 restore_supported 为 true,则修订意图并在 resolution.json 中加入 restore_patch,由编排器在重新武装时确定性重放补丁,不得自行 git apply 或设置规格状态;restore_supported 为 false 时绝不提供该选项或记录 restore_patch。环境故障升级(env_fault_site 非空)无需改规格,应让人类修复环境并确认探针通过再重新武装;probe:dispatch:<role> 暂停不算升级,应使用 bmad-loop resume <run>,resolve 会拒绝。
限制:不得写 result.json,不得改 sprint-status.yaml 或规格的 status 字段,不得实现故事、写功能代码、跑测试或提交。即使 spec_reaches_the_redrive 为 false,也须照常编辑,并明确告知人类该副本不是再驱动所读,纠正必须落到 redrive_base_ref:为分支时提交到该分支,为 HEAD 时在主检出中未提交地重新应用;不可扩大范围。stories 模式下故事若无法规划会留下 sentinel 文件而非冻结规格,此时不修订规格,而是澄清上游 SPEC.md 或 stories.yaml,并按同样规则确定落点。
资料中未提供收费、价格、支持平台或效果等事实。