附录 A. 与第一卷的桥梁
应用卷以第一卷的材料为基础。本附录将所有桥梁集中一处:第一卷的哪些部分被视为前提,我们的 SDD 方言与 Spec Kit 和 Kiro 的关系,以及第二卷的生产场景如何从教学项目 AgentClinic 中生长出来。
如果上述内容有任何不熟悉之处,请先学习第一卷的相应部分,否则第二卷的许多章节会显得像术语的堆砌。
在阅读第 1 章之前,请先阅读第 0 部分。它将基础的 AgentClinic 转化为教学用的生产模型,并确定最简路径:哪些工件需要手工填写,哪些示例在本地运行,哪些块仅属于完整的落地实施路径。
阅读第二卷的最低必备知识
| 需要理解的内容 | 在第一卷中的引入位置 |
|---|---|
mission.md、tech-stack.md、roadmap.md 的结构 | 第 6 部分. 创建章程 |
requirements.md、plan.md、validation.md 的格式 | 第 7 部分. 功能规格说明 |
| 合并准入事实、EARS、Given/When/Then | 第 9 部分. 功能验证:从规格说明到事实 | | 重新规划与路线图更新 | 第 10 部分. 项目重新规划 | | 遗留代码库的支持与规格考古 | 第 13 部分. 维护现有项目 | | 代理的可替换性、ACP/AGENTS.md 引用 | 第 15 部分. 代理可替换性 | | 团队评审与证据包 | 第 16 部分. 团队协作与代码评审 | | Qwen Code 钩子、PreToolUse 与 PostToolUse | 第 17 部分. Qwen Code 钩子 | | SDD 反模式 | 第 20 部分. SDD 反模式 | | 实践考核作为整个流程的检验 | 第 22 部分. 实践考核 |
SDD 方言:Spec Kit、Kiro 与本教材的作者方言
应用卷使用与第一卷相同的作者方言。与 GitHub Spec Kit 和 AWS Kiro 的详细对比见第一卷附录 A:工件对应表、流程迁移建议、各格式的局限性。
如果团队已经在使用 Spec Kit 或 Kiro,请在心里将 requirements.md → /speckit.specify、plan.md → /speckit.plan + /speckit.tasks、validation.md → /speckit.analyze + 检查清单 进行对应后阅读第二卷的章节。各章并未与某种格式硬绑定:其思想在不同方言间迁移不会丧失意义。
AgentClinic 领域地图
第二卷的生产场景在思想上基于第一卷的教学项目 AgentClinic 展开。领域实体的完整描述——代理患者、病症、治疗、预约、评价、反馈——汇总于第一卷附录 B。
第二卷并不要求第一卷的成果已经在真实的生产基础设施中运行。各章中所有的外部系统都是教学用的事件与约束源。它们用于展示同一个 SDD 循环在面临回滚、升级、指标和模型预算等风险时的行为。
当第二卷中遇到生产实体(appointments-api、node_not_ready、appointment_latency、appointment_latency_spike、high_memory_usage、autoscale_200pct、cdn_error_budget_burn、rate_limit_breach)时,它们与 AgentClinic 的对应关系如下。对于考核路径,请以 high_memory_usage 作为主要用例;其余条目仅用于理解本地的可运行示例,无需单独的证据包。
| 第一卷的教学代码 | 第二卷派生的生产场景 |
|---|---|
路由 GET /(Hello Hono,第 7 部分) | node_not_ready:副本未通过健康检查 |
| Hono JSX 的代理页面(第 11 部分) | appointment_latency / appointment_latency_spike:/agents 路由延迟 |
| SQLite + 评价迁移(第 12 部分) | high_memory_usage:部署后读取峰值 |
| 反馈表单(第 12 部分) | rate_limit_breach:相同 POST 请求的突发 | | MVP 阶段(第 12 部分) | autoscale_200pct:负载急剧上升 | | 代理日志(第 11 部分) | cdn_error_budget_burn:仪表盘指标不一致 | | 诊所操作员语气(第 6 部分) | 来自非正式信号的影子规格说明 |
在应用卷的 README 中给出了简短的阅读地图与到本附录的链接。完整的领域表存放在此处,以便在阅读第二卷任何章节时都能快速回忆某个生产症状对应着哪段教学代码。
第二卷新增的内容
| 层次 | 在第二卷中的讨论位置 |
|---|---|
| AgentClinic-production 实验框架与最简路径 | 第 0 部分. AgentClinic-production 实验 |
| 从遗留系统痕迹恢复规格说明 | 第 1 部分. 从遗留代码中考古规格说明 |
| 规格说明中的可控缺陷 | 第 2 部分. 规格说明缺陷诊断 |
| 包含不可变层与可变层的生产章程 | 第 3 部分. 项目章程 | | 角色之间的对抗式验证 | 第 4 部分. LLM 对决 | | 规格说明的变异测试 | 第 5 部分. 规格说明压力测试 | | 隐性启发式的形式化 | 第 6 部分. 影子规格说明筛选 | | 规格说明网关作为强制性 gate | 第 7 部分. Specification CI | | 争议变更的文件仲裁 | 第 8 部分. 争议变更的文件仲裁 | | 模型路由与分层预算 | 第 9 部分. 分层预算 | | 反 Goodhart 的成对守望指标 | 第 10 部分. 防止指标的 Goodhart 效应 | | 与生产 API 的集成与自动修复 | 第 11 部分. 生产 API | | 应用循环的反模式诊断图 | 第 12 部分. 生产 SDD 反模式 |
| 最终的生产考核与证据包 | 第 13 部分. 实践考核 |
上表正是将抽象的生产场景转化为教学项目续篇的那座桥梁。在第二卷的各独立章节中(例如第 12 部分——生产 SDD 反模式),对第一卷的引用也以单独块的形式置于页脚;其余章节中则将它们穿插在讨论正文中。