# NEXT（脚本门禁 — 请按顺序执行）

## 当前：阶段 A（文档生成）

### 0. 前端需求筛选（强制步骤）

**🔴 强制执行**：在生成验收清单（05）之前，必须先筛选出纯前端需求。

**触发标记**：检测到 `.fe-filter-required.json` 文件，状态为 `pending`

**执行方式**：
- 在 AI 工具中调用 `fe-requirement-filter` skill
- 或手动触发："提取前端需求"、"过滤前端需求"、"生成前端需求文档"

**输入**：
- `source/PRD.md`（完整需求文档）
- `docs/{{PRODUCT}}-v{{VERSION}}/`（原始 Confluence PRD，若存在）

**输出**：
- `source/PRD-frontend.md`（纯前端需求文档）
- `.fe-filter-report.json`（筛选报告：保留条目数、剔除条目数、待确认条目）

**完成标记**：
```bash
# 筛选完成后，更新状态标记
echo '{"required":true,"status":"completed","completedAt":"'$(date -u +"%Y-%m-%dT%H:%M:%SZ")'"}' > openspec/PRD/{{RUN_ID}}/.fe-filter-required.json
```

**门禁检查**：
```bash
npx sdd-flow-kit gate --run-id {{RUN_ID}} --expect fe-filter-done
# 检查项：
# - .fe-filter-required.json 状态为 completed
# - source/PRD-frontend.md 存在且非空
# - .fe-filter-report.json 存在
```

---

### 1. 补全 PRD 细节层（新增步骤）

```bash
npx sdd-flow-kit prd-enrich --run-id {{RUN_ID}}
```

**说明**：
- 自动查找完整 PRD 文档（`docs/{{PRODUCT}}-v{{VERSION}}/*.md`）
- 生成 AI 提示词到 `00-PRD细节提取提示词.md`
- 在 AI 工具中执行该提示词，生成 `source/PRD-details/*.md` 与 `.page-state-model.json`

**生成的细节文件**：
- `00-字段定义.md`：列表字段详细定义（≥50 个）
- `01-状态机.md`：状态自动切换规则（≥8 条）
- `02-导出规范.md`：导出字段映射（≥60 个）
- `03-交互规范.md`：Toast/弹窗/校验文案
- `04-边界场景.md`：空值/异常/权限处理
- `.page-state-model.json`：页面模型 + 必覆盖状态（loading/empty/error 等）

### 2. 检查细节层完整性

```bash
npx sdd-flow-kit gate --run-id {{RUN_ID}} --expect prd-details-complete
```

**门禁检查项**：
- ✓ `source/PRD-details/` 目录存在
- ✓ 必需文件齐全（5 个 .md 文件）
- ✓ 字段定义 ≥ 50 个
- ✓ 状态机规则包含可判断条件
- ✓ 导出字段 ≥ 60 个
- ✓ `.prd-review-atoms.json` 原子数 ≥ 300

### 3. 生成 AC + AC 审查 + 文档闭合

```bash
npx sdd-flow-kit prd-review --run-id {{RUN_ID}}
# 生成 .prd-review-atoms.json；写 05 时须引用 PRD-XXX，并带五层标签 [业务]/[UI]/[交互]/[数据]/[技术]
# ⚠️ 注意：若已执行步骤 0 筛选，则从 source/PRD-frontend.md 提取原子；否则从 source/PRD.md 提取

# AI 生成 05 后执行 AC 审查（补遗漏 AC）
npx sdd-flow-kit ac-review --run-id {{RUN_ID}}
# 在 AI 工具执行 09-AC审查提示词.md → 补全 05 + .ac-source-trace.json

npx sdd-flow-kit ac-metrics --run-id {{RUN_ID}}
# 输出 AC Coverage / Fidelity / Source Trace → .ac-metrics.json

npx sdd-flow-kit gate --run-id {{RUN_ID}} --expect docs-closed
# 含 prd-ac-coverage（≥95%）、ac-layer-*、ac-source-trace

npx sdd-flow-kit phase advance --run-id {{RUN_ID}} --to docs-done
```

---

## 流程改进说明

**新增步骤的作用**：
- 防止 PRD 信息丢失（从简化版 → 细节层 500+ 原子）
- 五层 AC + 页面状态模型 → 交互/UI/数据遗漏可机械拦截
- PRD→AC 覆盖率目标 **≥95%**

**原有流程不变**：
- `phase advance --to impl` 之后的 propose → apply → validate → deliver 照常执行
