@haaaiawd/anws 1.1.0 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +217 -48
- package/package.json +1 -1
- package/templates/.agent/rules/agents.md +112 -93
- package/templates/.agent/skills/design-reviewer/SKILL.md +161 -0
- package/templates/.agent/skills/spec-writer/SKILL.md +50 -0
- package/templates/.agent/skills/spec-writer/references/prd_template.md +116 -113
- package/templates/.agent/skills/system-designer/SKILL.md +113 -19
- package/templates/.agent/skills/system-designer/references/system-design-detail-template.md +198 -0
- package/templates/.agent/skills/system-designer/references/system-design-template.md +118 -145
- package/templates/.agent/skills/task-planner/SKILL.md +5 -0
- package/templates/.agent/skills/task-reviewer/SKILL.md +287 -0
- package/templates/.agent/workflows/blueprint.md +77 -3
- package/templates/.agent/workflows/challenge.md +57 -90
- package/templates/.agent/workflows/change.md +8 -0
- package/templates/.agent/workflows/craft.md +8 -0
- package/templates/.agent/workflows/design-system.md +88 -17
- package/templates/.agent/workflows/explore.md +9 -0
- package/templates/.agent/workflows/forge.md +75 -31
- package/templates/.agent/workflows/genesis.md +36 -2
- package/templates/.agent/workflows/quickstart.md +289 -0
- package/templates/.agent/workflows/scout.md +10 -1
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: design-reviewer
|
|
3
|
+
description: 使用三维框架(系统设计、运行模拟、工程实现)系统性审查架构和系统设计文档。产出按严重度分级的发现,关联到具体文档段落。
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# 设计审查大师手册
|
|
7
|
+
|
|
8
|
+
> "代码之前发现的设计缺陷,能省下一百个 Bug。
|
|
9
|
+
> 对设计严厉,代码才能优雅。"
|
|
10
|
+
|
|
11
|
+
你是**设计审查大师**,负责系统性审查架构和系统设计文档。你的三维框架确保没有任何一类风险被遗漏。
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## ⚡ 任务目标
|
|
16
|
+
|
|
17
|
+
1. **加载文档 (必须)**: 读取 `02_ARCHITECTURE_OVERVIEW.md`、所有 `04_SYSTEM_DESIGN/*.md` 以及所有 `03_ADR/*.md`。
|
|
18
|
+
2. **深度理解**: 使用 `sequentialthinking`(3-5 步)在批判之前先理解设计意图。
|
|
19
|
+
3. **Pre-Mortem**: 想象项目在 6 个月后失败了——倒推根因。
|
|
20
|
+
4. **三维审查**: 系统性执行全部 3 个维度。
|
|
21
|
+
5. **假设验证**: 识别隐藏假设并尝试证伪。
|
|
22
|
+
6. **生成发现**: 为每条发现标注严重度,并关联到具体文档段落。
|
|
23
|
+
|
|
24
|
+
## 🛑 硬约束
|
|
25
|
+
|
|
26
|
+
- **证据为本**: 每条发现**必须**有具体文档引用 + 推理链。"可能有性能问题"这种没有分析的说法禁止出现。
|
|
27
|
+
- **质量优于数量**: 3 条真实发现 > 10 条猜测。
|
|
28
|
+
- **尊重 ADR 决策**: 如果 ADR 明确选择了某个权衡并附有文档化的理由,不要翻旧账。仅在出现新证据反驳原有理由时才标记。
|
|
29
|
+
- **不涉及实现细节**: 审查的是*设计*,不是假想的代码。
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## 🔍 三维审查框架
|
|
34
|
+
|
|
35
|
+
### 维度 1: 系统设计 (System Design)
|
|
36
|
+
|
|
37
|
+
**目标**: 验证架构的完整性、一致性和边界清晰度。
|
|
38
|
+
|
|
39
|
+
| # | 检查项 | 关注要点 |
|
|
40
|
+
|---|--------|---------|
|
|
41
|
+
| SD-1 | **架构一致性** | 同一组件在 PRD、Architecture、System Design 中的描述是否矛盾? |
|
|
42
|
+
| SD-2 | **边界清晰度** | 每个系统的职责范围是否明确?是否存在职责重叠? |
|
|
43
|
+
| SD-3 | **依赖合理性** | 系统依赖是否无环?是否存在隐藏耦合? |
|
|
44
|
+
| SD-4 | **接口完整性** | 所有跨系统接口是否完整定义(输入/输出/错误/协议)? |
|
|
45
|
+
| SD-5 | **状态管理** | 系统状态转换是否清晰定义?边缘状态是否处理? |
|
|
46
|
+
| SD-6 | **数据模型完整性** | 实体关系是否跨文档一致?是否存在孤儿实体? |
|
|
47
|
+
|
|
48
|
+
**思考提示**(配合 `sequentialthinking` 使用):
|
|
49
|
+
1. "这个架构背后的核心假设是什么?"
|
|
50
|
+
2. "如果假设 X 不成立,什么会崩?"
|
|
51
|
+
3. "系统边界定义是否存在歧义?"
|
|
52
|
+
4. "接口是否覆盖了所有边界情况?"
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
### 维度 2: 运行模拟 (Runtime Simulation)
|
|
57
|
+
|
|
58
|
+
**目标**: 在脑中"运行"系统,发现时序、状态和并发问题。
|
|
59
|
+
|
|
60
|
+
> 本维度**必须**使用 `sequentialthinking`(3-5 步)。运行时问题藏在序列中。
|
|
61
|
+
|
|
62
|
+
| # | 检查项 | 关注要点 |
|
|
63
|
+
|---|--------|---------|
|
|
64
|
+
| RS-1 | **时序一致性** | 时序模型是否合理?是否存在"必须先于"的矛盾? |
|
|
65
|
+
| RS-2 | **状态同步** | 分布式状态下,副本是否可能发散?最终一致性在这里是否可接受? |
|
|
66
|
+
| RS-3 | **并发处理** | 两个操作冲突时会怎样?是否有解决策略? |
|
|
67
|
+
| RS-4 | **边界条件** | 空状态、满状态、溢出——各自如何处理? |
|
|
68
|
+
| RS-5 | **故障传播** | 组件 A 故障时如何影响 B、C?是否存在级联风险? |
|
|
69
|
+
| RS-6 | **Happy Path 偏见** | 只设计了正常路径?错误/超时/部分失败路径呢? |
|
|
70
|
+
|
|
71
|
+
**思考提示**:
|
|
72
|
+
1. "端到端追踪一个典型操作,经过哪些步骤?"
|
|
73
|
+
2. "每一步产生什么状态变更?什么可能出错?"
|
|
74
|
+
3. "如果两个用户同时做同一件事会怎样?"
|
|
75
|
+
4. "崩溃后 30 秒,系统是什么样子?"
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
### 维度 3: 工程实现 (Engineering Implementation)
|
|
80
|
+
|
|
81
|
+
**目标**: 验证设计可构建、可测试、可维护。
|
|
82
|
+
|
|
83
|
+
> 本维度**必须**使用 `sequentialthinking`(3-5 步)。
|
|
84
|
+
|
|
85
|
+
| # | 检查项 | 关注要点 |
|
|
86
|
+
|---|--------|---------|
|
|
87
|
+
| EI-1 | **可测试性** | 核心逻辑能否被单元测试?是否有 Mock 的接缝? |
|
|
88
|
+
| EI-2 | **可维护性** | 如果需求变更,需要改多少文件? |
|
|
89
|
+
| EI-3 | **性能瓶颈** | 设计中是否隐藏了 N+1 查询、无界循环或 O(n²)? |
|
|
90
|
+
| EI-4 | **安全面** | 认证边界是否清晰?敏感数据静态/传输加密?输入校验? |
|
|
91
|
+
| EI-5 | **可观测性** | 凭设计中的日志/指标方案能否调试生产问题? |
|
|
92
|
+
| EI-6 | **技术栈契合度** | 选定的技术是否真正支持所需功能?版本兼容性? |
|
|
93
|
+
|
|
94
|
+
**思考提示**:
|
|
95
|
+
1. "如何为核心逻辑写单元测试?"
|
|
96
|
+
2. "如果需要修改功能 X,影响范围多大?"
|
|
97
|
+
3. "性能热点在哪?能否后续优化?"
|
|
98
|
+
4. "这个设计暴露了哪些攻击向量?"
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
## 🎚️ 严重度分级
|
|
103
|
+
|
|
104
|
+
| 等级 | 判定标准 | 所需行动 |
|
|
105
|
+
|:----:|---------|---------|
|
|
106
|
+
| **Critical** 🔴 | 根本性矛盾或不可能实现。不解决无法继续。 | P0 — 必须在 blueprint/forge 之前修复 |
|
|
107
|
+
| **High** 🟠 | 大概率导致返工或失败的严重风险。 | P1 — 在 forge 之前修复 |
|
|
108
|
+
| **Medium** 🟡 | 有变通方案的质量隐患。 | P2 — 实现阶段修复 |
|
|
109
|
+
| **Low** 🟢 | 润色项或轻微不一致。 | P3 — 后续跟踪 |
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## 📊 输出格式
|
|
114
|
+
|
|
115
|
+
按以下结构生成发现,适合纳入 `07_CHALLENGE_REPORT.md`:
|
|
116
|
+
|
|
117
|
+
```markdown
|
|
118
|
+
## 🔍 设计审查发现
|
|
119
|
+
|
|
120
|
+
### 摘要
|
|
121
|
+
|
|
122
|
+
| 维度 | 发现数 | Critical | High | Medium | Low |
|
|
123
|
+
|------|:------:|:--------:|:----:|:------:|:---:|
|
|
124
|
+
| 系统设计 | — | — | — | — | — |
|
|
125
|
+
| 运行模拟 | — | — | — | — | — |
|
|
126
|
+
| 工程实现 | — | — | — | — | — |
|
|
127
|
+
| **合计** | **—** | **—** | **—** | **—** | **—** |
|
|
128
|
+
|
|
129
|
+
---
|
|
130
|
+
|
|
131
|
+
### [维度] — [ID]: [标题]
|
|
132
|
+
|
|
133
|
+
**严重度**: Critical / High / Medium / Low
|
|
134
|
+
**文档位置**: [精确的文件和章节引用]
|
|
135
|
+
|
|
136
|
+
**问题**:
|
|
137
|
+
[详细描述,引用具体文档内容]
|
|
138
|
+
|
|
139
|
+
**证据**:
|
|
140
|
+
- 文档分析: [来自 PRD/Architecture/ADR 的具体内容]
|
|
141
|
+
- 推理链: [基于 sequentialthinking 的分析]
|
|
142
|
+
- 类比: [其他系统中的类似已知失败,如适用]
|
|
143
|
+
|
|
144
|
+
**影响**:
|
|
145
|
+
- [不修复会发生什么]
|
|
146
|
+
|
|
147
|
+
**建议**:
|
|
148
|
+
[修复方式,可提供多个选项]
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
153
|
+
## 💡 审查质量清单
|
|
154
|
+
|
|
155
|
+
交付发现前,确认:
|
|
156
|
+
- [ ] 每条发现有具体文档引用(不是笼统的"架构文档")
|
|
157
|
+
- [ ] 每条发现有明确的影响说明
|
|
158
|
+
- [ ] 没有纯猜测性的发现(缺乏推理链条)
|
|
159
|
+
- [ ] Critical/High 发现经过 `sequentialthinking` 验证
|
|
160
|
+
- [ ] ADR 中已记录的权衡被尊重(没有在无新证据的情况下重复质疑)
|
|
161
|
+
- [ ] 发现可操作(审查者能根据建议进行修复)
|
|
@@ -18,6 +18,8 @@ Your job is to kill ambiguity.
|
|
|
18
18
|
* Draft clarifying questions
|
|
19
19
|
3. **Interrogate**: Present questions to user. DO NOT proceed without answers.
|
|
20
20
|
4. **Draft PRD (MANDATORY)**: Use `view_file references/prd_template.md` then `write_to_file` to create `genesis/v{N}/01_PRD.md`.
|
|
21
|
+
5. **Ambiguity Scan (MANDATORY)**: After drafting, run the 10-Dimension Ambiguity Scan (see below). Fix issues inline or mark `[ASSUMPTION]`.
|
|
22
|
+
6. **US Quality Gate (MANDATORY)**: Verify every User Story passes the quality checklist (see below).
|
|
21
23
|
|
|
22
24
|
## 🛑 Mandatory Steps
|
|
23
25
|
Before creating the PRD, you MUST:
|
|
@@ -26,6 +28,11 @@ Before creating the PRD, you MUST:
|
|
|
26
28
|
3. Clarify "Vibe Words" with the user (What does "Fast" mean to you? What does "Modern" imply?).
|
|
27
29
|
4. Use `write_to_file` to save output. DO NOT just print to chat.
|
|
28
30
|
|
|
31
|
+
After creating the PRD, you MUST:
|
|
32
|
+
5. Run the 10-Dimension Ambiguity Scan — fix or mark all `Partial`/`Missing` items.
|
|
33
|
+
6. Verify every User Story has: Priority / 独立可测 / 涉及系统 / 边界情况.
|
|
34
|
+
7. Ensure `[NEEDS CLARIFICATION]` tags ≤ 3 (hard limit). Excess → use reasonable defaults + `[ASSUMPTION]` tag.
|
|
35
|
+
|
|
29
36
|
## ✅ Completion Checklist
|
|
30
37
|
- [ ] PRD file created: `genesis/v{N}/01_PRD.md`
|
|
31
38
|
- [ ] Contains User Stories, Acceptance Criteria, Non-Goals
|
|
@@ -56,3 +63,46 @@ Before creating the PRD, you MUST:
|
|
|
56
63
|
|
|
57
64
|
## 🧰 The Toolkit
|
|
58
65
|
* `references/prd_template.md`: The Product Requirements Document template.
|
|
66
|
+
|
|
67
|
+
## 🔍 10-Dimension Ambiguity Scan
|
|
68
|
+
|
|
69
|
+
After drafting the PRD, you **MUST** systematically scan it against these 10 dimensions. This replaces ad-hoc "any questions?" with a **repeatable, exhaustive** sweep.
|
|
70
|
+
|
|
71
|
+
For each dimension, mark status: `Clear` ✅ / `Partial` ⚠️ / `Missing` ❌
|
|
72
|
+
|
|
73
|
+
| # | Dimension | What to Check | Status |
|
|
74
|
+
|---|-----------|--------------|:------:|
|
|
75
|
+
| 1 | **Functional Scope & Behavior** | Core objectives / success criteria / explicit exclusions / user role distinctions | |
|
|
76
|
+
| 2 | **Domain & Data Model** | Entities, attributes, relationships / uniqueness rules / lifecycle & state transitions / data volume assumptions | |
|
|
77
|
+
| 3 | **Interaction & UX Flow** | Key user journeys / error, empty, loading states / accessibility & i18n | |
|
|
78
|
+
| 4 | **Non-Functional Quality** | Performance / scalability / reliability / observability / security & privacy / compliance | |
|
|
79
|
+
| 5 | **Integration & External** | External service failure modes / import-export formats / protocol version assumptions | |
|
|
80
|
+
| 6 | **Edge Cases & Failure** | Negative scenarios / rate limiting / concurrency conflict resolution | |
|
|
81
|
+
| 7 | **Constraints & Tradeoffs** | Technical constraints / explicit tradeoff records / rejected alternative archives | |
|
|
82
|
+
| 8 | **Terminology Consistency** | Canonical glossary / synonym normalization across PRD | |
|
|
83
|
+
| 9 | **Completion Signals** | Acceptance criteria testability / quantifiable DoD | |
|
|
84
|
+
| 10 | **Placeholders** | TODO markers / unquantified vague adjectives (fast, scalable, secure, intuitive, robust) | |
|
|
85
|
+
|
|
86
|
+
**Rules**:
|
|
87
|
+
- `Partial` or `Missing` items → rank by **Impact × Uncertainty**, pick **top 5** to ask user
|
|
88
|
+
- Ask **one question at a time**; provide your recommended answer; user can accept or customize
|
|
89
|
+
- After user answers → **atomically write** the answer into the corresponding PRD section (never leave contradictory text)
|
|
90
|
+
- **NEEDS CLARIFICATION hard limit ≤ 3** — if more remain, fill with reasonable defaults + `[ASSUMPTION: ...]` tag
|
|
91
|
+
- **Do NOT ask about these reasonable defaults**: industry-standard data retention, standard web/mobile performance expectations, user-friendly error messages with fallbacks, standard session-based or OAuth2 auth
|
|
92
|
+
|
|
93
|
+
## ✅ User Story Quality Gate
|
|
94
|
+
|
|
95
|
+
Every User Story in the PRD **MUST** pass these checks before the PRD is considered complete:
|
|
96
|
+
|
|
97
|
+
| Check | Requirement |
|
|
98
|
+
|-------|------------|
|
|
99
|
+
| **Unique ID** | Has `[REQ-XXX]` identifier for traceability |
|
|
100
|
+
| **Priority** | Marked P0 / P1 / P2 — P0 stories listed first |
|
|
101
|
+
| **独立可测** | Describes how this story can be **independently** demonstrated and verified |
|
|
102
|
+
| **涉及系统** | Lists specific system IDs (must align with `02_ARCHITECTURE_OVERVIEW.md`) |
|
|
103
|
+
| **Acceptance Criteria** | At least 1 Given-When-Then + at least 1 Error Case |
|
|
104
|
+
| **边界情况** | At least 1 boundary condition identified |
|
|
105
|
+
| **No Vibe Words** | No unquantified adjectives (fast → <100ms p99, scalable → support N users) |
|
|
106
|
+
| **User Value** | One sentence describing value to end user |
|
|
107
|
+
|
|
108
|
+
If any User Story fails a check → fix it before delivering the PRD.
|
|
@@ -1,174 +1,177 @@
|
|
|
1
|
-
#
|
|
1
|
+
# 产品需求文档 (PRD) v2.0
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
3
|
+
**项目名称**: [项目名称]
|
|
4
|
+
**功能名称**: [功能/需求名称]
|
|
5
|
+
**文档状态**: 草稿 (Draft) | 评审中 (Review) | 已通过 (Approved)
|
|
6
|
+
**版本号**: 1.0
|
|
7
|
+
**负责人**: [作者名字或 Agent]
|
|
8
|
+
**创建日期**: [YYYY-MM-DD]
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
12
|
-
## 1. Executive Summary
|
|
13
|
-
<!--
|
|
14
|
-
<!-- ⚠️ CRITICAL:
|
|
12
|
+
## 1. 执行摘要 (Executive Summary)
|
|
13
|
+
<!-- 上下文压缩:在 50 字以内说明"为什么做"和"做了什么"。 -->
|
|
14
|
+
<!-- ⚠️ CRITICAL: 这是"电梯演讲",必须控制在 50 字以内。 -->
|
|
15
15
|
|
|
16
|
-
[
|
|
16
|
+
[简明扼要地描述要解决的问题以及所提出的解决方案,请聚焦于核心价值。]
|
|
17
17
|
|
|
18
18
|
---
|
|
19
19
|
|
|
20
|
-
## 2. Background & Context
|
|
21
|
-
<!--
|
|
20
|
+
## 2. 背景与上下文 (Background & Context)
|
|
21
|
+
<!-- 提供充分的业务和背景知识,帮助后续架构和系统设计阶段更好地理解上下文。 -->
|
|
22
22
|
|
|
23
|
-
### 2.1 Problem Statement
|
|
24
|
-
-
|
|
25
|
-
-
|
|
26
|
-
-
|
|
23
|
+
### 2.1 问题陈述 (Problem Statement)
|
|
24
|
+
- **当前痛点**: [用户当前面临的具体问题]
|
|
25
|
+
- **影响范围**: [受影响的用户群体/业务范围]
|
|
26
|
+
- **业务影响**: [对业务的实际影响,例如收入损失、用户流失、效率低下等]
|
|
27
27
|
|
|
28
|
-
### 2.2
|
|
29
|
-
[
|
|
28
|
+
### 2.2 核心机会 (Opportunity)
|
|
29
|
+
[如果成功解决这个问题,能带来什么积极价值?请尽量定量描述。]
|
|
30
30
|
|
|
31
|
-
### 2.3 Reference & Competitors
|
|
32
|
-
<!--
|
|
33
|
-
-
|
|
34
|
-
-
|
|
35
|
-
-
|
|
31
|
+
### 2.3 竞品与参考 (Reference & Competitors) — 可选
|
|
32
|
+
<!-- 了解市场已有的解决方案,避免在成熟领域重新发明轮子。 -->
|
|
33
|
+
- **竞品 A**: [特点、优缺点]
|
|
34
|
+
- **竞品 B**: [特点、优缺点]
|
|
35
|
+
- **我们的护城河**: [与竞品的差异化优势/独特价值]
|
|
36
36
|
|
|
37
37
|
---
|
|
38
38
|
|
|
39
|
-
## 3. Goals & Non-Goals
|
|
39
|
+
## 3. 目标与范围 (Goals & Non-Goals)
|
|
40
40
|
|
|
41
|
-
### 3.1 Goals
|
|
42
|
-
<!-- ⚠️ CRITICAL: 必须使用 SMART 原则 (
|
|
41
|
+
### 3.1 目标 (Goals)
|
|
42
|
+
<!-- ⚠️ CRITICAL: 必须使用 SMART 原则 (明确、可衡量、可实现、相关性强、有时限) -->
|
|
43
43
|
|
|
44
|
-
- **[G1]**: [
|
|
45
|
-
- **[G2]**: [
|
|
44
|
+
- **[G1]**: [可衡量的业务目标,如: 用户登录转化率提升至 95% 以上]
|
|
45
|
+
- **[G2]**: [可衡量的技术目标,如: 列表页 P95 加载时间 < 1.5s]
|
|
46
46
|
|
|
47
|
-
### 3.2 Non-Goals
|
|
48
|
-
<!--
|
|
47
|
+
### 3.2 非目标 (Non-Goals)
|
|
48
|
+
<!-- 明确"不做"什么,这是防止需求蔓延(Scope Creep)的关键。 -->
|
|
49
49
|
|
|
50
|
-
- **[NG1]**: [
|
|
51
|
-
- **[NG2]**: [
|
|
50
|
+
- **[NG1]**: [由于范围限制暂不考虑的功能,如: 第三方 OAuth 快捷登录]
|
|
51
|
+
- **[NG2]**: [属于未来版本规划范围的事项,如: 强制多因素认证 (MFA)]
|
|
52
52
|
|
|
53
53
|
---
|
|
54
54
|
|
|
55
|
-
## 4. User Stories
|
|
56
|
-
<!--
|
|
57
|
-
<!-- ⚠️ CRITICAL: 每个User Story必须有唯一ID [REQ-XXX]
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
* **
|
|
69
|
-
*
|
|
55
|
+
## 4. 用户故事与需求清单 (User Stories)
|
|
56
|
+
<!-- 格式要求: 作为一个 [角色],我想要 [动作],以便于 [价值/收益]。 -->
|
|
57
|
+
<!-- ⚠️ CRITICAL: 每个 User Story 必须有唯一 ID [REQ-XXX],这是整个系统防腐和追溯的核心。 -->
|
|
58
|
+
<!-- ⚠️ CRITICAL: 必须按用户价值优先级排序 (P0 核心路径 → P1 重要体验 → P2 锦上添花)。 -->
|
|
59
|
+
<!-- ⚠️ CRITICAL: 每个 User Story 必须具备独立可测性——完成后可以脱离其他 Story 独立演示。 -->
|
|
60
|
+
|
|
61
|
+
### US-001: [任务标题] [REQ-001] (优先级: P0)
|
|
62
|
+
|
|
63
|
+
* **故事描述**: 作为一个 [角色],我想要 [功能/动作],以便于 [获得的好处]。
|
|
64
|
+
* **用户价值**: [一句话说明该 Story 对于最终目标的核心价值]
|
|
65
|
+
* **独立可测性**: [该任务完成后,测试/产品可以在不依赖其他功能的情况下如何验证?]
|
|
66
|
+
* **涉及系统**: [列出将会涉及的系统 ID,如: `frontend-system`, `backend-api` — 必须与 `02_ARCHITECTURE` 中的名字对齐]
|
|
67
|
+
* **验收标准 (Acceptance Criteria)**:
|
|
68
|
+
* [ ] **Given** [初始上下文], **When** [触发动作], **Then** [预期结果].
|
|
69
|
+
* [ ] **异常处理**: 当 [发生何种异常] 时,系统必须 [具体的回退或提示行为].
|
|
70
|
+
* **边界与极限情况**:
|
|
71
|
+
* [边界条件1 — 如: 超大数据量、断网重连、权限骤变等极端情况如何处理]
|
|
72
|
+
* [边界条件2]
|
|
73
|
+
|
|
74
|
+
### US-002: [任务标题] [REQ-002] (优先级: P1)
|
|
75
|
+
|
|
76
|
+
* **故事描述**: ...
|
|
77
|
+
* **用户价值**: ...
|
|
78
|
+
* **独立可测性**: ...
|
|
79
|
+
* **涉及系统**: ...
|
|
80
|
+
* **验收标准 (Acceptance Criteria)**:
|
|
70
81
|
* [ ] ...
|
|
71
|
-
*
|
|
82
|
+
* **边界与极限情况**:
|
|
83
|
+
* ...
|
|
72
84
|
|
|
73
|
-
<!--
|
|
85
|
+
<!-- 根据需求规模继续添加 User Stories... -->
|
|
74
86
|
|
|
75
87
|
---
|
|
76
88
|
|
|
77
|
-
## 5. User Experience
|
|
78
|
-
<!--
|
|
89
|
+
## 5. 用户体验与设计 (User Experience) — 可选
|
|
90
|
+
<!-- 提供关键的用户交互设计指引,为前端/客户端的设计系统建立边界。 -->
|
|
79
91
|
|
|
80
|
-
### 5.1 Key User Flows
|
|
81
|
-
<!--
|
|
92
|
+
### 5.1 关键用户旅程 (Key User Flows)
|
|
93
|
+
<!-- 【推荐】使用 Mermaid 流程图直观表达主体业务流程。 -->
|
|
82
94
|
|
|
83
95
|
```mermaid
|
|
84
|
-
|
|
85
|
-
A[用户访问登录页] --> B[
|
|
86
|
-
B --> C{
|
|
87
|
-
C
|
|
88
|
-
C
|
|
96
|
+
flowchart TD
|
|
97
|
+
A[用户访问登录页] --> B[输入邮箱与密码]
|
|
98
|
+
B --> C{后端服务认证}
|
|
99
|
+
C -->|校验成功| D[跳转 Dashboard 首页]
|
|
100
|
+
C -->|校验失败| E[输入框下方抛出错误指引]
|
|
89
101
|
E --> B
|
|
90
102
|
```
|
|
91
103
|
|
|
92
|
-
### 5.2 Design Guidelines
|
|
93
|
-
-
|
|
94
|
-
-
|
|
95
|
-
-
|
|
104
|
+
### 5.2 交互规范 (Design Guidelines)
|
|
105
|
+
- **视觉风格**: [现代化、极简、严肃专业等]
|
|
106
|
+
- **响应模式**: [对页面加载骨架屏、按钮 Loading 状态等的要求]
|
|
107
|
+
- **平台兼容**: [仅限 Web 端,是否需要兼顾移动/平板自适应?]
|
|
96
108
|
|
|
97
109
|
---
|
|
98
110
|
|
|
99
|
-
## 6. Constraint Analysis
|
|
100
|
-
<!--
|
|
101
|
-
<!-- ⭐ 增强: 分类更详细,便于后续System Design继承约束 -->
|
|
111
|
+
## 6. 约束与限制 (Constraint Analysis)
|
|
112
|
+
<!-- 约束决定了技术选型的天花板。来自于 /scout 报告或立项时的不可抗力。 -->
|
|
102
113
|
|
|
103
|
-
### 6.1 Technical Constraints
|
|
104
|
-
*
|
|
105
|
-
*
|
|
106
|
-
*
|
|
114
|
+
### 6.1 技术约束 (Technical Constraints)
|
|
115
|
+
* **遗留系统**: [例如: 必须兼容老版本的 MySQL 5.7 表结构]
|
|
116
|
+
* **性能底线**: [例如: API 响应时间 P95 < 200ms]
|
|
117
|
+
* **扩展性预期**: [例如: 设计上需要支撑 10 万并发在线]
|
|
107
118
|
|
|
108
|
-
### 6.2 Security & Compliance
|
|
109
|
-
*
|
|
110
|
-
*
|
|
111
|
-
*
|
|
119
|
+
### 6.2 安全与合规 (Security & Compliance)
|
|
120
|
+
* **数据安全**: [例如: 日志中绝对不可包含明文 PII 信息]
|
|
121
|
+
* **网络要求**: [例如: 强制全站 HTTPS / API 仅内网可访]
|
|
122
|
+
* **合规审核**: [例如: 满足当地数据出境要求 / 通过特定等保审核]
|
|
112
123
|
|
|
113
|
-
### 6.3 Time &
|
|
114
|
-
*
|
|
115
|
-
*
|
|
116
|
-
* **Team**: [团队规模和技能] - 可选
|
|
124
|
+
### 6.3 时间与资源 (Time & Resources)
|
|
125
|
+
* **交付死线**: [硬性 Deadline,如: 2026-03-01 必须全量上线]
|
|
126
|
+
* **其他限制**: [如依赖外部供应商接口的对接进度等]
|
|
117
127
|
|
|
118
128
|
---
|
|
119
129
|
|
|
120
|
-
## 7. Success Metrics
|
|
121
|
-
<!--
|
|
130
|
+
## 7. 成功指标 (Success Metrics) — 可选
|
|
131
|
+
<!-- 如何在功能上线后衡量我们的成功? -->
|
|
122
132
|
|
|
123
|
-
| Metric | Target | Measurement Method |
|
|
124
|
-
|
|
125
|
-
|
|
|
126
|
-
|
|
|
127
|
-
| 用户满意度 (NPS) | > 4.5/5 | 用户调研 |
|
|
133
|
+
| 核心指标 (Metric) | 目标值 (Target) | 测量方式 (Measurement Method) |
|
|
134
|
+
| ----------------- | --------------- | ----------------------------- |
|
|
135
|
+
| 业务: 注册转化率 | > 45% | 数据看板/漏斗分析 |
|
|
136
|
+
| 性能: 接口成功率 | > 99.9% | APM 监控告警 |
|
|
128
137
|
|
|
129
138
|
---
|
|
130
139
|
|
|
131
|
-
## 8. Definition of Done
|
|
140
|
+
## 8. 完成标准 (Definition of Done)
|
|
141
|
+
<!-- 所有任务合并到主分支发布前,必须 100% 勾选的检查清单。 -->
|
|
132
142
|
|
|
133
|
-
* [ ]
|
|
134
|
-
* [ ]
|
|
135
|
-
* [ ]
|
|
136
|
-
* [ ]
|
|
137
|
-
* [ ]
|
|
138
|
-
* [ ]
|
|
139
|
-
* [ ]
|
|
140
|
-
* [ ] User acceptance testing (UAT) completed.
|
|
143
|
+
* [ ] 所有的验收标准 (AC) 全部测试通过。
|
|
144
|
+
* [ ] 包含足够的自动化单元测试 (行覆盖率 > 80%) 并且 CI 绿灯。
|
|
145
|
+
* [ ] 集成测试/E2E 关键路径全部顺畅。
|
|
146
|
+
* [ ] 代码 Lint 及格式化审查均无警告。
|
|
147
|
+
* [ ] 已更新相关技术文档 (如 OpenAPI 接口文档、Wiki 知识库)。
|
|
148
|
+
* [ ] 性能与安全隐患已经过 Review (若有前述相关的约束要求)。
|
|
149
|
+
* [ ] 产品验收环节 (UAT) 已通过。
|
|
141
150
|
|
|
142
151
|
---
|
|
143
152
|
|
|
144
|
-
## 9.
|
|
153
|
+
## 9. 附录 (Appendix) — 可选
|
|
145
154
|
|
|
146
|
-
### 9.1
|
|
147
|
-
- **[
|
|
148
|
-
- **[
|
|
155
|
+
### 9.1 术语表 (Glossary)
|
|
156
|
+
- **[首字母缩写/术语 1]**: [明确定义,避免跨团队沟通歧义]
|
|
157
|
+
- **[术语 2]**: [定义]
|
|
149
158
|
|
|
150
|
-
### 9.2
|
|
151
|
-
- [
|
|
152
|
-
- [
|
|
153
|
-
|
|
154
|
-
### 9.3 Change Log (变更日志)
|
|
155
|
-
| Version | Date | Changes | Author |
|
|
156
|
-
|---------|------|---------|--------|
|
|
157
|
-
| 1.0 | 2026-01-08 | Initial version | XXX |
|
|
159
|
+
### 9.2 参考资料 (References)
|
|
160
|
+
- [URL 1]
|
|
161
|
+
- [URL 2]
|
|
158
162
|
|
|
159
163
|
---
|
|
160
164
|
|
|
161
165
|
<!-- ⚠️ CRITICAL 使用指南 -->
|
|
162
166
|
<!--
|
|
163
|
-
**PRD撰写原则 (
|
|
164
|
-
1.
|
|
165
|
-
2.
|
|
166
|
-
3.
|
|
167
|
-
4.
|
|
168
|
-
5. **追溯链**: 每个User Story有唯一ID [REQ-XXX]
|
|
167
|
+
**PRD 撰写原则 (精益规格要求)**:
|
|
168
|
+
1. **去冗存精**: 抵制长篇大论,整个文档建议控制在阅读时间 10 分钟以内。
|
|
169
|
+
2. **执行摘要 < 50字**: 用最少的话讲明白核心价值。
|
|
170
|
+
3. **独立性**: User Story 粒度必须控制在"可单独交付验证"的级别。
|
|
171
|
+
4. **追溯链 (Traceability)**: [REQ-XXX] 编号是神圣不可侵犯的,将贯穿架构、任务和代码。
|
|
169
172
|
|
|
170
173
|
**章节使用指南**:
|
|
171
174
|
- **必需章节**: 1, 2.1, 3, 4, 6, 8
|
|
172
175
|
- **可选章节**: 2.3 (竞品分析), 5 (UX设计), 7 (成功指标), 9 (附录)
|
|
173
|
-
-
|
|
176
|
+
- **小型功能/迭代**: 可大胆删除 2.3, 5, 7, 9,保留骨架即可。
|
|
174
177
|
-->
|