@haaaiawd/anws 1.0.0

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.
Files changed (43) hide show
  1. package/README.md +96 -0
  2. package/bin/cli.js +76 -0
  3. package/lib/copy.js +38 -0
  4. package/lib/index.js +8 -0
  5. package/lib/init.js +139 -0
  6. package/lib/manifest.js +53 -0
  7. package/lib/output.js +74 -0
  8. package/lib/update.js +85 -0
  9. package/package.json +36 -0
  10. package/templates/.agent/rules/agents.md +90 -0
  11. package/templates/.agent/skills/build-inspector/SKILL.md +83 -0
  12. package/templates/.agent/skills/complexity-guard/SKILL.md +71 -0
  13. package/templates/.agent/skills/complexity-guard/references/anti_patterns.md +21 -0
  14. package/templates/.agent/skills/concept-modeler/SKILL.md +112 -0
  15. package/templates/.agent/skills/concept-modeler/prompts/GLOSSARY_PROMPT.md +40 -0
  16. package/templates/.agent/skills/concept-modeler/references/ENTITY_EXTRACTION_PROMPT.md +299 -0
  17. package/templates/.agent/skills/concept-modeler/scripts/glossary_gen.py +66 -0
  18. package/templates/.agent/skills/git-forensics/SKILL.md +74 -0
  19. package/templates/.agent/skills/git-forensics/references/ANALYSIS_METHODOLOGY.md +193 -0
  20. package/templates/.agent/skills/git-forensics/scripts/git_forensics.py +615 -0
  21. package/templates/.agent/skills/git-forensics/scripts/git_hotspots.py +118 -0
  22. package/templates/.agent/skills/report-template/SKILL.md +88 -0
  23. package/templates/.agent/skills/report-template/references/REPORT_TEMPLATE.md +100 -0
  24. package/templates/.agent/skills/runtime-inspector/SKILL.md +93 -0
  25. package/templates/.agent/skills/spec-writer/SKILL.md +58 -0
  26. package/templates/.agent/skills/spec-writer/references/prd_template.md +174 -0
  27. package/templates/.agent/skills/system-architect/SKILL.md +620 -0
  28. package/templates/.agent/skills/system-architect/references/rfc_template.md +59 -0
  29. package/templates/.agent/skills/system-designer/SKILL.md +439 -0
  30. package/templates/.agent/skills/system-designer/references/system-design-template.md +533 -0
  31. package/templates/.agent/skills/task-planner/SKILL.md +474 -0
  32. package/templates/.agent/skills/task-planner/references/TASK_TEMPLATE.md +133 -0
  33. package/templates/.agent/skills/tech-evaluator/SKILL.md +135 -0
  34. package/templates/.agent/skills/tech-evaluator/references/ADR_TEMPLATE.md +68 -0
  35. package/templates/.agent/workflows/blueprint.md +185 -0
  36. package/templates/.agent/workflows/challenge.md +467 -0
  37. package/templates/.agent/workflows/change.md +294 -0
  38. package/templates/.agent/workflows/craft.md +626 -0
  39. package/templates/.agent/workflows/design-system.md +497 -0
  40. package/templates/.agent/workflows/explore.md +307 -0
  41. package/templates/.agent/workflows/forge.md +354 -0
  42. package/templates/.agent/workflows/genesis.md +265 -0
  43. package/templates/.agent/workflows/scout.md +130 -0
@@ -0,0 +1,620 @@
1
+ ---
2
+ name: system-architect
3
+ description: 识别项目中的独立系统,定义系统边界。产出系统架构总览,为后续系统设计奠定基础。
4
+ ---
5
+
6
+ # 系统拆解手册 (System Decomposition Manual)
7
+
8
+ > "Good architecture is less about building the perfect system,
9
+ > and more about dividing the problem into the right systems."
10
+
11
+ 你是一位**系统架构师**,专注于**识别和拆解系统**。
12
+ 你的目标是找到项目中的独立系统,定义清晰的边界。
13
+
14
+ ---
15
+
16
+ ## ⚠️ 强制深度思考
17
+
18
+ > [!IMPORTANT]
19
+ > 在进行拆解之前,你**必须**调用 `sequential thinking` 工具,视复杂情况进行 **3—7 步**推理。
20
+ > 思考内容例如:
21
+ > 1. "这个系统是否可以合并到另一个系统?"
22
+ > 2. "拆分是否真正带来价值(独立部署、技术栈差异)?"
23
+ > 3. "如果未来业务增长 10 倍,现在的边界是否还能维持?" (演进路线推演)
24
+
25
+ ---
26
+
27
+ ## ⚠️ 核心原则
28
+
29
+ > [!IMPORTANT]
30
+ > **系统拆解的三大原则**:
31
+ >
32
+ > 1. **关注点分离** - 每个系统聚焦单一职责
33
+ > 2. **边界清晰** - 明确输入输出,避免职责模糊
34
+ > 3. **适度拆分** - 不过度拆分(>10个系统),也不过度聚合(1个系统)
35
+
36
+ ❌ **错误做法**:
37
+ - 过度拆分:把每个功能都拆成独立系统
38
+ - 过度聚合:所有功能都塞在一个"大系统"
39
+ - 边界模糊:系统之间职责重叠
40
+ - 忽略技术栈差异:前端和后端混在一起
41
+
42
+ ✅ **正确做法**:
43
+ - **按技术栈拆分** - 前端、后端、数据库通常是独立系统
44
+ - **按部署单元拆分** - 可以独立部署的部分应该是独立系统
45
+ - **按职责拆分** - 业务逻辑、数据处理、外部集成应该分离
46
+ - **按变化频率拆分** - 变化频繁和稳定的部分应该分离
47
+
48
+ ---
49
+
50
+ ## 🎯 系统识别框架:6个维度
51
+
52
+ 使用以下6个维度识别项目中的系统:
53
+
54
+ ### 1. 用户接触点 (User Touchpoints)
55
+ **问题**: "用户如何与系统交互?"
56
+
57
+ **常见系统**:
58
+ - Web前端 (frontend-system)
59
+ - 移动端 (mobile-system)
60
+ - CLI工具 (cli-system)
61
+ - API网关 (api-gateway)
62
+
63
+ **示例**:
64
+ ```
65
+ 如果项目有:
66
+ - React Web应用 → Web Frontend System
67
+ - React Native移动端 → Mobile System
68
+ → 识别为2个系统(不同技术栈和部署)
69
+ ```
70
+
71
+ ---
72
+
73
+ ### 2. 数据存储 (Data Storage)
74
+ **问题**: "数据存储在哪里?如何组织?"
75
+
76
+ **常见系统**:
77
+ - 主数据库 (database-system)
78
+ - 缓存层 (cache-system)
79
+ - 对象存储 (storage-system)
80
+ - 搜索引擎 (search-system)
81
+
82
+ **示例**:
83
+ ```
84
+ 如果项目有:
85
+ - PostgreSQL主库
86
+ - Redis缓存
87
+ - S3对象存储
88
+ → 可以识别为Database System(包含PostgreSQL+Redis)
89
+ → 对象存储通常是外部服务,不算独立系统
90
+ ```
91
+
92
+ ---
93
+
94
+ ### 3. 核心业务逻辑 (Business Logic)
95
+ **问题**: "核心业务处理在哪里发生?"
96
+
97
+ **常见系统**:
98
+ - 后端API (backend-api-system)
99
+ - 多智能体系统 (agent-system)
100
+ - 数据处理管道 (pipeline-system)
101
+ - 批处理任务 (batch-system)
102
+
103
+ **示例**:
104
+ ```
105
+ 如果项目有:
106
+ - FastAPI后端处理业务逻辑
107
+ - LangGraph多智能体系统
108
+ → 识别为2个系统(职责不同)
109
+ ```
110
+
111
+ ---
112
+
113
+ ### 4. 外部集成 (External Integrations)
114
+ **问题**: "需要与哪些外部系统集成?"
115
+
116
+ **常见系统**:
117
+ - 认证服务 (auth-integration)
118
+ - 支付系统 (payment-integration)
119
+ - 通知系统 (notification-system)
120
+ - LLM API调用 (llm-integration)
121
+
122
+ **示例**:
123
+ ```
124
+ 如果项目需要:
125
+ - OAuth第三方登录
126
+ - Stripe支付
127
+ → 通常作为Backend System的一部分,不单独拆分
128
+ → 除非集成逻辑非常复杂
129
+ ```
130
+
131
+ ---
132
+
133
+ ### 5. 部署单元 (Deployment Units)
134
+ **问题**: "哪些部分可以独立部署?"
135
+
136
+ **常见系统**:
137
+ - 前端静态资源 (部署到CDN)
138
+ - 后端服务 (部署到容器)
139
+ - Worker进程 (部署到队列处理器)
140
+
141
+ **示例**:
142
+ ```
143
+ 如果部署架构是:
144
+ - 前端 → Vercel
145
+ - 后端 → AWS ECS
146
+ - Worker → Celery
147
+ → 3个独立部署单元 = 3个潜在系统
148
+ ```
149
+
150
+ ---
151
+
152
+ ### 6. 技术栈 (Technology Stack)
153
+ **问题**: "不同部分使用的技术栈是什么?"
154
+
155
+ **常见系统**:
156
+ - React前端
157
+ - Python后端
158
+ - PostgreSQL数据库
159
+ - Redis缓存
160
+
161
+ **示例**:
162
+ ```
163
+ 如果技术栈包含:
164
+ - React + Vite
165
+ - Python + FastAPI
166
+ - PostgreSQL
167
+ → 至少3个系统(技术栈完全不同)
168
+ ```
169
+
170
+ ---
171
+
172
+ ## 📋 输出格式:Architecture Overview 模板
173
+
174
+ 使用以下结构产出 `genesis/v{N}/02_ARCHITECTURE_OVERVIEW.md`:
175
+
176
+ ```markdown
177
+ # 系统架构总览 (Architecture Overview)
178
+
179
+ **项目**: [Project Name]
180
+ **版本**: 1.0
181
+ **日期**: [YYYY-MM-DD]
182
+
183
+ ---
184
+
185
+ ## 1. 系统上下文 (System Context)
186
+
187
+ ### 1.1 C4 Level 1 - 系统上下文图
188
+
189
+ [使用Mermaid绘制系统与用户、外部系统的交互]
190
+
191
+ \`\`\`mermaid
192
+ graph TD
193
+ User[用户] -->|HTTP| WebApp[Web应用]
194
+ WebApp -->|API| Backend[后端服务]
195
+ Backend -->|Query| DB[(数据库)]
196
+ Backend -->|Call| LLM[LLM API]
197
+ \`\`\`
198
+
199
+ ### 1.2 关键用户 (Key Users)
200
+ - **终端用户**: 使用Web界面的用户
201
+ - **管理员**: 管理系统配置的用户
202
+ - ...
203
+
204
+ ### 1.3 外部系统 (External Systems)
205
+ - **LLM API**: OpenAI / Anthropic
206
+ - **认证服务**: Auth0 / OAuth
207
+ - ...
208
+
209
+ ---
210
+
211
+ ## 2. 系统清单 (System Inventory)
212
+
213
+ ### System 1: Frontend UX System
214
+ **系统ID**: `frontend-system`
215
+
216
+ **职责 (Responsibility)**:
217
+ - 用户界面展示与交互
218
+ - API调用封装
219
+ - 客户端状态管理
220
+
221
+ **边界 (Boundary)**:
222
+ - **输入**: 用户操作(点击、输入)
223
+ - **输出**: HTTP API请求
224
+ - **依赖**: backend-api-system
225
+
226
+ **关联需求**: [REQ-001] 用户登录, [REQ-002] Dashboard展示
227
+
228
+ **技术栈**:
229
+ - Framework: React 18
230
+ - Build Tool: Vite
231
+ - Styling: TailwindCSS
232
+ - State: Context API / Zustand
233
+
234
+ **设计文档**: `04_SYSTEM_DESIGN/frontend-system.md` (待创建)
235
+
236
+ ---
237
+
238
+ ### System 2: Backend API System
239
+ **系统ID**: `backend-api-system`
240
+
241
+ **职责 (Responsibility)**:
242
+ - REST API服务
243
+ - 业务逻辑处理
244
+ - 数据库交互
245
+
246
+ **边界 (Boundary)**:
247
+ - **输入**: HTTP请求 (JSON)
248
+ - **输出**: HTTP响应 (JSON)
249
+ - **依赖**: database-system, agent-system
250
+
251
+ **关联需求**: [REQ-001] 用户登录, [REQ-003] 数据查询
252
+
253
+ **技术栈**:
254
+ - Framework: FastAPI
255
+ - Language: Python 3.11
256
+ - ORM: SQLAlchemy
257
+ - Auth: JWT
258
+
259
+ **设计文档**: `04_SYSTEM_DESIGN/backend-api-system.md` (待创建)
260
+
261
+ ---
262
+
263
+ ### System 3: Database System
264
+ **系统ID**: `database-system`
265
+
266
+ **职责 (Responsibility)**:
267
+ - 数据持久化
268
+ - 数据查询与索引
269
+ - 数据备份与恢复
270
+
271
+ **边界 (Boundary)**:
272
+ - **输入**: SQL查询
273
+ - **输出**: 查询结果
274
+ - **依赖**: 无(基础设施)
275
+
276
+ **关联需求**: 所有需要数据存储的需求
277
+
278
+ **技术栈**:
279
+ - Database: PostgreSQL 15
280
+ - Cache: Redis 7
281
+ - ORM: SQLAlchemy
282
+
283
+ **设计文档**: `04_SYSTEM_DESIGN/database-system.md` (待创建)
284
+
285
+ ---
286
+
287
+ [继续列出其他系统...]
288
+
289
+ ---
290
+
291
+ ## 3. 系统边界矩阵 (System Boundary Matrix)
292
+
293
+ | 系统 | 输入 | 输出 | 依赖系统 | 被依赖系统 | 关联需求 |
294
+ |------|------|------|---------|----------|---------|
295
+ | Frontend | 用户操作 | HTTP请求 | Backend API | - | [REQ-001], [REQ-002] |
296
+ | Backend API | HTTP请求 | JSON响应 | Database, Agent | Frontend | [REQ-001], [REQ-003] |
297
+ | Database | SQL查询 | 查询结果 | - | Backend API, Agent | All |
298
+ | Agent System | 任务请求 | 执行结果 | Database, LLM API | Backend API | [REQ-005] |
299
+
300
+ ---
301
+
302
+ ## 4. 系统依赖图 (System Dependency Graph)
303
+
304
+ \`\`\`mermaid
305
+ graph TD
306
+ Frontend[Frontend System] -->|API Call| Backend[Backend API System]
307
+ Backend -->|Query| DB[Database System]
308
+ Backend -->|Invoke| Agent[Agent System]
309
+ Agent -->|Query| DB
310
+ Agent -->|Call| LLM[LLM API - External]
311
+
312
+ style Frontend fill:#e1f5ff
313
+ style Backend fill:#fff4e1
314
+ style DB fill:#e1ffe1
315
+ style Agent fill:#ffe1f5
316
+ \`\`\`
317
+
318
+ **依赖关系说明**:
319
+ - Frontend依赖Backend(前后端分离架构)
320
+ - Backend是核心枢纽,协调Database和Agent
321
+ - Agent独立完成推理任务,但需要Database支持
322
+
323
+ ---
324
+
325
+ ## 5. 技术栈总览 (Technology Stack Overview)
326
+
327
+ | Layer | Technology | Used By |
328
+ |-------|-----------|---------|
329
+ | **Frontend** | React, Vite, TailwindCSS | Frontend System |
330
+ | **Backend** | Python, FastAPI, SQLAlchemy | Backend API System |
331
+ | **Database** | PostgreSQL, Redis | Database System |
332
+ | **Agent** | LangGraph, OpenAI | Agent System |
333
+ | **Infrastructure** | Docker, Kubernetes | All Systems |
334
+
335
+ ---
336
+
337
+ ## 6. 拆分原则与理由 (Decomposition Rationale)
338
+
339
+ ### 为什么拆分为这些系统?
340
+
341
+ **技术栈维度**:
342
+ - Frontend (React) vs Backend (Python) → 技术栈完全不同,必须分离
343
+
344
+ **部署维度**:
345
+ - Frontend (静态部署CDN) vs Backend (容器部署) → 部署方式不同
346
+
347
+ **职责维度**:
348
+ - Backend API (业务逻辑) vs Agent (推理逻辑) → 职责独立,可并行开发
349
+
350
+ **变化频率**:
351
+ - Frontend (UI变化频繁) vs Database Schema (相对稳定) → 分离便于独立演进
352
+
353
+ ### 为什么不进一步拆分?
354
+
355
+ **Frontend为什么不拆分为多个系统?**
356
+ - 虽然有多个页面,但共享状态和组件,拆分会增加复杂度
357
+
358
+ **Backend为什么不拆成微服务?**
359
+ - 当前规模不需要,Modular Monolith足够
360
+ - 可以通过模块化代码结构实现关注点分离
361
+
362
+ ---
363
+
364
+ ## 7. 系统复杂度评估 (Complexity Assessment)
365
+
366
+ **系统数量**: 4个系统
367
+
368
+ **评估**:
369
+ - ✅ 数量合理 (< 10)
370
+ - ✅ 边界清晰
371
+ - ✅ 依赖关系简单(无循环依赖)
372
+
373
+ **潜在风险**:
374
+ - Backend API可能成为瓶颈(协调多个系统)
375
+ - 未来可能需要拆分Backend(当代码量 > 50K行时)
376
+
377
+ ---
378
+
379
+ ## 8. 下一步行动 (Next Steps)
380
+
381
+ ### 为每个系统设计详细文档
382
+
383
+ 运行以下命令为每个系统创建设计文档:
384
+
385
+ \`\`\`bash
386
+ /design-system frontend-system
387
+ /design-system backend-api-system
388
+ /design-system database-system
389
+ /design-system agent-system
390
+ \`\`\`
391
+
392
+ ### 所有系统设计完成后
393
+
394
+ 运行任务拆解:
395
+ \`\`\`bash
396
+ /blueprint
397
+ \`\`\`
398
+ ```
399
+
400
+ ---
401
+
402
+ ## 🛡️ 拆解守则
403
+
404
+ ### 守则1: 不要过度拆分
405
+ **规则**: 系统数量通常 < 10个。
406
+
407
+ **为什么?** 过度拆分增加通信成本和复杂度。
408
+
409
+ **检查问题**:
410
+ - "这个系统是否可以合并到另一个系统?"
411
+ - "拆分是否真正带来价值(独立部署、技术栈差异)?"
412
+
413
+ **示例**:
414
+ ```
415
+ ❌ 错误: 把每个API端点拆成独立系统
416
+ ✅ 正确: 所有API端点属于Backend API System
417
+ ```
418
+
419
+ ---
420
+
421
+ ### 守则2: 不要过度聚合
422
+ **规则**: 前端、后端、数据库通常是独立系统。
423
+
424
+ **为什么?** 技术栈和部署方式不同,应该分离。
425
+
426
+ **检查问题**:
427
+ - "这两个部分的技术栈是否完全不同?"
428
+ - "它们是否在不同时间、由不同团队部署?"
429
+
430
+ **示例**:
431
+ ```
432
+ ❌ 错误: React前端和Python后端合并为"Web System"
433
+ ✅ 正确: 拆分为Frontend System和Backend System
434
+ ```
435
+
436
+ ---
437
+
438
+ ### 守则3: 边界必须清晰
439
+ **规则**: 每个系统的输入输出必须明确定义。
440
+
441
+ **为什么?** 边界模糊会导致职责重叠和依赖混乱。
442
+
443
+ **检查问题**:
444
+ - "这个系统接收什么输入?"
445
+ - "这个系统产出什么输出?"
446
+ - "输入输出的数据格式是什么?"
447
+
448
+ **示例**:
449
+ ```
450
+ ✅ 好的边界定义:
451
+ Frontend System:
452
+ - 输入: 用户操作 (MouseEvent, KeyboardEvent)
453
+ - 输出: HTTP请求 (JSON格式的API调用)
454
+
455
+ ❌ 模糊的边界:
456
+ Frontend System:
457
+ - 输入: 用户的东西
458
+ - 输出: 数据
459
+ ```
460
+
461
+ ---
462
+
463
+ ### 守则4: 使用C4模型可视化
464
+ **规则**: 必须使用Mermaid绘制系统上下文图和依赖图。
465
+
466
+ **为什么?** 一图胜千言,可视化帮助理解。
467
+
468
+ **Mermaid示例**:
469
+ ```mermaid
470
+ graph TD
471
+ User[用户] -->|使用| Frontend[Frontend System]
472
+ Frontend -->|API| Backend[Backend System]
473
+ Backend -->|数据| DB[(Database System)]
474
+ ```
475
+
476
+ ---
477
+
478
+ ## 🧰 工具箱
479
+
480
+ ### 工具1: 系统识别Checklist
481
+ 在拆解系统前,使用此Checklist:
482
+
483
+ - [ ] 识别所有用户接触点(Web、移动、CLI)
484
+ - [ ] 识别所有数据存储(数据库、缓存、对象存储)
485
+ - [ ] 识别核心业务逻辑位置(后端、Agent、批处理)
486
+ - [ ] 识别外部集成(支付、认证、LLM)
487
+ - [ ] 识别部署单元(前端静态、后端容器、Worker)
488
+ - [ ] 识别技术栈差异(React、Python、PostgreSQL)
489
+
490
+ ---
491
+
492
+ ### 工具2: Architecture Overview模板
493
+ - **路径**: 参考上面的"输出格式"章节
494
+ - **包含**: 系统清单、边界矩阵、依赖图
495
+
496
+ ---
497
+
498
+ ### 工具3: Mermaid图表
499
+ **系统上下文图** (C4 Level 1):
500
+ ```mermaid
501
+ graph TD
502
+ User -->|使用| System
503
+ System -->|调用| External
504
+ ```
505
+
506
+ **系统依赖图**:
507
+ ```mermaid
508
+ graph LR
509
+ A[System A] --> B[System B]
510
+ B --> C[System C]
511
+ ```
512
+
513
+ ---
514
+
515
+ ## 💡 常见场景与模式
516
+
517
+ ### 场景1: 简单的Web应用
518
+ **特征**: 前端 + 后端 + 数据库
519
+
520
+ **推荐拆分**:
521
+ - Frontend System (React)
522
+ - Backend API System (FastAPI)
523
+ - Database System (PostgreSQL)
524
+
525
+ **总计**: 3个系统
526
+
527
+ ---
528
+
529
+ ### 场景2: 带AI功能的Web应用
530
+ **特征**: 前端 + 后端 + 数据库 + AI Agent
531
+
532
+ **推荐拆分**:
533
+ - Frontend System
534
+ - Backend API System
535
+ - Agent System (LangGraph)
536
+ - Database System
537
+
538
+ **总计**: 4个系统
539
+
540
+ ---
541
+
542
+ ### 场景3: 复杂的企业应用
543
+ **特征**: 多端 + 后端 + 数据库 + 搜索 + 队列
544
+
545
+ **推荐拆分**:
546
+ - Web Frontend System
547
+ - Mobile System
548
+ - Backend API System
549
+ - Database System
550
+ - Search System (Elasticsearch)
551
+ - Worker System (Celery)
552
+
553
+ **总计**: 6个系统
554
+
555
+ ---
556
+
557
+ ## 📊 质量检查清单
558
+
559
+ 完成Architecture Overview后,使用此清单自检:
560
+
561
+ ### 系统数量
562
+ - [ ] 系统数量 3-10 个(通常范围)
563
+ - [ ] 没有过度拆分(每个功能一个系统)
564
+ - [ ] 没有过度聚合(所有功能一个系统)
565
+
566
+ ### 系统边界
567
+ - [ ] 每个系统有清晰的输入输出定义
568
+ - [ ] 每个系统的职责明确且单一
569
+ - [ ] 系统之间没有职责重叠
570
+
571
+ ### 依赖关系
572
+ - [ ] 无循环依赖
573
+ - [ ] 依赖关系清晰可视化(Mermaid图)
574
+ - [ ] 每个系统的依赖 < 5个(避免过度耦合)
575
+
576
+ ### 文档完整性
577
+ - [ ] 有系统上下文图 (C4 Level 1)
578
+ - [ ] 每个系统有详细的清单条目
579
+ - [ ] 有系统边界矩阵
580
+ - [ ] 有系统依赖图
581
+ - [ ] 有拆分原则与理由说明
582
+
583
+ ---
584
+
585
+ ## 🚀 快速上手示例
586
+
587
+ **任务**: 为一个Todo应用拆解系统
588
+
589
+ **Step 1: 应用6维度框架**
590
+ - 用户接触点: Web界面
591
+ - 数据存储: PostgreSQL
592
+ - 业务逻辑: FastAPI后端
593
+ - 外部集成: 无
594
+ - 部署单元: 前端CDN, 后端容器
595
+ - 技术栈: React, Python, PostgreSQL
596
+
597
+ **Step 2: 识别系统**
598
+ - Frontend System (React)
599
+ - Backend API System (FastAPI)
600
+ - Database System (PostgreSQL)
601
+
602
+ **Step 3: 定义边界**
603
+ - Frontend: 输入用户操作 → 输出API请求
604
+ - Backend: 输入HTTP请求 → 输出JSON响应
605
+ - Database: 输入SQL查询 → 输出数据
606
+
607
+ **Step 4: 绘制依赖图**
608
+ ```
609
+ Frontend → Backend → Database
610
+ ```
611
+
612
+ **Step 5: 产出Architecture Overview**
613
+ 使用模板填充内容 → 保存到 `genesis/v{N}/02_ARCHITECTURE_OVERVIEW.md`
614
+
615
+ ---
616
+
617
+ **记住**: 好的系统拆解是平衡的艺术。
618
+ 不要过度拆分(微服务陷阱),也不要过度聚合(大泥球)。
619
+
620
+ Happy Architecting! 🏗️
@@ -0,0 +1,59 @@
1
+ # Request for Comments (RFC) / Technical Spec
2
+
3
+ **PRD Reference**: [Link to PRD]
4
+ **Feature**: [Feature Name]
5
+ **Status**: Draft
6
+
7
+ ## 1. High-Level Design
8
+ ### Architecture Diagram (Mermaid)
9
+ <!-- Use Mermaid to show data flow -->
10
+ ```mermaid
11
+ graph TD
12
+ A[User] -->|Action| B(Component)
13
+ B -->|API Call| C{Service}
14
+ ```
15
+
16
+ ### Component Hierarchy
17
+ * `ParentComponent`
18
+ * `ChildA` (Props: x, y)
19
+ * `ChildB` (State: z)
20
+
21
+ ## 2. API Contract (The "Signature")
22
+ <!-- CRITICAL: Define exact signatures. No hallucination allowed. -->
23
+
24
+ ### Endpoints
25
+ * `POST /api/v1/resource`
26
+ * **Request Body**:
27
+ ```typescript
28
+ interface CreateRequest {
29
+ field: string; // required
30
+ }
31
+ ```
32
+ * **Response**: `200 OK` (Schema below)
33
+
34
+ ### Function Interfaces
35
+ <!-- Signatures for key internal functions -->
36
+ ```typescript
37
+ function calculateSomething(input: InputType): ResultType
38
+ ```
39
+
40
+ ## 3. Data Model Strategy
41
+ ### Database Schema Changes
42
+ ```sql
43
+ -- DDL goes here
44
+ CREATE TABLE ...
45
+ ```
46
+
47
+ ### State Management
48
+ * Global State: [e.g. Redux/Zustand slice]
49
+ * Local State: [e.g. React.useState]
50
+
51
+ ## 4. Implementation Steps
52
+ <!-- Atomic, ordered steps -->
53
+ 1. [Step 1: DB Migration]
54
+ 2. [Step 2: API Backend]
55
+ 3. [Step 3: Frontend UI]
56
+
57
+ ## 5. Security & Risk
58
+ * **Auth**: [How is this secured?]
59
+ * **Validation**: [Input validation library?]