Files
git-learn/openspec/archive/2026-05-21-sm-flow-v3-1-upgrade/proposal.md
T

35 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## Why
SM Flow v3 已经确立了 OpenSpec-first / Devflow-assisted 的主从关系,但实际使用中仍存在四类摩擦:接口变更文档粒度不清、propose 后再 grill 导致返工、devflow 增长后上下文定位变慢、实现阶段发现设计冲突时容易被代码建议牵着走。
这次 v3.1 改造要把这些摩擦固化为可执行规则,让代理在生成规格、澄清需求、执行 apply 和回填 devflow 时有明确 gate,而不是靠临场判断。
## What Changes
- 增加接口影响分级规则:所有接口变更都必须记录影响,只有达到跨团队、外部契约或破坏性变更阈值时才独立产出接口文档。
- 增加 OpenSpec 草稿/提交分离:Phase 1 生成 Draft OpenSpec,Phase 2/2.5 澄清和审计后通过 Phase 2.9 提交为 Phase 3 的执行依据。
- 增加 devflow 上下文定位规则:通过 `devflow/index.md`、项目 `brief.md` 和固定检索顺序减少全量翻阅。
- 增加实现期冲突处理规则:Phase 3 中用户质疑、测试失败、代码发现和 OpenSpec 冲突时,必须先分类再继续执行。
- 增加 Phase 3 前 OpenSpec 可执行性检查,确保 proposal/design/specs/tasks、接口影响、未解决用户问题和 devflow 冲突都达标。
- 调整子 skill 兼容规则:把流程绑定到能力契约,而不是绑定到 Claude 路径;Claude skill 文件只是一个可用实现。
- 更新 sm-flow skill 本体、phase contracts、fallbacks、templates 和工作流说明文档。
## Capabilities
### New Capabilities
- `sm-flow-interface-impact`: 定义接口影响分级、接口影响记录和独立接口文档的触发条件。
- `sm-flow-commit-gate`: 定义 Draft OpenSpec、Committed OpenSpec、Phase 2.9 提交检查和 Phase 3 前可执行性 gate。
- `sm-flow-context-indexing`: 定义 devflow 上下文索引和固定检索顺序。
- `sm-flow-apply-conflict-handling`: 定义 Phase 3 实现期冲突分类、用户确认和 OpenSpec 回写规则。
### Modified Capabilities
<!-- 没有已归档的 openspec/specs 需要修改;当前仓库尚未建立全局 specs 目录。 -->
## Impact
- 修改 `.agents/skills/sm-flow/SKILL.md`。
- 修改 `.agents/skills/sm-flow/references/phase-contracts.md`、`fallbacks.md`、`templates.md`。
- 可能新增 `devflow/index.md` 作为长期上下文索引入口。
- 更新 `skill-workbench/docs/sm-flow/workflow.md`,记录 v3.1 的最终设计。
- 不修改业务代码,不改变 `knowledge/` 索引功能。