SDD 能力底座
需求来源与拆分
Studio PRD 落盘 → change 归属 → tasks 业务化拆分 — 需求可追溯的完整链路
SDD 从一份确认过的需求开始,不是从一句聊天开始。
需求从哪来
| 来源 | 路径 |
|---|---|
| Aiko Studio 文档(PRD/BRD) | SDD 面板「选择文档」→ 选项目/文档 → 导出落盘到 .aiko/sdd-input/<slug>/(markdown 直接写 source.md;含原型的 zip 解包) |
| 直接描述(chat 组) | 不挂文档的需求,归到面板 chat 组 |
change 与需求的归属
- change 创建时
.aiko.yaml写入requirement: <slug>(aiko-state.sh init <name> <workflow> [requirement]第三参),事后可set <change> requirement <slug>补挂 - 面板按归属把 change 聚合到需求名下,需求状态 = 名下 change 的归档汇总
- 历史遗留的
.aiko-source.json仍可读(只读兜底),新归属只写.aiko.yaml
需求拆分(tasks.md)
agent 把需求文档拆成 tasks.md 的业务功能任务:
- 写业务语言("库存校验"),不写技术步骤("给 CartService 加 lock")——技术实现路径都在 design.md
- spec 无 ≤3 限制,按真实拆解写;hotfix/tweak 精简
- 详细设计(spec 的 brainstorm 裁判)只有推翻业务任务前提时才回头修订 tasks.md——业务边界不随技术方案变
交付与测试(本仓库的两层验证)
- 确定性 e2e(
test/manual/sdd-e2e/run-all.sh):无 LLM,驱动真实门禁/状态机/面板推导,覆盖 full/spec/hotfix/tweak × sdd/vibe × 三种 guard 形态 - 真实 e2e(
sddRealSdk.integrationTest.ts):真模型走完各流程,双闸门手动开启