sdd-evolve
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseSDD Evolve Skill
SDD Evolve Skill
Keep specifications in sync with implementation discoveries.
保持规格说明与实现过程中的发现同步。
When to Use
适用场景
- Implementation reveals new requirements
- Technical constraints discovered during development
- Design changes needed based on learnings
- Edge cases found that weren't in original spec
- Architecture decisions made during implementation
- 实现过程中发现新需求
- 开发期间发现技术约束
- 根据实践经验需要调整设计
- 发现了原始规格中未涵盖的边缘情况
- 实现过程中做出了架构决策
Evolution Protocol
演进流程
Step 1: Identify the Discovery
步骤1:识别发现内容
Categorize the change:
- Discovery: New information that was unknown
- Refinement: Clarification of existing requirement
- Addition: New requirement not in original scope
- Modification: Change to existing requirement
- Removal: Requirement no longer needed
对变更进行分类:
- 发现:之前未知的新信息
- 细化:对现有需求的澄清
- 新增:原始范围外的新需求
- 修改:对现有需求的变更
- 移除:不再需要的需求
Step 2: Assess Impact
步骤2:评估影响
- Which spec files are affected?
- Does this change the plan?
- Are there downstream impacts?
- Should implementation pause for review?
- 哪些规格文件会受到影响?
- 该变更是否会改变计划?
- 是否存在下游影响?
- 是否需要暂停实现以进行评审?
Step 3: Document the Change
步骤3:记录变更
Add changelog entry with:
- What changed
- Why it changed
- Impact on existing work
- Decision made
添加变更日志条目,包含:
- 变更内容
- 变更原因
- 对现有工作的影响
- 做出的决策
Step 4: Update Specs
步骤4:更新规格说明
Modify the appropriate files:
- for requirement changes
spec.md - for architecture changes
plan.md - for task adjustments
tasks.md - for new/removed items
todo-list.md
修改相应的文件:
- 用于需求变更
spec.md - 用于架构变更
plan.md - 用于任务调整
tasks.md - 用于新增/移除事项
todo-list.md
Change Documentation Format
变更记录格式
Add to the relevant spec file:
markdown
undefined在相关规格文件中添加以下内容:
markdown
undefinedChangelog
Changelog
[Date] - [Category]: [Brief Description]
[Date] - [Category]: [Brief Description]
Context: [Why this change is needed]
Change: [What specifically changed]
Impact: [How this affects existing work]
Decision: [What was decided and by whom]
[Previous changelog entries...]
undefinedContext: [Why this change is needed]
Change: [What specifically changed]
Impact: [How this affects existing work]
Decision: [What was decided and by whom]
[Previous changelog entries...]
undefinedEvolution Categories
演进分类
Discovery
发现
markdown
undefinedmarkdown
undefined[Date] - Discovery: [Title]
[Date] - Discovery: [Title]
Context: During implementation of [task], discovered that [finding]
Change: Added [new requirement/constraint] to spec
Impact: [minimal/moderate/significant] - [explanation]
Decision: Proceeding with [approach]
undefinedContext: During implementation of [task], discovered that [finding]
Change: Added [new requirement/constraint] to spec
Impact: [minimal/moderate/significant] - [explanation]
Decision: Proceeding with [approach]
undefinedRefinement
细化
markdown
undefinedmarkdown
undefined[Date] - Refinement: [Title]
[Date] - Refinement: [Title]
Context: Original requirement "[X]" was ambiguous
Change: Clarified to mean [specific interpretation]
Impact: None - aligns with existing implementation
Decision: Updated spec for clarity
undefinedContext: Original requirement "[X]" was ambiguous
Change: Clarified to mean [specific interpretation]
Impact: None - aligns with existing implementation
Decision: Updated spec for clarity
undefinedAddition
新增
markdown
undefinedmarkdown
undefined[Date] - Addition: [Title]
[Date] - Addition: [Title]
Context: [Why new requirement is needed]
Change: Added requirement for [new feature/constraint]
Impact: [New tasks required / timeline adjustment]
Decision: [Approved by / scope discussion needed]
undefinedContext: [Why new requirement is needed]
Change: Added requirement for [new feature/constraint]
Impact: [New tasks required / timeline adjustment]
Decision: [Approved by / scope discussion needed]
undefinedModification
修改
markdown
undefinedmarkdown
undefined[Date] - Modification: [Title]
[Date] - Modification: [Title]
Context: Original approach [X] not feasible because [reason]
Change: Changed from [old] to [new]
Impact: [Rework required / tasks affected]
Decision: [Rationale for new approach]
undefinedContext: Original approach [X] not feasible because [reason]
Change: Changed from [old] to [new]
Impact: [Rework required / tasks affected]
Decision: [Rationale for new approach]
undefinedRemoval
移除
markdown
undefinedmarkdown
undefined[Date] - Removal: [Title]
[Date] - Removal: [Title]
Context: [Why requirement no longer needed]
Change: Removed [requirement/feature]
Impact: [Tasks that can be skipped / simplification]
Decision: [Who approved removal]
undefinedContext: [Why requirement no longer needed]
Change: Removed [requirement/feature]
Impact: [Tasks that can be skipped / simplification]
Decision: [Who approved removal]
undefinedBest Practices
最佳实践
- Document immediately - Don't wait until end of implementation
- Be specific - Include enough detail to understand later
- Link to context - Reference related tasks or discussions
- Assess impact - Flag if review is needed before continuing
- Preserve history - Never delete, always add changelog
- 立即记录 - 不要等到实现结束再记录
- 内容具体 - 包含足够的细节以便后续理解
- 关联上下文 - 引用相关任务或讨论
- 评估影响 - 若需要先评审再继续,需标记出来
- 保留历史 - 永远不要删除内容,而是添加变更日志
Integration
集成方式
- Called during subagent work
sdd-implementer - Triggered by command
/evolve - Works with to validate changes
sdd-verifier - Feeds into future runs
/audit - Use the ask question tool if change requires stakeholder input
- 在子Agent工作期间调用
sdd-implementer - 通过命令触发
/evolve - 与配合验证变更
sdd-verifier - 为后续的运行提供数据
/audit - 若变更需要相关方输入,使用提问工具