mcpField
R
realign-spec

realign-spec

github.com/jayden-dang开发153 次安装1 天前更新
代码仓库

关于 realign-spec

realign-spec 用于让单个功能的需求、设计和任务重新符合代码与测试现状。它保留需求历史,并依据审计结果和验证证据决定编辑与状态变更。

主要功能

  1. 01比对需求、任务与设计
  2. 02为未覆盖的需求补充任务
  3. 03标出孤立及已退役需求引用
  4. 04仅凭证据变更状态
  5. 05并列报告前后审计结果

适用场景

  1. 01代码变更后同步功能规格
  2. 02查找没有对应任务的需求
  3. 03依据验证证据核对规格状态

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/jayden-dang/skills --skill realign-spec

安装后在 Claude Code 中输入/realign-spec确认已加载。

附带文件eval.jsonTESTS.md

详细介绍

同步规范

将一个功能的规范三件套(docs/specs/<date>-<feature>/{requirements,design,tasks}.md)重新对齐到实际情况——代码、测试和任务中的实际情况。变更后未重新同步的规范会沦为虚构,而虚构比没有规范更糟。

一次处理一个功能。先确定规范目录(由用户提供、根据当前分支确定,或从 docs/specs/INDEX.md 查找)。

铁律

  • 绝不重新编号需求 ID。 ID 一经批准便不可更改;下游内容都会引用它们。
  • 绝不删除需求。 应将其标记为退役:~~**CODE-N.M**~~ <reason>——划掉的 ID 不再算作已定义,但历史记录仍清晰可查。
  • 新需求使用其所属故事下一个可用的编号;新任务必须与现有任务格式完全一致。
  • 绝不写入 Status: Shipped。 此状态转换由发布批次的 cut-release 步骤 i 完成。此技能用于重新对齐一组三件套,不负责盖上发布标记。
  • 绝不写入 Status: In-progress。 此状态转换由 execute-common 会话预检完成。

步骤

a. 基线。 运行 audit-trace 检查(必需子技能:使用 audit-trace)并记录发现项——这是“之前”的情况。

b. 需求 ↔ 任务。 对比 requirements.md 与 tasks.md:

  • 有未退役需求没有任何任务引用 → 按文件其余部分的相同格式追加一项覆盖该需求的任务,并以 _Requirements: CODE-N.M_ 页脚结尾。
  • 可验证已完成的工作(已实现且存在其证明主张的证据),但任务框尚未勾选 → 勾选任务框。

c. 需求 ↔ 设计。 将需求 ID 与 design.md 中的 Satisfies: 行进行对比。任何未退役需求若未出现在任何 Satisfies: 行中,都要告知用户——要么为设计补充章节(扩展设计),要么该需求只是愿景目标(考虑将其退役)。不要悄悄编造设计内容。

d. 孤儿项。 列出所有页脚引用已划掉或不存在的 ID 的任务。向用户展示清单,并为每项建议处理方式(改为引用有效 ID、删除任务引用,或恢复该需求)——孤儿项需要做出决定,不能当作清理工作处理。应用测试中的旧版 ID 字符串不属于此步骤范围(仅处理文档主干)。

e. 状态转换——仅凭证据。

转换所需证据
Draft → Approved用户明确批准了该规范——绝不能推断
Approved / In-progress → Implemented所有任务框均已勾选,且仅针对文档的 audit-trace 检查无错误,且 prove-claim 验证命令全部通过
Implemented → Shipped此处不执行——cut-release 步骤 i 会将该批次的状态设为 Shipped

有证据时,执行 Draft → Approved 或 Approved / In-progress → Implemented:更新 requirements.md 中的 Status: 行以及 docs/specs/INDEX.md 中该功能对应的行。如果证据不完整,准确说明缺少什么,不要转换状态。在发布流程进行期间,若有人要求“将已发布功能标记为 Shipped”,这属于 cut-release 步骤 i,而非此技能——拒绝盖章,并提出修复单个功能规范三件套中偏差的方案。

f. 之后的情况。 重新运行 audit-trace 检查,并并列输出前后两组发现项——已解决的错误和警告、仍然存在的问题,以及为此所做的更改。确认 docs/specs/INDEX.md 反映每份规范当前的 Status: 行,并将其暂存到同一提交中。

完成条件: 之后的报告在错误方面不比之前更差;每个已标记的问题都已修改,或有待用户明确决定;并且 INDEX.md 与每份规范的 Status: 行一致。

评论

支持 Markdown