---
name: design-qa-loop
description: Design QA Loop — two-phase quality gate: Phase 1 runs F2-early after discovery (IA/feature validation), Phase 2 runs F1 walkthrough + auto-fix loop + F2-late at milestones after mockup/code is built. Ends with Dev Handoff Gate checklist.
---

# Design QA Loop

> **触发词**：
> - `discovery done` / "走查 IA" → 触发 **Phase 1**（post-discovery IA 验证）
> - `design done` / "走查一下" / "qa loop" → 触发 **Phase 2**（post-build mockup 验证）
>
> **目标**：让设计在进入下一阶段前达到质量门槛，🔴 issue 全部清零。

---

## Phase 1 — Post-Discovery IA 验证循环

**触发时机**：design-discovery 完成（6 项 deliverable + 数据可行性 audit 已产出）。

```
discovery done
IA: <inline 或 link>
Features: <list>
```

### Loop

```
F2-early（IA + feature list persona 验证）
    ↓
缺口清单（🔴 / 🟡）
    ↓
🔴 缺口 → AI 提修改建议 → 用户确认 → 更新 IA / feature list
    ↓
🟡 缺口 → 报给用户决策（接受 / defer / 修改）
    ↓
再 F2-early verify（只针对修改项）
    ↓
重复直到 0 🔴 缺口 + 所有 🟡 有决策
    ↓
→ 进 Phase 0（Element-to-Source Mapping）
```

**终止条件**：F2-early 返回 0 🔴 缺口，所有 🟡 已有用户决策（接受或 defer）。

---

## Phase 2 — Post-Build Mockup 验证循环

**触发时机**：mockup 或 code deliverable 完成。

```
design done
Deliverable: <node-id or file path>
PRD: <link or inline>
```

### Loop

```
F1 Design Walkthrough（全量）
    ↓
🔴 issues → AI auto-fix（见下方候选清单）→ 执行
    ↓
🟡 issues → 报给用户决策（接受 / 修改 / defer）
    ↓
🟢 issues → 列入 defer backlog，不阻塞
    ↓
F1 verify（只针对已修改项重跑相关 section）
    ↓
用户到达里程碑节点（PM review / dev handoff）
    ↓
F2-late（mockup persona 验证，里程碑才跑，非每轮执行）
    ↓
F2-late 发现 🔴 → 修改 → F1 verify → F2-late verify
    ↓
重复直到 F1 + F2-late 均 0 🔴
    ↓
→ Dev Handoff Gate
```

**终止条件**：
1. F1 返回 0 🔴，所有 🟡 有用户决策
2. F2-late 返回 0 🔴 Priority Issues
3. PRD Coverage 100%（或缺项已 defer 并有用户决策记录）

---

## 🔴 Auto-fix 候选（无需用户确认直接执行）

以下类型 issue 可 auto-fix：
- 时间锚点文字与选中时间窗口不匹配（e.g. "this month" in 6M view → "this period"）
- 轴标 label 数量与 tab 选项不一致（e.g. 7 labels vs 6M → 修正 label 文字）
- Placeholder text 未替换（e.g. "Option 1/2/3"、默认 icon 未更换）
- M21 明确的颜色违规（e.g. 非 TVU green 的 chart line in matching sibling context）
- 明显的 M16 违规（评估后确认是 placeholder 而非有意保留）

以下 **不可** auto-fix（需用户决策）：
- PRD scope 边界调整
- IA 结构变更
- 新 feature 的增减
- 数据来源或公式的修改
- 视觉方向性判断（颜色主题、布局密度等）

---

## Dev Handoff Gate（Phase 2 终止后触发）

输出 handoff checklist：

```markdown
## Dev Handoff Checklist — <Deliverable Name>

**Date**: YYYY-MM-DD

- [ ] F1 Walkthrough: 0 🔴 issues
- [ ] F2-late: 0 🔴 Priority Issues
- [ ] PRD Coverage: 100%（或所有缺项有 defer 决策记录）
- [ ] 数据可行性 Audit: 所有 metric ✅ 或 ⚠️（⚠️ 须有 dev 注释说明 risk）
- [ ] M6 Reusable Pattern: 所有 🟡 候选有用户 enter / defer 决策
- [ ] Annotation / 交付注释已就位（若 PM review 场景）

所有项 checked → 设计正式 handoff to dev。
```
