本技能利用当前对话上下文和对代码库的理解生成一份规格说明。不要再访谈用户,只综合已经掌握的信息。
issue tracker 和 triage label 词汇表应已提供;若没有,请运行 /setup-matt-pocock-skills。
流程
如果尚未探索代码库,先了解其当前状态。规格说明应始终使用项目领域词汇表中的术语,并遵守所涉及区域的 ADR。
勾勒准备在哪些测试接缝(seam)上验证该功能。优先复用现有接缝,而不是新增接缝;选择尽可能高层的接缝。确实需要新接缝时,也应把它放在尽可能高的位置。代码库中的接缝越少越好,理想数量是一个。
向用户确认这些接缝是否符合其预期。
- 使用下方模板编写规格说明,然后发布到项目的 issue tracker。应用
ready-for-agenttriage label,无需额外 triage。
Problem Statement
从用户视角描述其面临的问题。
Solution
从用户视角描述问题的解决方案。
User Stories
一份详尽的编号用户故事列表。每条用户故事采用以下格式:
- 作为 ,我希望 ,以便
用户故事列表必须非常全面,覆盖该功能的各个方面。
Implementation Decisions
列出已经作出的实现决策,可包括:
- 将要构建或修改的模块
- 将要修改的模块接口
- 开发者提供的技术澄清
- 架构决策
- Schema 变更
- API contracts
- 具体交互
不要包含具体文件路径或代码片段,它们可能很快过时。
例外:如果 prototype 产出的代码片段比文字更准确地表达了某项决策(例如 state machine、reducer、schema 或 type shape),可将其内联到相关决策中,并简短注明它来自 prototype。只保留承载决策的信息,不要放入完整可运行的 demo。
Testing Decisions
列出已经作出的测试决策,包括:
- 好测试的标准(只测试外部行为,不测试实现细节)
- 将要测试的模块
- 测试的既有范例(即代码库中类似类型的测试)
Out of Scope
描述本规格说明范围之外的事项。
Further Notes
与该功能有关的其他说明。