architext 0.0.3 → 0.0.5
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/CHANGELOG.md +56 -1
- package/README.md +94 -12
- package/README.zh-CN.md +94 -12
- package/dist/index.js +43 -39
- package/dist/templates/en/briefs/_base.md +44 -11
- package/dist/templates/en/briefs/_modules.md +31 -4
- package/dist/templates/en/docs/global/api_snapshot.json +24 -0
- package/dist/templates/en/docs/global/command_api.json +26 -0
- package/dist/templates/en/docs/global/env_registry.json +12 -0
- package/dist/templates/en/docs/global/map.json +5 -0
- package/dist/templates/en/docs/global/public_api.json +12 -0
- package/dist/templates/en/docs/prompts/audit.md +80 -94
- package/dist/templates/en/docs/prompts/code.md +100 -109
- package/dist/templates/en/docs/prompts/edit.md +52 -47
- package/dist/templates/en/docs/prompts/fix.md +49 -42
- package/dist/templates/en/docs/prompts/help.md +23 -31
- package/dist/templates/en/docs/prompts/inherit.md +110 -116
- package/dist/templates/en/docs/prompts/map.md +47 -69
- package/dist/templates/en/docs/prompts/plan.md +160 -171
- package/dist/templates/en/docs/prompts/recover.md +48 -0
- package/dist/templates/en/docs/prompts/ref.md +163 -0
- package/dist/templates/en/docs/prompts/remove.md +55 -107
- package/dist/templates/en/docs/prompts/revise.md +63 -106
- package/dist/templates/en/docs/prompts/scope.md +77 -117
- package/dist/templates/en/docs/prompts/start.md +93 -139
- package/dist/templates/en/docs/shared/verify-result-handling.md +6 -0
- package/dist/templates/en/docs/templates/design.template.md +77 -0
- package/dist/templates/en/docs/templates/spec.template.md +60 -25
- package/dist/templates/en/rules/00_system.md +36 -79
- package/dist/templates/en/rules/01_workflow.md +59 -57
- package/dist/templates/en/rules/03_data_governance.md +46 -42
- package/dist/templates/en/skills/archi-data-sync/SKILL.md +83 -0
- package/dist/templates/en/skills/archi-decompose-roadmap/SKILL.md +166 -151
- package/dist/templates/en/skills/archi-design-patterns/SKILL.md +140 -0
- package/dist/templates/en/skills/archi-feature-relations/SKILL.md +118 -0
- package/dist/templates/en/skills/archi-interview-protocol/SKILL.md +2 -1
- package/dist/templates/en/skills/archi-plan-options/SKILL.md +4 -3
- package/dist/templates/en/skills/archi-silent-audit/SKILL.md +118 -0
- package/dist/templates/en/skills/archi-ui-wireframe/SKILL.md +315 -270
- package/dist/templates/zh/briefs/_base.md +46 -14
- package/dist/templates/zh/briefs/_modules.md +29 -2
- package/dist/templates/zh/docs/global/api_snapshot.json +24 -0
- package/dist/templates/zh/docs/global/command_api.json +26 -0
- package/dist/templates/zh/docs/global/data_snapshot.json +0 -1
- package/dist/templates/zh/docs/global/design_tokens.json +0 -1
- package/dist/templates/zh/docs/global/dictionary.json +1 -1
- package/dist/templates/zh/docs/global/env_registry.json +12 -0
- package/dist/templates/zh/docs/global/error_codes.json +0 -8
- package/dist/templates/zh/docs/global/map.json +28 -3
- package/dist/templates/zh/docs/global/public_api.json +12 -0
- package/dist/templates/zh/docs/global/vision.md +1 -1
- package/dist/templates/zh/docs/prompts/audit.md +43 -57
- package/dist/templates/zh/docs/prompts/code.md +68 -77
- package/dist/templates/zh/docs/prompts/edit.md +44 -39
- package/dist/templates/zh/docs/prompts/fix.md +33 -26
- package/dist/templates/zh/docs/prompts/help.md +13 -21
- package/dist/templates/zh/docs/prompts/inherit.md +81 -87
- package/dist/templates/zh/docs/prompts/map.md +23 -45
- package/dist/templates/zh/docs/prompts/plan.md +134 -146
- package/dist/templates/zh/docs/prompts/recover.md +48 -0
- package/dist/templates/zh/docs/prompts/ref.md +163 -0
- package/dist/templates/zh/docs/prompts/remove.md +31 -83
- package/dist/templates/zh/docs/prompts/revise.md +43 -84
- package/dist/templates/zh/docs/prompts/scope.md +53 -93
- package/dist/templates/zh/docs/prompts/start.md +75 -121
- package/dist/templates/zh/docs/shared/verify-result-handling.md +6 -0
- package/dist/templates/zh/docs/templates/design.template.md +77 -0
- package/dist/templates/zh/docs/templates/spec.template.md +60 -25
- package/dist/templates/zh/rules/00_system.md +37 -80
- package/dist/templates/zh/rules/01_workflow.md +60 -58
- package/dist/templates/zh/rules/02_tech_stack.md +7 -6
- package/dist/templates/zh/rules/03_data_governance.md +43 -39
- package/dist/templates/zh/rules/99_context_glue.md +2 -2
- package/dist/templates/zh/skills/archi-data-sync/SKILL.md +83 -0
- package/dist/templates/zh/skills/archi-decompose-roadmap/SKILL.md +70 -56
- package/dist/templates/zh/skills/archi-design-patterns/SKILL.md +140 -0
- package/dist/templates/zh/skills/archi-feature-relations/SKILL.md +118 -0
- package/dist/templates/zh/skills/archi-interview-protocol/SKILL.md +2 -1
- package/dist/templates/zh/skills/archi-plan-options/SKILL.md +26 -25
- package/dist/templates/zh/skills/archi-silent-audit/SKILL.md +118 -0
- package/dist/templates/zh/skills/archi-ui-wireframe/SKILL.md +317 -269
- package/package.json +1 -1
- package/dist/templates/zh-Hant/briefs/_base.md +0 -115
- package/dist/templates/zh-Hant/briefs/_modules.md +0 -173
- package/dist/templates/zh-Hant/docs/global/data_snapshot.json +0 -31
- package/dist/templates/zh-Hant/docs/global/design_tokens.json +0 -135
- package/dist/templates/zh-Hant/docs/global/dictionary.json +0 -35
- package/dist/templates/zh-Hant/docs/global/error_codes.json +0 -19
- package/dist/templates/zh-Hant/docs/global/map.json +0 -94
- package/dist/templates/zh-Hant/docs/global/roadmap.json +0 -39
- package/dist/templates/zh-Hant/docs/global/vision.md +0 -82
- package/dist/templates/zh-Hant/docs/prompts/audit.md +0 -150
- package/dist/templates/zh-Hant/docs/prompts/code.md +0 -160
- package/dist/templates/zh-Hant/docs/prompts/edit.md +0 -87
- package/dist/templates/zh-Hant/docs/prompts/fix.md +0 -86
- package/dist/templates/zh-Hant/docs/prompts/help.md +0 -69
- package/dist/templates/zh-Hant/docs/prompts/inherit.md +0 -270
- package/dist/templates/zh-Hant/docs/prompts/map.md +0 -131
- package/dist/templates/zh-Hant/docs/prompts/plan.md +0 -252
- package/dist/templates/zh-Hant/docs/prompts/remove.md +0 -162
- package/dist/templates/zh-Hant/docs/prompts/revise.md +0 -160
- package/dist/templates/zh-Hant/docs/prompts/scope.md +0 -198
- package/dist/templates/zh-Hant/docs/prompts/start.md +0 -258
- package/dist/templates/zh-Hant/docs/templates/plan.template.json +0 -88
- package/dist/templates/zh-Hant/docs/templates/scope-brief.template.md +0 -58
- package/dist/templates/zh-Hant/docs/templates/spec.template.md +0 -51
- package/dist/templates/zh-Hant/docs/templates/ui.template.md +0 -51
- package/dist/templates/zh-Hant/rules/00_system.md +0 -123
- package/dist/templates/zh-Hant/rules/01_workflow.md +0 -93
- package/dist/templates/zh-Hant/rules/02_tech_stack.md +0 -192
- package/dist/templates/zh-Hant/rules/03_data_governance.md +0 -102
- package/dist/templates/zh-Hant/rules/04_cli_tools.md +0 -50
- package/dist/templates/zh-Hant/rules/90_custom_rules.md +0 -21
- package/dist/templates/zh-Hant/rules/99_context_glue.md +0 -53
- package/dist/templates/zh-Hant/skills/archi-decompose-roadmap/SKILL.md +0 -293
- package/dist/templates/zh-Hant/skills/archi-interview-protocol/SKILL.md +0 -86
- package/dist/templates/zh-Hant/skills/archi-plan-options/SKILL.md +0 -364
- package/dist/templates/zh-Hant/skills/archi-ui-wireframe/SKILL.md +0 -337
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
## 项目概述
|
|
8
8
|
|
|
9
|
-
**项目名称**:
|
|
9
|
+
**项目名称**:
|
|
10
10
|
**一句话描述**: [项目是什么、为谁服务、解决什么问题]
|
|
11
11
|
**问题陈述**: [目标用户遇到的核心痛点?现有方案哪里不足?]
|
|
12
12
|
|
|
@@ -20,12 +20,27 @@
|
|
|
20
20
|
|
|
21
21
|
## 核心任务
|
|
22
22
|
|
|
23
|
-
>
|
|
23
|
+
> 必须实现的任务,每项一段话描述预期行为。
|
|
24
24
|
> 详细 Spec 在 `/archi.plan` 阶段定义,此处只需明确"做什么"。
|
|
25
25
|
|
|
26
|
-
1.
|
|
27
|
-
2.
|
|
28
|
-
3.
|
|
26
|
+
1.
|
|
27
|
+
2.
|
|
28
|
+
3.
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## 业务流程
|
|
33
|
+
|
|
34
|
+
> 如果你的项目有明确的用户旅程或核心工作流,在此描述。
|
|
35
|
+
> 不需要画图——用文字描述步骤即可,AI 会据此理解系统行为。
|
|
36
|
+
> 没有的话留空,AI 会从核心任务中推导。
|
|
37
|
+
|
|
38
|
+
<!-- 写法参考:
|
|
39
|
+
### [流程名称]
|
|
40
|
+
1. 用户 [动作] → 系统 [响应]
|
|
41
|
+
2. 用户 [动作] → 系统 [响应]
|
|
42
|
+
3. ...
|
|
43
|
+
-->
|
|
29
44
|
|
|
30
45
|
---
|
|
31
46
|
|
|
@@ -36,7 +51,7 @@
|
|
|
36
51
|
>
|
|
37
52
|
> 写法参考:
|
|
38
53
|
> - **[任务/页面名]**: 描述具体行为、流程、约束
|
|
39
|
-
> -
|
|
54
|
+
> - 可附截图/草图(见下方"设计资产")
|
|
40
55
|
|
|
41
56
|
---
|
|
42
57
|
|
|
@@ -44,8 +59,8 @@
|
|
|
44
59
|
|
|
45
60
|
> 已确定的直接填写。不确定的留空或写"推荐",AI 会基于项目特征推荐。
|
|
46
61
|
|
|
47
|
-
|
|
48
|
-
<!-- archi init
|
|
62
|
+
**项目特征**: [[__PROJECT_TYPE__]]
|
|
63
|
+
<!-- archi init 自动填入(逗号分隔的特征标签);手动填写时从 ui/data/api/cli/lib/mobile/desktop/miniapp/extension/realtime/ai 中选择 -->
|
|
49
64
|
**语言/运行时**: [例:TypeScript + Node.js 22]
|
|
50
65
|
**核心框架**: [例:Next.js 15 / Fastify / Tauri]
|
|
51
66
|
**包管理器**: [例:pnpm / npm / yarn / cargo]
|
|
@@ -62,7 +77,7 @@
|
|
|
62
77
|
|
|
63
78
|
## 工程规范
|
|
64
79
|
|
|
65
|
-
>
|
|
80
|
+
> 已有的工程约定。不确定的留空,AI 会基于技术栈推荐合理默认值。
|
|
66
81
|
|
|
67
82
|
**仓库形态**: [Monorepo (Turborepo/Nx/pnpm workspaces) / 单体仓库]
|
|
68
83
|
**架构模式**: [例:MFA / FSD / Clean Architecture / 分层架构 / 无偏好(AI 推荐)]
|
|
@@ -78,14 +93,33 @@
|
|
|
78
93
|
> AI 需要知道哪些东西已经存在——避免重复造轮子或做出冲突决策。
|
|
79
94
|
|
|
80
95
|
**项目起点**: [全新项目 / 基于已有代码库(简述现状和技术债)]
|
|
81
|
-
**设计资产**: [Figma 链接 / 设计稿截图 / 无(AI 自行设计)]
|
|
82
|
-
**品牌规范**: [已有 Logo/配色/字体 → 描述或附链接 / 无]
|
|
83
96
|
**已有 API/后端**: [接口文档链接 / 简述可用端点 / 无(需从零搭建)]
|
|
84
97
|
**第三方服务**: [已确定使用的服务,例:Auth0, Stripe, AWS S3, Resend...]
|
|
85
98
|
**现有数据**: [已有数据库/数据源?格式?需要迁移?/ 无]
|
|
86
99
|
|
|
87
100
|
---
|
|
88
101
|
|
|
102
|
+
## 设计资产
|
|
103
|
+
|
|
104
|
+
> 为 AI 提供视觉/设计输入,直接影响项目的 UI 和架构决策质量。
|
|
105
|
+
> 两种方式提供文件:
|
|
106
|
+
> 1. **本地文件**: 将文件放入 `brief-assets/` 目录,按下方格式引用
|
|
107
|
+
> 2. **外部链接**: 直接填写 URL
|
|
108
|
+
>
|
|
109
|
+
> 引用格式: `- [语义标签] ./brief-assets/文件名`
|
|
110
|
+
>
|
|
111
|
+
> 写法参考:
|
|
112
|
+
> - [竞品参考-首页] ./brief-assets/linear-dashboard.png
|
|
113
|
+
> - [我的草图] ./brief-assets/sketch-v1.png
|
|
114
|
+
> - [品牌色板] ./brief-assets/brand-colors.pdf
|
|
115
|
+
> - [API 文档] ./brief-assets/api-spec.yaml
|
|
116
|
+
> - [数据库 Schema] ./brief-assets/schema.sql
|
|
117
|
+
|
|
118
|
+
**设计稿/截图**: [按上方格式引用本地文件 / Figma 链接 / 无(AI 自行设计)]
|
|
119
|
+
**品牌规范**: [已有 Logo/配色/字体 → 引用文件或描述 / 无]
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
89
123
|
<!-- @slot:style -->
|
|
90
124
|
|
|
91
125
|
## 边界与约束
|
|
@@ -94,7 +128,6 @@
|
|
|
94
128
|
- [例:本期不做国际化 / 不做移动端适配 / 不做付费功能]
|
|
95
129
|
|
|
96
130
|
**硬性约束**:
|
|
97
|
-
- **时间**: [例:4 周 MVP / 无硬性 deadline]
|
|
98
131
|
- **兼容性**: [例:Chrome 90+ / Node 18+ / iOS 15+]
|
|
99
132
|
- **性能**: [例:首屏 < 2s / API P99 < 500ms / 无特殊要求]
|
|
100
133
|
- **合规/无障碍**: [例:WCAG 2.1 AA / GDPR / 无]
|
|
@@ -112,5 +145,4 @@
|
|
|
112
145
|
|
|
113
146
|
## 补充说明
|
|
114
147
|
|
|
115
|
-
>
|
|
116
|
-
|
|
148
|
+
> 任何上述未涵盖的信息:背景故事、特殊需求、已有决策的原因等。
|
|
@@ -5,10 +5,37 @@
|
|
|
5
5
|
<!-- @tech:data -->
|
|
6
6
|
**数据库**: [例:PostgreSQL / MongoDB / SQLite]
|
|
7
7
|
**ORM / Query Builder**: [例:Prisma / Drizzle / TypeORM]
|
|
8
|
+
|
|
9
|
+
### 数据模型草案
|
|
10
|
+
|
|
11
|
+
> 如果你已经知道核心数据实体和关系,在此描述。不需要写完整 Schema——列出实体名和关键字段即可。
|
|
12
|
+
> AI 会在 `/archi.plan` 阶段据此生成详细的数据模型,此处只需明确"有什么数据"。
|
|
13
|
+
> 没有的话留空,AI 会从核心任务中推导。
|
|
14
|
+
|
|
15
|
+
<!-- 写法参考:
|
|
16
|
+
- **用户 (User)**: email, name, role (admin/user), avatar
|
|
17
|
+
- **文章 (Post)**: title, content, status (draft/published), author → User
|
|
18
|
+
- **评论 (Comment)**: body, author → User, post → Post
|
|
19
|
+
- User 1:N Post, Post 1:N Comment
|
|
20
|
+
-->
|
|
21
|
+
|
|
8
22
|
<!-- @end -->
|
|
9
23
|
|
|
10
24
|
<!-- @tech:api -->
|
|
11
25
|
**API 风格**: [例:RESTful / GraphQL / gRPC / tRPC]
|
|
26
|
+
|
|
27
|
+
### 已有 API 端点
|
|
28
|
+
|
|
29
|
+
> 如果已有后端 API(自建或第三方),在此列出核心端点。也可将完整文档放入 `brief-assets/`。
|
|
30
|
+
> 没有的话留空。
|
|
31
|
+
|
|
32
|
+
<!-- 写法参考:
|
|
33
|
+
- `POST /auth/login` → 返回 JWT token
|
|
34
|
+
- `GET /users/:id` → 用户详情
|
|
35
|
+
- `POST /posts` → 创建文章(需认证)
|
|
36
|
+
- 完整文档: [API 文档] ./brief-assets/api-spec.yaml
|
|
37
|
+
-->
|
|
38
|
+
|
|
12
39
|
<!-- @end -->
|
|
13
40
|
|
|
14
41
|
<!-- @tech:cli -->
|
|
@@ -116,7 +143,7 @@
|
|
|
116
143
|
**实时传输方案**: [例:Socket.io / 原生 WebSocket / SSE / WebRTC]
|
|
117
144
|
**实时框架/托管**: [例:Ably / Pusher / Liveblocks / 自建]
|
|
118
145
|
**房间/频道模型**: [例:按用户 ID 订阅 / 按文档 ID 房间 / 广播]
|
|
119
|
-
|
|
146
|
+
**(仅CRDT项目) 协作冲突解决**: [例:Yjs / Automerge / 不需要(仅广播)]
|
|
120
147
|
**离线支持**: [例:离线队列 + 重连同步 / 不需要]
|
|
121
148
|
<!-- @end -->
|
|
122
149
|
|
|
@@ -125,7 +152,7 @@
|
|
|
125
152
|
**AI 框架**: [例:Vercel AI SDK / LangChain / LlamaIndex / 无框架直调 API]
|
|
126
153
|
**Tool/Function Calling**: [例:需要(列出工具名称)/ 不需要]
|
|
127
154
|
**Memory 方案**: [例:向量数据库(pgvector/Pinecone)/ 滑动窗口历史 / 无]
|
|
128
|
-
|
|
155
|
+
**(仅MCP项目) MCP 协议**: [例:@modelcontextprotocol/sdk / 不需要]
|
|
129
156
|
**流式输出**: [例:SSE 流式 / 批量返回]
|
|
130
157
|
<!-- @end -->
|
|
131
158
|
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
{
|
|
2
|
+
"endpoints": [
|
|
3
|
+
{
|
|
4
|
+
"method": "[GET | POST | PUT | DELETE | PATCH]",
|
|
5
|
+
"path": "[/resource/:id]",
|
|
6
|
+
"description": "[一句话描述端点职责]",
|
|
7
|
+
"auth": "[required | public | optional]",
|
|
8
|
+
"requestBody": "[schema 描述或 N/A]",
|
|
9
|
+
"responses": {
|
|
10
|
+
"200": "[成功响应结构描述]",
|
|
11
|
+
"[4xx]": "[ref: error_codes.json#ERR_CODE]"
|
|
12
|
+
},
|
|
13
|
+
"owner": "[FEAT-xxx | INF-xxx]"
|
|
14
|
+
}
|
|
15
|
+
],
|
|
16
|
+
"protocolMapping": [
|
|
17
|
+
{
|
|
18
|
+
"statusCode": "[400 | 401 | 403 | 404 | 500 | ...]",
|
|
19
|
+
"code": "[ERR_CODE]",
|
|
20
|
+
"meaning": "[含义]",
|
|
21
|
+
"action": "[调用方行为: Toast / Redirect / Retry / ...]"
|
|
22
|
+
}
|
|
23
|
+
]
|
|
24
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
{
|
|
2
|
+
"commands": [
|
|
3
|
+
{
|
|
4
|
+
"name": "[command-name]",
|
|
5
|
+
"aliases": ["[alias]"],
|
|
6
|
+
"description": "[一句话描述命令职责]",
|
|
7
|
+
"args": [
|
|
8
|
+
{
|
|
9
|
+
"name": "[arg-name]",
|
|
10
|
+
"required": true,
|
|
11
|
+
"description": "[参数说明]"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"flags": [
|
|
15
|
+
{
|
|
16
|
+
"name": "--[flag-name]",
|
|
17
|
+
"short": "-[f]",
|
|
18
|
+
"type": "[string | boolean | number]",
|
|
19
|
+
"default": "[默认值或 null]",
|
|
20
|
+
"description": "[标志说明]"
|
|
21
|
+
}
|
|
22
|
+
],
|
|
23
|
+
"owner": "[FEAT-xxx | INF-xxx]"
|
|
24
|
+
}
|
|
25
|
+
]
|
|
26
|
+
}
|
|
@@ -55,18 +55,38 @@
|
|
|
55
55
|
},
|
|
56
56
|
{
|
|
57
57
|
"file": "design_tokens.json",
|
|
58
|
-
"role": "Visuals
|
|
58
|
+
"role": "Visuals (仅ui项目)",
|
|
59
59
|
"content": "颜色、字体、间距变量"
|
|
60
60
|
},
|
|
61
61
|
{
|
|
62
62
|
"file": "data_snapshot.json",
|
|
63
|
-
"role": "Data
|
|
63
|
+
"role": "Data (仅data项目)",
|
|
64
64
|
"content": "数据库 Schema 镜像"
|
|
65
65
|
},
|
|
66
66
|
{
|
|
67
67
|
"file": "error_codes.json",
|
|
68
68
|
"role": "Errors",
|
|
69
|
-
"content": "
|
|
69
|
+
"content": "业务错误码注册表"
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"file": "api_snapshot.json",
|
|
73
|
+
"role": "API (仅api项目)",
|
|
74
|
+
"content": "HTTP 端点注册表与协议映射"
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"file": "env_registry.json",
|
|
78
|
+
"role": "Env (仅api项目)",
|
|
79
|
+
"content": "运行时环境变量清单"
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"file": "command_api.json",
|
|
83
|
+
"role": "Commands (仅cli项目)",
|
|
84
|
+
"content": "CLI 命令签名注册表"
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"file": "public_api.json",
|
|
88
|
+
"role": "Exports (仅lib项目)",
|
|
89
|
+
"content": "库 / SDK 公共导出 API 注册表"
|
|
70
90
|
}
|
|
71
91
|
]
|
|
72
92
|
},
|
|
@@ -81,6 +101,11 @@
|
|
|
81
101
|
"category": "UI/UX",
|
|
82
102
|
"purpose": "任务级 UI 范围声明 — 引用 ui_context.md 中的屏幕 ID,指定本任务涵盖的屏幕/组件范围"
|
|
83
103
|
},
|
|
104
|
+
{
|
|
105
|
+
"file": "design.md",
|
|
106
|
+
"category": "Technical Design",
|
|
107
|
+
"purpose": "仅Complex任务: 技术方案设计 — 核心机制的状态机/流水线/协议定义、参数表与不变量"
|
|
108
|
+
},
|
|
84
109
|
{
|
|
85
110
|
"file": "plan.json",
|
|
86
111
|
"category": "Plan",
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
{
|
|
2
|
+
"exports": [
|
|
3
|
+
{
|
|
4
|
+
"name": "[exportName]",
|
|
5
|
+
"type": "[function | class | type | constant | enum]",
|
|
6
|
+
"signature": "[TypeScript 签名]",
|
|
7
|
+
"description": "[一句话描述导出项职责]",
|
|
8
|
+
"stability": "[stable | experimental | deprecated]",
|
|
9
|
+
"owner": "[FEAT-xxx | INF-xxx]"
|
|
10
|
+
}
|
|
11
|
+
]
|
|
12
|
+
}
|
|
@@ -40,7 +40,7 @@ description: Project Constitution: Vision, Personas, Principles & Boundaries.
|
|
|
40
40
|
|
|
41
41
|
---
|
|
42
42
|
|
|
43
|
-
## 4. Design & Experience (设计与体验语言)
|
|
43
|
+
## 4. Design & Experience (设计与体验语言) (仅ui项目)
|
|
44
44
|
|
|
45
45
|
> **Note:** 本节仅适用于有 UI 的项目。具体色值和圆角定义请严格参阅 `[[__DOCS_DIR__]]/global/design_tokens.json`。
|
|
46
46
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<protocol_audit>
|
|
2
|
-
**Trigger**: `/archi.audit [id]`
|
|
2
|
+
**Trigger**: `/archi.audit [id]` | 自然语言触发时由 Workflow Dispatch 自动加载
|
|
3
3
|
**Goal**: 独立深度代码审查。带 `<id>` 审查该任务的代码实现;无 `<id>` 执行项目级体检。不修改代码,仅输出审查报告与修复工单。
|
|
4
4
|
|
|
5
5
|
<meta>
|
|
@@ -10,52 +10,40 @@
|
|
|
10
10
|
2. **Evidence-Based**: 每个发现须附文件路径、行号、代码片段。
|
|
11
11
|
3. **Actionable Output**: 每个问题须附推荐修复命令(`/archi.fix`, `/archi.edit` 等)。
|
|
12
12
|
4. **Vision Anchored**: 始终以 `vision.md` 为方向基准,检测偏离。
|
|
13
|
-
5. **Report Persistence**: 审查结果须写入文件 — 任务级 → `tasks/<id>_*/audit.md`(覆盖),项目级 → `audits/YYYY-MM-DD.md
|
|
13
|
+
5. **Report Persistence**: 审查结果须写入文件 — 任务级 → `tasks/<id>_*/audit.md`(覆盖),项目级 → `audits/YYYY-MM-DD.md`(按日期存档)。
|
|
14
|
+
6. **IDE-Native First**: 利用 IDE 原生能力驱动执行节奏,本协议定义质量标准和检查点,不对抗 IDE 的规划/执行机制。
|
|
14
15
|
</principles>
|
|
15
16
|
</meta>
|
|
16
17
|
|
|
17
18
|
<step_1_resolve>
|
|
18
|
-
**Role**: 系统分析师
|
|
19
19
|
**Mode Gate**:
|
|
20
20
|
|
|
21
21
|
| 输入 | 模式 | 后续步骤 |
|
|
22
22
|
|:---|:---|:---|
|
|
23
|
-
| `/archi.audit <id>` | 任务级深度审查 |
|
|
24
|
-
| `/archi.audit` | 项目级体检 |
|
|
23
|
+
| `/archi.audit <id>` | 任务级深度审查 | step_2a_task → step_3_report |
|
|
24
|
+
| `/archi.audit` | 项目级体检 | step_2b_project → step_3_report |
|
|
25
25
|
|
|
26
26
|
**任务级 — Resolve ID**:
|
|
27
|
-
1. 从
|
|
27
|
+
1. 从 roadmap.json 解析 `<id>` → Task Name、Slug、状态。
|
|
28
28
|
2. **Status Gate** — 仅 `active` 或 `done` 可审查:
|
|
29
29
|
|
|
30
30
|
| 状态 | 处理 |
|
|
31
31
|
|:---|:---|
|
|
32
32
|
| `active` / `done` | 通过 |
|
|
33
|
-
| `pending` | 拒绝 —
|
|
33
|
+
| `pending` | 拒绝 — 无代码可审查 |
|
|
34
34
|
| `blocked` | 拒绝 — 前置依赖未完成 |
|
|
35
35
|
|
|
36
|
-
3. **Load
|
|
37
|
-
- `[[__DOCS_DIR__]]/global/vision.md` — 项目方向基准
|
|
38
|
-
- `[[__DOCS_DIR__]]/tasks/<id>_<Slug>/spec.md` — 功能逻辑
|
|
39
|
-
- `[[__DOCS_DIR__]]/tasks/<id>_<Slug>/plan.json` — 任务清单
|
|
40
|
-
- `[[__DOCS_DIR__]]/tasks/<id>_<Slug>/ui.md` — 任务 UI 范围声明(如存在)
|
|
41
|
-
- [?UI] `[[__DOCS_DIR__]]/global/ui_context.md` — AI 屏幕索引(定位对应屏幕 ID)
|
|
42
|
-
- [?UI] `[[__DOCS_DIR__]]/global/ui_concept.html` — 只读视觉参考(#10 合规对比的视觉标准源)
|
|
43
|
-
- `[[__DOCS_DIR__]]/tasks/<id>_<Slug>/audit.md` — 上次审计报告(如存在,用于对比)
|
|
44
|
-
- `02_tech_stack.md` — 技术红线
|
|
45
|
-
- [?UI] `[[__DOCS_DIR__]]/global/design_tokens.json`
|
|
46
|
-
- [?Data] `[[__DOCS_DIR__]]/global/data_snapshot.json`
|
|
47
|
-
4. 读取该任务对应的所有代码文件。
|
|
36
|
+
3. **Load**: vision.md(方向基准)+ task docs (spec/plan/ui) + 前次 audit.md(对比用)+ project context (tech_stack/design_tokens/data_snapshot/ui_context/ui_concept)。读取该任务对应的所有代码文件。
|
|
48
37
|
|
|
49
38
|
**项目级 — Load Overview**:
|
|
50
|
-
1. 读取
|
|
51
|
-
2.
|
|
52
|
-
3.
|
|
53
|
-
4. 读取项目代码入口文件与关键模块。
|
|
39
|
+
1. 读取 vision.md、roadmap.json、map.json、02_tech_stack.md。
|
|
40
|
+
2. 扫描 tasks/ 目录结构。
|
|
41
|
+
3. 读取项目代码入口文件与关键模块。
|
|
54
42
|
|
|
55
|
-
**Output**:
|
|
43
|
+
**Output**: 审查范围与上下文清单。进入 step_2a_task 或 step_2b_project。
|
|
56
44
|
</step_1_resolve>
|
|
57
45
|
|
|
58
|
-
<
|
|
46
|
+
<step_2a_task>
|
|
59
47
|
**Role**: 首席审计官
|
|
60
48
|
**Scope**: 任务级深度代码审查(仅 `/archi.audit <id>` 时执行)。
|
|
61
49
|
|
|
@@ -72,17 +60,17 @@
|
|
|
72
60
|
| 7 | **Tech Stack 合规** | 对照 `02_tech_stack.md`:违禁模式、过时 API、硬编码 |
|
|
73
61
|
| 8 | **安全性** | 敏感信息泄露、输入未校验、注入风险、权限检查 |
|
|
74
62
|
| 9 | **性能** | 不必要全量导入/大循环/无用计算/内存泄漏/N+1 查询 |
|
|
75
|
-
| 10 |
|
|
76
|
-
| 11 |
|
|
77
|
-
| 12 |
|
|
63
|
+
| 10 | (本任务涉及ui时) **Design 合规** | Token 使用;无硬编码魔法值;与 `ui_concept.html` 视觉一致 |
|
|
64
|
+
| 11 | (本任务涉及data时) **数据一致性** | 字段名/类型与 `data_snapshot.json` 一致 |
|
|
65
|
+
| 12 | (仅i18n项目) **I18n 合规** | 无硬编码字符串;须用 Key/字典引用 |
|
|
78
66
|
| 13 | **Orphan .gitkeep** | 目录已有其他文件时仍存在 `.gitkeep` — 须删除 |
|
|
79
|
-
| 14 | **Spec-Code 漂移** |
|
|
80
|
-
| 15 |
|
|
67
|
+
| 14 | **Spec-Code 漂移** | 接口/类型/行为与 `spec.md` 一致;手动变更已同步文档 |
|
|
68
|
+
| 15 | (本任务涉及ui时) **UI 引用完整性** | `ui.md` 中 `ref: ui_concept.html#S-XX` 指针是否仍有效 |
|
|
81
69
|
|
|
82
|
-
**Output**:
|
|
83
|
-
</
|
|
70
|
+
**Output**: 按维度分组的发现列表,每项含级别、位置、描述。进入 step_3_report。
|
|
71
|
+
</step_2a_task>
|
|
84
72
|
|
|
85
|
-
<
|
|
73
|
+
<step_2b_project>
|
|
86
74
|
**Role**: 首席审计官
|
|
87
75
|
**Scope**: 项目级健康体检(仅 `/archi.audit` 无参数时执行)。
|
|
88
76
|
|
|
@@ -90,22 +78,18 @@
|
|
|
90
78
|
|:---|:---|:---|
|
|
91
79
|
| 1 | **Vision 漂移** | `roadmap.json` 任务方向与 `vision.md` 是否一致 |
|
|
92
80
|
| 2 | **架构一致性** | `map.json` vs 实际目录结构,有无漂移或未注册模块 |
|
|
93
|
-
| 3 | **Roadmap 健康度** | 一致性 + 进度统计 + 长期 blocked
|
|
81
|
+
| 3 | **Roadmap 健康度** | 一致性 + 进度统计 + 长期 blocked + 依赖环检测 |
|
|
94
82
|
| 4 | **文档完整度** | 各 Task 是否有 spec.md + plan.json;有无孤儿目录 |
|
|
95
|
-
| 5 | **Tech Stack 全局合规** |
|
|
83
|
+
| 5 | **Tech Stack 全局合规** | 抽查关键入口与模块 |
|
|
96
84
|
| 6 | **跨 Task 一致性** | 重复逻辑、命名冲突、接口不一致 |
|
|
97
|
-
| 7 | **Orphan .gitkeep** | 目录已有其他文件时仍存在 `.gitkeep`
|
|
85
|
+
| 7 | **Orphan .gitkeep** | 目录已有其他文件时仍存在 `.gitkeep` |
|
|
98
86
|
|
|
99
|
-
|
|
100
|
-
- `done` 但 plan 未全部完成的
|
|
101
|
-
- 代码量大但无测试的
|
|
102
|
-
- 长期 `active` 未推进的
|
|
87
|
+
扫描后推荐需深度审查的 Task(`done` 但 plan 未全完成 / 代码量大无测试 / 长期 `active`)。
|
|
103
88
|
|
|
104
|
-
**Output**: 项目健康概览 +
|
|
105
|
-
</
|
|
89
|
+
**Output**: 项目健康概览 + 深度审查推荐列表。进入 step_3_report。
|
|
90
|
+
</step_2b_project>
|
|
106
91
|
|
|
107
92
|
<step_3_report>
|
|
108
|
-
**Role**: 报告撰写员
|
|
109
93
|
**Action**:
|
|
110
94
|
|
|
111
95
|
**Issue Classification**:
|
|
@@ -123,26 +107,28 @@
|
|
|
123
107
|
-> 推荐修复:/archi.fix <ID> <描述> 或 /archi.edit <ID> <描述>
|
|
124
108
|
```
|
|
125
109
|
|
|
126
|
-
**Action Routing
|
|
110
|
+
**Action Routing**:
|
|
127
111
|
|
|
128
112
|
| 问题类型 | 推荐命令 |
|
|
129
113
|
|:---|:---|
|
|
130
|
-
| Bug
|
|
131
|
-
| Spec
|
|
132
|
-
|
|
|
133
|
-
|
|
|
134
|
-
|
|
|
135
|
-
|
|
136
|
-
**
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
114
|
+
| Bug | `/archi.fix <ID> <描述>` |
|
|
115
|
+
| Spec 缺漏 | `/archi.edit <ID> <补充描述>` |
|
|
116
|
+
| 架构级问题 | `/archi.revise <描述>` |
|
|
117
|
+
| 功能未完成 | `/archi.code <ID>` |
|
|
118
|
+
| 小问题 | 下次 `/archi.code` 时一并处理 |
|
|
119
|
+
|
|
120
|
+
**Pre-signoff Checklist** (写入文件前须逐项确认):
|
|
121
|
+
□ (任务级)15 个审查维度全部覆盖,不适用项标注 N/A(非静默跳过)
|
|
122
|
+
□ (项目级)7 个检查项全部评估
|
|
123
|
+
□ 每个 CRITICAL/WARNING 发现已附 `文件:行号` + 代码片段
|
|
124
|
+
□ 每个发现已附推荐修复命令(/archi.fix / /archi.edit 等)
|
|
125
|
+
□ 报告已写入对应文件(任务级: tasks/<id>/audit.md;项目级: audits/YYYY-MM-DD.md)
|
|
126
|
+
|
|
127
|
+
**Report Structure**: 审查概要 → 发现列表(CRITICAL → WARNING → INFO)→ 统计摘要 → 修复工单汇总 → Next Steps。
|
|
142
128
|
|
|
143
129
|
**Write Report File**:
|
|
144
130
|
- 任务级 → `[[__DOCS_DIR__]]/tasks/<id>_<Slug>/audit.md`(覆盖式)
|
|
145
|
-
- 项目级 → `[[__DOCS_DIR__]]/audits/YYYY-MM-DD.md
|
|
131
|
+
- 项目级 → `[[__DOCS_DIR__]]/audits/YYYY-MM-DD.md`(按日期存档)
|
|
146
132
|
|
|
147
133
|
**Output**: 完整审查报告(同时输出到对话和写入文件)。
|
|
148
134
|
</step_3_report>
|