# UAT 报告 · 旅游明信片 feature v1.0

| 字段 | 内容 |
|---|---|
| Feature | postcard-feature v1.0 |
| Test scope | E2E + UAT（业务签字）|
| Tester | qa-engineer（E2E）+ product-lead + 业务方 3 人（UAT）|
| Skill | 按 [`agf-writing-qa-report`](../../../.claude/skills/agf-writing-qa-report/SKILL.md) 结构 |
| Verdict | **✓ Pass**（4/5 命中 = 80% 达 AC 阈值；1 题 cosmetic fail 跟进 issue）|
| Date | 2026-05-19（PR #287 改完 + 二次 review pass 后）|
| 签字状态 | ✓ qa-engineer / ✓ product-lead / ✓ 业务方 |
| deck 集成 | spec §14.1 slide 73-76（§5 UAT + Release Retro）|

---

## A. 测试范围

按 PRD v1.0 5 条 AC + 业务方提供 5 张盲测照片做 E2E 链路验证。

### 5 道盲测题

| # | 照片 | 主体 | 评估维度 |
|---|---|---|---|
| 1 | 海边日落.jpg | 风景（海 + 太阳）| 5 AC |
| 2 | 山林晨雾.jpg | 风景（山 + 雾）| 5 AC |
| 3 | 城市夜景.jpg | 风景（城市灯光）| 5 AC |
| 4 | 古城街景.jpg | 复杂场景（古建筑 + 人）| 5 AC |
| 5 | 田园风光.jpg | 风景（稻田）| 5 AC |

---

## B. E2E 测试结果

### B1. 命中率仪表盘（5 道题）

详见 deck slide 73 [F3 5 道盲测命中率仪表盘](../../diagrams/png/F3-blind-test-dashboard.png)。

| # | 照片 | Vision | LLM | 文生图 | 综合 |
|---|---|---|---|---|---|
| 1 | 海边日落 | ✅ "夕阳/海面/剪影" | ✅ "夕阳把海面染成金色…" | ✅ 色调匹配 0.85 | **✅ ON** |
| 2 | 山林晨雾 | ✅ "山林/晨雾/远景" | ✅ "晨雾在山谷中游走…" | ✅ 色调匹配 0.81 | **✅ ON** |
| 3 | 城市夜景 | ✅ "城市/夜景/灯光" | ❌ **"夜色降临，咖啡馆里的人们…"**（撞 cliché 模板）| ⚠️ 色调匹配 0.77 但内容偏离 | **❌ OFF** |
| 4 | 古城街景 | ✅ "古建筑/石板路/行人" | ✅ "穿过古城的青砖小巷…" | ✅ 色调匹配 0.83 | **✅ ON** |
| 5 | 田园风光 | ✅ "稻田/远山/农舍" | ✅ "金色稻浪在风中起伏…" | ✅ 色调匹配 0.80 | **✅ ON** |

**总命中**：**4 / 5 = 80%**（达 AC 阈值，仪表盘绿色 ON）

### B2. AC 实测对照

| AC | 目标 | 实测 | 状态 |
|---|---|---|---|
| AC1 时延 | P95 ≤ 30s | 24.8s 平均 / P95 25.3s | ✅ |
| AC2 Vision 准确率 | ≥ 85% | 5/5 = 100% | ✅ |
| AC3 文案相关性 | ≥ 4/5 | 平均 4.0 / 5（5 题平均：5/5/2/5/4）| ✅（含题 3 拉低）|
| AC4 风格色调 hash | ≥ 0.75 | 平均 0.81 | ✅ |
| AC5 单次 cost | ≤ ¥0.30 | ¥0.214 平均 | ✅ |

→ 5 AC 全部达标，**E2E Pass**。

详见 deck slide 73 多模态评测三指标 [F1 三角雷达](../../diagrams/png/F1-multimodal-radar.png)（实测三角完全包住目标三角）。

---

## C. UAT 业务签字（业务方 3 人盲评）

### C1. 业务方画像

| 业务方 | 角色 | 评估关注点 |
|---|---|---|
| Alice | 旅游博主 | 文案是否能直发朋友圈 |
| Bob | 普通游客 | 卡片图是否符合"分享出去不丢人" |
| Carol | 团建摄影助手 | 批量生成是否稳定 |

### C2. UAT 关心点（vs E2E 不同视角）

> 业务方关心"分享出去会不会丢人"，**不是 latency**。

| 题 | Alice 评 | Bob 评 | Carol 评 | 业务方综合 |
|---|---|---|---|---|
| 1 海边日落 | ✓ 直接可发 | ✓ 好看 | ✓ | ✓ |
| 2 山林晨雾 | ✓ 直接可发 | ✓ 文艺感强 | ✓ | ✓ |
| 3 城市夜景 | ⚠️ 文案不对（不在咖啡馆）| ⚠️ 图不错但文案怪 | ⚠️ | **⚠️ P1 fail（cosmetic 类）** |
| 4 古城街景 | ✓ | ✓ | ✓ | ✓ |
| 5 田园风光 | ✓ | ✓ | ✓ | ✓ |

### C3. UAT verdict 决策树位置

按 [D4 qa-engineer Verdict 决策树](../../diagrams/png/D4-qa-verdict-tree.png)：

1. 有证据（curl + 截图 + DB diff 三类齐全）✅ → 进入下一判
2. P0 失败？→ 5 条 AC 全过 → 否 → 进入下一判
3. P1 失败 ≤ 2 个？且 cosmetic 可记录？→ 题 3 是 P1 cosmetic + 仅 1 个 → 是 → **✓ Pass**

**最终 verdict**：**✓ Pass**（P0 全过 + P1 失败 1 个 cosmetic → issue 跟进 v1.1）

---

## D. 签字栏

| 角色 | 姓名 / Agent | 状态 | 备注 |
|---|---|---|---|
| qa-engineer | qa-engineer | ✓ 2026-05-19 14:00 | E2E 4/5 通过 + UAT 业务方接受 |
| product-lead | product-lead | ✓ 2026-05-19 16:30 | 业务签字，title 3 失败转 v1.1 issue |
| 业务方 - Alice | Alice | ✓ 2026-05-19 16:30 | 文案 80% 满意 |
| 业务方 - Bob | Bob | ✓ 2026-05-19 16:30 | 出图 100% 满意 |
| 业务方 - Carol | Carol | ✓ 2026-05-19 16:30 | 团建场景验证通过 |

---

## E. v1.1 issue 跟进

| Issue | 描述 | Owner | Due |
|---|---|---|---|
| #312 | 文案 cliché 模板问题（"咖啡馆 / 夜色降临" 等套话）| ai-agent-dev | 2026-06-15（下个 sprint）|

## F. 归档

UAT 签字后由 product-lead 触发 `archive-progress.sh postcard-feature`：

```bash
$ .claude/scripts/archive-progress.sh postcard-feature
合成 5 份 progress/*.md → docs/qa/postcard-feature-process-log.md
移除 progress/*.md
```

详见 deck slide 75 [A12 archive-progress 流程图](../../diagrams/png/A12-archive-progress.png)。

---

## 引用

- 上游 code review：[04-review-report.md](./04-review-report.md)
- 下游 release retro：[06-retro.md](./06-retro.md)
- deck slide 引用：73 命中率 / 74 5 AC 雷达 / 75 archive 流程
