v1.7.4 (2026-08-07)
🔄 SDD 同步上游 v6.2.0:plan 作用域工作区 + 基于唤回的修复循环(#19 A 块)
对齐上游 subagent-driven-development 的 6 个 commit。这是 #19 拆分后的 A 块 —— 注意 v1.7.1 刚对齐过 SDD,本次是那之后的新增量。
为什么脚本与文档必须整块一起改: 我们的 SKILL.md 里写的是旧签名 review-package BASE HEAD。脚本换成 plan 作用域签名后若不同步改文档,agent 会照旧签名调用直接吃 usage 错误 —— 比不同步更糟。
plan 作用域工作区(结构性修复)
原先所有计划共用 .superpowers/sdd/ 一个目录,一份过期账本被误读成当前进度会让控制者跳过整段任务序列(上游称之为观察到的最昂贵失败)。现在每个计划一个 .superpowers/sdd/<计划文件名>/,从结构上消除误读。账本新增身份行 # SDD ledger — plan: <路径>。
sdd-workspace/review-package在我们这边与上游 v6.1.1 字节一致(从未汉化),直接取上游版task-brief只手工应用上游那两处改动,保留 fork 适配(awk 同时匹配Task N与任务 N,因为本仓库 writing-plans 产出中文标题)
SKILL.md 全面重写(平铺 14 节 → 生命周期结构)
- 修复循环:一轮 = 一次修复分派 + 一次定向复审,每任务上限五轮。第 1-3 轮唤回原实现者(context 完整),第 4-5 轮换全新实现者 + 高一档模型
- 熔断:第 5 轮仍有未解决发现则停止分派,逐条裁定 —— 搁置(附裁定)或在承重项上 BLOCKED。只在上限处裁定,提早裁定等于换名字的预先定性
- Minor 发现与「计划要求的」发现两条路在循环外
- 新增「常见的合理化借口」表取代原「红线」清单
- 新增
re-review-prompt.md(106 行全文翻译)
🧹 清除 v1.7.1 遗留的生成产物
三个 SDD 文件末尾都残留着 </content> —— v1.7.1 那次重写(PR #108, d7885ca)留下的,上游没有。这些文件会整体进 agent 的 prompt,属于污染。已全部清除并全仓扫描确认无同类残留。
✅ 验证(含行为 eval)
结构性核对
- 章节结构与上游 14 节一一对应;
superpowers:引用集与上游完全一致 - 26 项关键技术记号(脚本签名、账本行格式、四种状态、
ADDRESSED/NOT ADDRESSED、数值门槛)逐一确认存在,无漏译 - 两个 dot 图节点/边数与上游精确一致(6/6 与 23/28),且无幽灵节点、无孤立节点 —— 手工翻译 dot 标签最易在边里写错,会静默产生幽灵节点
脚本实测(临时 git 仓库)
- 两个计划各得独立目录;往 A 计划写 ledger 后 B 计划目录仍为空(关键回归)
.gitignore落在.superpowers/sdd/层且git status干净- 中文「任务 2」与英文「Task 3」经新路径均抽取成功
review-package旧签名正确报 usage 错误
行为 eval —— 新机制 7 个场景全对
考察译文是否真的传达了新规则(第 2 轮该唤回还是换新、第 4 轮模型档位、第 5 轮能否再开一轮、承重发现该搁置还是停下、Minor 走哪条路、遇到别的计划的账本怎么办、控制者能否自己修):7/7 正确,连「运行环境无法唤回时才改派全新实现者」这个细节都答出。
集成 eval —— 真实 agent 的准备阶段
用 tests/subagent-driven-dev/go-fractals 脚手架跑真实执行的准备阶段,验证 agent 是否按新签名调脚本(旧习惯可能让它省掉 PLAN_FILE):
- ✔ 实际调用
sdd-workspace plan.md,带上了 PLAN_FILE 参数 - ✔ 同时检查了 plan 作用域账本和旧扁平路径的游离账本
- ✔ 账本第一行为正确的身份行
- ✔ 工作区落在
.superpowers/sdd/plan/,未在旧扁平路径写账本 - ✔ 起飞前冲突扫描产出 5 条打包成一次的提问(而非逐条打断)
- ✔ 建了 10 条待办,并按指令在分派实现者前停下
回归:scripts/audit.sh 150 pass / 0 fail、scripts/verify-release.sh 82 pass / 0 fail。SDD 已从 audit 的上游漂移警告里消失(结构层级现已对齐)。
audit PASS 由 153 降至 150,是上游有意删除 Integration 一节(原列
executing-plans/test-driven-development/writing-plans三个引用)导致 Category 4b 少 3 项引用检查,非静默跳过。