---
id: {SCENARIO_ID}
title: {标题}
status: draft
scenarios: []
---

# {SCENARIO_ID}: {标题}

<!-- 本模板是插件 starter 指导，项目本地模板可完全覆盖 -->
<!-- 场景剧本是结构化的发现级场景：时序上先于/驱动 PRD 与功能特性，功能特性是
     场景的派生物；表达形式是结构化的（字段块 + Given/When/Then）。一个文件可含
     多个场景节点。 -->

## S-{nn}：{场景名}

**场景代码**: {稳定交叉引用 slug，kebab-case}
**关联决策**: {决策 ID 列表}
**关联功能**: {功能 ID 列表；尚无功能制品时省略本行，或按项目模板标注"尚无功能制品"}

### Given

- {可构造的具体前置状态：文件、记录、配置、环境条件}

### When

1. {用户或外部动作，编号步骤}

### Then

- {可观察、可验证的结果：输出文本、退出码、状态、记录}

---

### S-{nn}a：{变体名}

**场景代码**: {变体稳定 slug}
**关联决策**: {决策 ID 列表}
**关联功能**: {功能 ID 列表}

### Given

- {与主场景不同的前置状态}

### When

1. {与主场景不同的动作步骤}

### Then

- {该分支下可观察、可验证的结果}

## 使用说明（放入项目前删除本节）

- 节点标题是制品图的解析锚点：主场景 H2、变体 H3（字母后缀），编号匹配
  `^S-\d+[a-z]?$`（允许前导零），冒号半/全角以项目配置与既有制品为准。
- 字段块中 `关联功能`/`关联决策` 是机器锚点、必需，只引用制品图中已存在的 ID；
  `场景代码` 是稳定交叉引用 slug、推荐。字段集允许项目模板扩展（如入口编号）。
- 场景先于功能制品时（发现级场景）：`关联功能` 行省略，或按项目模板标注——写法
  示例：`**关联功能**: 尚无功能制品（发现级场景，功能制品建立后补挂接）`。此时
  CLI 的 `ORPHAN_SCENARIO` warning（不阻断、exit 0）属预期，不强制消灭。
- 追溯一致：关联功能存在时，功能制品 frontmatter 的 `scenarios` 字段必须回列本场景；
  暂缺不判 fail，不编造 ID。
- 场景→决策边只对 `D-XXX-数字` 形式的决策 ID 成边（CLI 硬编码）；`ADR-\d{4}` 类
  编号只做文档级追溯。
- 关键分支、边界、异常写成变体节点，复用主场景语境、只写差异。
- 正文不得出现机器私有路径：路径用项目相对形式或占位符。
- frontmatter 字段集以项目模板与配置为准；上表仅为插件 starter 默认。

## 变更日志

| 日期 | 变更 | 作者 |
|------|------|------|
| {YYYY-MM-DD} | 初始草稿 | {作者} |
