odoo-forge-bundle 0.1.10 → 0.1.11
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/package.json
CHANGED
|
@@ -1,389 +1,287 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: module-report
|
|
3
|
-
description: Odoo 模块报告 skill
|
|
3
|
+
description: Odoo 模块报告 skill。对已选定模块、仓库或本地模块路径做深入精读,结合 Notion 中的“项目 Wiki / 项目概览”判断项目相关度,生成完整报告并写回 Notion「📦 odoo 模块报告」数据库。用户提到“精读模块”“看看值不值得用”“生成模块报告”“把模块写进项目 Wiki 模块报告库”时使用;如果还在大范围找候选,则先用 module-research。
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# 模块报告
|
|
7
7
|
|
|
8
|
-
## 定位
|
|
8
|
+
## 1. 定位
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
本 skill 只做三件事:
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
1. 精读已选定模块源码
|
|
13
|
+
2. 结合项目背景给出项目口径的简介、评分和使用场景
|
|
14
|
+
3. 将结果写回 Notion `📦 odoo 模块报告` 数据库
|
|
13
15
|
|
|
14
|
-
|
|
15
|
-
2. 生成完整模块报告正文
|
|
16
|
-
3. 将模块报告沉淀到 Notion 的模块知识库
|
|
16
|
+
不要做这些事:
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
- 不要在用户还没选定目标模块时替代 `module-research`
|
|
19
|
+
- 不要只核实官方模块能力,这类问题交给 `odoo18-docs`
|
|
20
|
+
- 不要脱离项目背景直接评分
|
|
21
|
+
- 不要在 `项目 Wiki` 下新建“每仓库一个数据库”的并行结构
|
|
19
22
|
|
|
20
|
-
##
|
|
23
|
+
## 2. 先定位 Notion 上下文
|
|
21
24
|
|
|
22
|
-
|
|
23
|
-
|----------|--------|------|--------------|
|
|
24
|
-
| `全局资源` 页面及其子页 | 必需 | 判断模块对你们项目的推荐度、简介口径和使用场景 | 如果没有,仍可写报告,但要明确推荐度可信度下降 |
|
|
25
|
-
| 目标仓库 / 模块 / 本地路径 | 必需 | 决定要精读什么 | 没有目标就停止,先让调用方回到 `module-research` |
|
|
26
|
-
| `项目Wiki / 模块报告` 页面 | 建议 | 写入 Notion 模块知识库 | 如果没有,则先创建 |
|
|
27
|
-
| 相关业务域的 `BRD / Solution` | 推荐 | 结合当前业务域判断该模块在你们项目中的实际使用场景 | 如果没有,则至少基于 `全局资源` 做判断,并说明适用范围仍较宽 |
|
|
25
|
+
先按当前工作区的真实结构定位,不要假设存在旧的“全局资源”页面树。
|
|
28
26
|
|
|
29
|
-
|
|
27
|
+
### 2.1 先看见什么
|
|
30
28
|
|
|
31
|
-
|
|
29
|
+
1. 定位页面 `项目 Wiki`
|
|
30
|
+
2. `fetch` `项目 Wiki`
|
|
31
|
+
3. 在页面内容里确认至少存在两个 inline 数据库:
|
|
32
|
+
- `🏗️ 项目概览`
|
|
33
|
+
- `📦 odoo 模块报告`
|
|
32
34
|
|
|
33
|
-
|
|
35
|
+
如果 `项目 Wiki` 下没有这两个数据库,先停止并说明当前工作区结构与 skill 预期不一致。
|
|
34
36
|
|
|
35
|
-
|
|
36
|
-
2. `产品设计 / 全局资源 / 组织架构`,了解谁会用、谁维护、谁审批
|
|
37
|
-
3. `产品设计 / 全局资源 / 业务域全景图`,了解模块大概率落在哪些业务域
|
|
38
|
-
4. `产品设计 / 全局资源 / 术语表`,避免模块概览里的术语和你们项目口径打架
|
|
39
|
-
5. `产品设计 / 全局资源 / 现有系统清单`,判断是否涉及外部系统或现有系统边界
|
|
40
|
-
6. 如果模块是为某个明确业务域筛出来的,再读该业务域的 `BRD / Solution`
|
|
37
|
+
### 2.2 怎么读到项目级文档
|
|
41
38
|
|
|
42
|
-
|
|
39
|
+
`项目背景`、`业务域全景图` 等并不是 `项目 Wiki` 的普通子页面;它们当前是 `🏗️ 项目概览` 数据库里的页面。
|
|
43
40
|
|
|
44
|
-
|
|
45
|
-
- `使用场景`:写清楚在你们项目的哪类业务域、流程、角色或需求下可以考虑
|
|
46
|
-
- `推荐度`:结合你们项目背景判断是 `推荐 / 备选 / 谨慎`
|
|
41
|
+
按下面顺序读取:
|
|
47
42
|
|
|
48
|
-
|
|
43
|
+
1. `fetch` `🏗️ 项目概览` 数据库,拿到真实 schema 和 view URL
|
|
44
|
+
2. 查询 `🏗️ 项目概览` 的 `全部文档` 视图
|
|
45
|
+
3. 在视图结果里找到并 `fetch` 这些页面:
|
|
46
|
+
- `项目背景`
|
|
47
|
+
- `业务域全景图`
|
|
48
|
+
- `组织架构`
|
|
49
|
+
- `术语表`
|
|
50
|
+
- `现有系统清单`
|
|
51
|
+
- `项目约束`
|
|
52
|
+
4. 先把这些页面当作项目级公共上下文
|
|
49
53
|
|
|
50
|
-
|
|
54
|
+
不要跳过 `项目概览` 直接在全工作区盲搜 `项目背景`。优先沿着 `项目 Wiki -> 项目概览 -> 文档页面` 这条路径读取。
|
|
51
55
|
|
|
52
|
-
|
|
53
|
-
2. 读取 `项目Wiki` 的页面结构
|
|
54
|
-
3. 在 `项目Wiki` 下进入或创建页面 `模块报告`
|
|
55
|
-
4. 在 `模块报告` 下按仓库名定位或创建数据库,数据库名字就是仓库名字
|
|
56
|
-
5. 先 `fetch` 数据库,拿到真实 schema 和 `data_source_id`
|
|
57
|
-
6. 再在对应 `data_source_id` 下按 `标题` 查找记录;有则更新,没有则新建
|
|
56
|
+
### 2.3 怎么补读业务域文档
|
|
58
57
|
|
|
59
|
-
|
|
58
|
+
如果模块明显属于某个业务域,在读完项目级文档后,再补一层业务域上下文即可,不要把所有业务域子文档都读一遍。
|
|
60
59
|
|
|
61
|
-
|
|
60
|
+
建议这样做:
|
|
62
61
|
|
|
63
|
-
1.
|
|
62
|
+
1. 先根据 `业务域全景图` 判断模块最相关的业务域
|
|
63
|
+
2. 去 `产品设计` 下找对应业务域页面
|
|
64
|
+
3. 先读该业务域页本身的 `业务域简介`
|
|
65
|
+
4. 如果只靠 `业务域简介` 已足够判断模块是否匹配该域,就继续写报告
|
|
66
|
+
5. 只有在判断仍不够清楚时,再按需补读该业务域页下面的子文档,例如 `BRD`、`技术方案`、`Epics`
|
|
64
67
|
|
|
65
|
-
|
|
66
|
-
{
|
|
67
|
-
"pages": [
|
|
68
|
-
{
|
|
69
|
-
"properties": {
|
|
70
|
-
"title": "项目Wiki"
|
|
71
|
-
},
|
|
72
|
-
"icon": "📚"
|
|
73
|
-
}
|
|
74
|
-
]
|
|
75
|
-
}
|
|
76
|
-
```
|
|
68
|
+
把这层理解成“轻量补证据”:
|
|
77
69
|
|
|
78
|
-
|
|
70
|
+
- 项目级文档:决定项目范围、一阶段边界、通用术语和系统边界
|
|
71
|
+
- 业务域页:帮助判断模块是不是明显落在这个业务域
|
|
72
|
+
- 业务域子文档:只在需要补充证据时再读
|
|
79
73
|
|
|
80
|
-
|
|
81
|
-
{
|
|
82
|
-
"parent": {
|
|
83
|
-
"page_id": "{项目Wiki_page_id}"
|
|
84
|
-
},
|
|
85
|
-
"pages": [
|
|
86
|
-
{
|
|
87
|
-
"properties": {
|
|
88
|
-
"title": "模块报告"
|
|
89
|
-
},
|
|
90
|
-
"icon": "📦"
|
|
91
|
-
}
|
|
92
|
-
]
|
|
93
|
-
}
|
|
94
|
-
```
|
|
74
|
+
如果模块无法明确归到某个业务域,可以只基于项目级文档产出报告,但要在“使用场景”里写清这是宽口径判断。
|
|
95
75
|
|
|
96
|
-
|
|
97
|
-
推荐 schema 固定为:
|
|
76
|
+
### 2.4 哪些页面是评分必需
|
|
98
77
|
|
|
99
|
-
|
|
100
|
-
CREATE TABLE (
|
|
101
|
-
"标题" TITLE,
|
|
102
|
-
"简介" RICH_TEXT,
|
|
103
|
-
"使用场景" RICH_TEXT,
|
|
104
|
-
"推荐度" SELECT('推荐':green, '备选':yellow, '谨慎':red)
|
|
105
|
-
)
|
|
106
|
-
```
|
|
78
|
+
评分前的最低门槛如下:
|
|
107
79
|
|
|
108
|
-
|
|
80
|
+
- `项目背景`:必读。没有它就不要评分
|
|
81
|
+
- `业务域全景图`:必读。没有它就不要评分
|
|
82
|
+
- `组织架构`:推荐读取。缺失时可继续,但角色判断可信度下降
|
|
83
|
+
- `术语表`:推荐读取。缺失时可继续,但要注意用词
|
|
84
|
+
- `现有系统清单`:推荐读取。缺失时可继续,但系统边界要标 `待确认`
|
|
85
|
+
- `项目约束`:推荐读取。缺失时可继续,但一期优先级判断要标 `待确认`
|
|
86
|
+
- 业务域页的 `业务域简介`:模块已能明确归属业务域时推荐读取;若缺失,可继续,但业务贴合度判断要标 `待确认`
|
|
87
|
+
- 业务域子文档如 `BRD / 技术方案 / Epics`:只在 `业务域简介` 不足以支撑判断时再补读
|
|
109
88
|
|
|
110
|
-
|
|
111
|
-
{
|
|
112
|
-
"parent": {
|
|
113
|
-
"page_id": "{模块报告_page_id}"
|
|
114
|
-
},
|
|
115
|
-
"title": "server-tools",
|
|
116
|
-
"schema": "CREATE TABLE (\"标题\" TITLE, \"简介\" RICH_TEXT, \"使用场景\" RICH_TEXT, \"推荐度\" SELECT('推荐':green, '备选':yellow, '谨慎':red))"
|
|
117
|
-
}
|
|
118
|
-
```
|
|
89
|
+
如果缺少 `项目背景` 或 `业务域全景图`,停止写报告,并明确说明“无法判断项目相关度,因此不评分”。
|
|
119
90
|
|
|
120
|
-
|
|
121
|
-
不要跳过这一步,因为后续写记录必须用返回结果里的 `data_source_id` 和真实属性名。
|
|
91
|
+
## 3. 评分口径
|
|
122
92
|
|
|
123
|
-
|
|
93
|
+
评分必须结合项目相关度,不能只看模块本身质量或 OCA 活跃度。
|
|
124
94
|
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
"properties": {
|
|
133
|
-
"标题": "sale_order_tag",
|
|
134
|
-
"简介": "为销售订单提供标签分类与筛选能力",
|
|
135
|
-
"使用场景": "适合在你们项目中需要按业务主题、项目来源或专项任务给销售订单分类时考虑",
|
|
136
|
-
"推荐度": "备选"
|
|
137
|
-
},
|
|
138
|
-
"icon": "🧩"
|
|
139
|
-
}
|
|
140
|
-
]
|
|
141
|
-
}
|
|
142
|
-
```
|
|
143
|
-
|
|
144
|
-
### 创建后的验证步骤
|
|
145
|
-
|
|
146
|
-
每次创建仓库级数据库后,都要立刻做这两步验证:
|
|
147
|
-
|
|
148
|
-
1. `fetch` 父页面,确认数据库已经出现在 `模块报告` 页面下
|
|
149
|
-
2. `fetch` 新数据库,确认返回结果中能看到真实 schema 和 `data_source_id`
|
|
95
|
+
| 评分 | 含义 | 典型信号 |
|
|
96
|
+
|------|------|----------|
|
|
97
|
+
| `⭐` | 功能可用但与项目几乎无关 | 业务域不在一期范围,无直接需求对应 |
|
|
98
|
+
| `⭐⭐` | 有通用价值,不在一期范围 | 模块质量尚可,但项目暂无此类需求 |
|
|
99
|
+
| `⭐⭐⭐` | 与项目业务域相关,可作备选 | 需求存在但有其他方案,或需明显二开 |
|
|
100
|
+
| `⭐⭐⭐⭐` | 高度契合需求,建议优先评估 | 能直接覆盖需求,落地成本较低 |
|
|
101
|
+
| `⭐⭐⭐⭐⭐` | 直接解决一期核心痛点 | 不采用就大概率需要从零自研 |
|
|
150
102
|
|
|
151
|
-
|
|
152
|
-
要以“父页面可见 + schema 可识别 + 可拿到 data_source_id”作为成功标准。
|
|
103
|
+
产出时至少要把这三件事写清楚:
|
|
153
104
|
|
|
154
|
-
|
|
105
|
+
- `简介`:用项目口径写一句话,不照抄 README
|
|
106
|
+
- `评分`:明确给出 `⭐` 到 `⭐⭐⭐⭐⭐`
|
|
107
|
+
- `使用场景`:写清楚在项目的哪个业务域、流程或角色下可以考虑
|
|
155
108
|
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
- `server-tools`
|
|
159
|
-
- `project`
|
|
160
|
-
- `hr`
|
|
161
|
-
|
|
162
|
-
每个数据库应具备 4 个核心属性:
|
|
163
|
-
|
|
164
|
-
- `标题`
|
|
165
|
-
- `简介`
|
|
166
|
-
- `使用场景`
|
|
167
|
-
- `推荐度`
|
|
168
|
-
|
|
169
|
-
推荐类型如下:
|
|
170
|
-
|
|
171
|
-
- `标题`:`TITLE`
|
|
172
|
-
- `简介`:`RICH_TEXT`
|
|
173
|
-
- `使用场景`:`RICH_TEXT`
|
|
174
|
-
- `推荐度`:`SELECT('推荐':green, '备选':yellow, '谨慎':red)`
|
|
175
|
-
|
|
176
|
-
如果数据库已经存在,则:
|
|
177
|
-
|
|
178
|
-
- 先 `fetch` 数据库,读取真实 schema
|
|
179
|
-
- 如果缺少属性,用 `update_data_source` 补齐
|
|
180
|
-
- 如果属性名与预期不一致,先统一命名,再继续写记录
|
|
181
|
-
- 不要在没有拿到 `data_source_id` 的情况下直接写记录
|
|
182
|
-
|
|
183
|
-
### 模块记录写入要求
|
|
184
|
-
|
|
185
|
-
目标上,模块记录应包含:
|
|
186
|
-
|
|
187
|
-
- `标题`
|
|
188
|
-
- `简介`
|
|
189
|
-
- `使用场景`
|
|
190
|
-
- `推荐度`
|
|
191
|
-
|
|
192
|
-
摘要字段口径按下面的标准准备:
|
|
193
|
-
|
|
194
|
-
```json
|
|
195
|
-
{
|
|
196
|
-
"标题": "sale_order_tag",
|
|
197
|
-
"简介": "为销售订单提供标签分类与筛选能力",
|
|
198
|
-
"使用场景": "适合在你们项目中需要按业务主题、项目来源或专项任务给销售订单分类时考虑",
|
|
199
|
-
"推荐度": "备选"
|
|
200
|
-
}
|
|
201
|
-
```
|
|
202
|
-
|
|
203
|
-
写入时要按这个顺序:
|
|
204
|
-
|
|
205
|
-
1. 如果是新记录,用 `create_pages` 在数据库的 `data_source_id` 下创建
|
|
206
|
-
2. 如果是已有记录,先 `fetch` 该页面,再用 `update_page` 更新属性和正文
|
|
207
|
-
3. 写完后重新 `fetch` 页面或数据库,确认属性和值已经落进去
|
|
208
|
-
4. 只有在属性和正文都成功写入后,才可以把本次 Notion 更新当作完成状态
|
|
209
|
-
|
|
210
|
-
点开每一行的页面后,再写入完整模块报告正文。
|
|
211
|
-
|
|
212
|
-
## 什么时候使用
|
|
213
|
-
|
|
214
|
-
以下场景必须使用本 skill:
|
|
215
|
-
|
|
216
|
-
- “帮我精读这个模块”
|
|
217
|
-
- “帮我看看这个模块值不值得用”
|
|
218
|
-
- “把候选模块 A/B/C 各出一份精读结论”
|
|
219
|
-
- `solution` 已经找到候选模块,需要沉淀正式模块报告
|
|
220
|
-
- “把这个模块写进项目 Wiki 的模块报告库”
|
|
221
|
-
|
|
222
|
-
以下情况不要用本 skill:
|
|
223
|
-
|
|
224
|
-
- 只是想快速看看有哪些模块可选,用 `module-research`
|
|
225
|
-
- 只是想核实官方模块能力,用 `odoo18-docs`
|
|
226
|
-
|
|
227
|
-
## 工作流
|
|
109
|
+
## 4. 精读工作流
|
|
228
110
|
|
|
229
111
|
1. 读 `__manifest__.py`
|
|
230
|
-
2.
|
|
231
|
-
3.
|
|
112
|
+
2. 检查 `version` 是否以 `18.0` 开头;如果明显不是 Odoo 18,立即提示版本不匹配,不要硬推荐
|
|
113
|
+
3. 读 `README*`
|
|
114
|
+
4. 读核心目录:
|
|
232
115
|
- `models/`
|
|
233
116
|
- `views/`
|
|
234
117
|
- `security/`
|
|
235
118
|
- `data/`
|
|
236
119
|
- `controllers/`(如有)
|
|
237
|
-
|
|
238
|
-
-
|
|
239
|
-
-
|
|
240
|
-
-
|
|
241
|
-
-
|
|
242
|
-
-
|
|
243
|
-
|
|
244
|
-
-
|
|
245
|
-
-
|
|
246
|
-
-
|
|
247
|
-
|
|
248
|
-
7.
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
-
|
|
265
|
-
-
|
|
266
|
-
-
|
|
267
|
-
|
|
268
|
-
|
|
120
|
+
5. 识别这些信息:
|
|
121
|
+
- 核心模型和关键字段
|
|
122
|
+
- 关键视图、动作和工作流
|
|
123
|
+
- 自动化、约束、权限和联动
|
|
124
|
+
- 依赖模块和安装前置
|
|
125
|
+
- 维护与兼容性信号
|
|
126
|
+
6. 回到 Notion 上下文,结合项目级文档和必要的业务域文档判断:
|
|
127
|
+
- 该模块在项目中的落点
|
|
128
|
+
- 该模块的星级评分
|
|
129
|
+
- 适合写入数据库属性的 `简介`
|
|
130
|
+
- 正文第 3 段的 `使用场景`
|
|
131
|
+
7. 生成完整报告正文
|
|
132
|
+
8. 写回 Notion
|
|
133
|
+
9. 重新读取已写入页面,确认属性和值都已落库
|
|
134
|
+
|
|
135
|
+
## 5. 写回 Notion
|
|
136
|
+
|
|
137
|
+
所有模块统一写入 `📦 odoo 模块报告` 数据库,不再按仓库创建多个数据库。
|
|
138
|
+
|
|
139
|
+
### 5.1 先拿真实 schema
|
|
140
|
+
|
|
141
|
+
1. `fetch` `📦 odoo 模块报告` 数据库
|
|
142
|
+
2. 记录真实 `data_source_id`
|
|
143
|
+
3. 以当前 schema 为准,不要凭记忆写属性名
|
|
144
|
+
|
|
145
|
+
当前工作区里,这个数据库至少应包含这些核心属性:
|
|
146
|
+
|
|
147
|
+
- `模块名称`
|
|
148
|
+
- `简介`
|
|
149
|
+
- `所属仓库`
|
|
150
|
+
- `评分`
|
|
151
|
+
- `评估人`
|
|
152
|
+
- `评估状态`
|
|
269
153
|
|
|
270
|
-
|
|
154
|
+
如果 schema 与上面明显不一致,先处理再继续。尤其注意:
|
|
271
155
|
|
|
272
|
-
|
|
156
|
+
- `所属仓库` 必须是能正常存仓库名的类型
|
|
157
|
+
- 如果它仍然是明显不适合仓库名的类型,例如 `email`,先修 schema,再继续写值
|
|
158
|
+
- 如果数据库已有额外字段,不要随意删除;只修会阻塞本次写入的问题
|
|
273
159
|
|
|
274
|
-
|
|
275
|
-
- 关键页面、动作或工作流
|
|
276
|
-
- 关键规则、自动化或联动
|
|
277
|
-
- 与标准 Odoo 相比的主要补充点
|
|
160
|
+
### 5.2 查重规则
|
|
278
161
|
|
|
279
|
-
|
|
162
|
+
先按 `模块名称` 精确查重,再决定创建还是更新。
|
|
280
163
|
|
|
281
|
-
|
|
164
|
+
推荐顺序:
|
|
282
165
|
|
|
283
|
-
|
|
166
|
+
1. 查询 `📦 odoo 模块报告` 的主表视图,或在该 data source 内搜索模块技术名
|
|
167
|
+
2. 只把 `模块名称` 精确匹配的页面视为同一模块
|
|
168
|
+
3. 如果只有模糊匹配,先 `fetch` 候选页确认后再更新
|
|
169
|
+
4. 如果没有精确匹配,再创建新记录
|
|
284
170
|
|
|
285
|
-
|
|
171
|
+
不要因为 README 标题相近或功能接近,就覆盖别的模块记录。
|
|
286
172
|
|
|
287
|
-
|
|
288
|
-
- 更适合作为主方案、补充方案,还是备选方案
|
|
289
|
-
- 如果要落地,前提通常是什么
|
|
173
|
+
### 5.3 属性回填口径
|
|
290
174
|
|
|
291
|
-
|
|
175
|
+
| 属性 | 期望类型 | 填写标准 |
|
|
176
|
+
|------|----------|----------|
|
|
177
|
+
| `模块名称` | `TITLE` | 模块技术名,如 `sale_order_tag` |
|
|
178
|
+
| `简介` | `RICH_TEXT` / `TEXT` | 一句话说明模块做什么,语气贴近项目口径 |
|
|
179
|
+
| `所属仓库` | `RICH_TEXT` / `SELECT` | 仓库名,如 `server-tools` |
|
|
180
|
+
| `评分` | `SELECT` | 使用 `⭐` 到 `⭐⭐⭐⭐⭐` |
|
|
181
|
+
| `评估人` | `PEOPLE` | 当前执行精读的人;如需写入,先获取当前用户 ID |
|
|
182
|
+
| `评估状态` | `STATUS` | 写完正文并验证后改为 `已出报告` |
|
|
292
183
|
|
|
293
|
-
|
|
294
|
-
- 再说明哪些业务背景仍待确认
|
|
184
|
+
建议的属性值长这样:
|
|
295
185
|
|
|
296
|
-
|
|
186
|
+
```json
|
|
187
|
+
{
|
|
188
|
+
"模块名称": "sale_order_tag",
|
|
189
|
+
"简介": "为销售订单提供标签分类与筛选能力,适合按项目主题或专项任务做快速归类。",
|
|
190
|
+
"所属仓库": "sale-workflow",
|
|
191
|
+
"评分": "⭐⭐⭐",
|
|
192
|
+
"评估状态": "已出报告"
|
|
193
|
+
}
|
|
194
|
+
```
|
|
297
195
|
|
|
298
|
-
|
|
196
|
+
### 5.4 写入顺序
|
|
299
197
|
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
198
|
+
1. 如果不存在记录,用 `create_pages` 在 `data_source_id` 下创建页面
|
|
199
|
+
2. 如果已存在记录,先 `fetch` 该页面
|
|
200
|
+
3. 先写或更新属性:`模块名称 / 简介 / 所属仓库 / 评分 / 评估人`
|
|
201
|
+
4. 再写完整报告正文
|
|
202
|
+
5. 最后把 `评估状态` 改为 `已出报告`
|
|
203
|
+
6. 重新 `fetch` 页面,确认:
|
|
204
|
+
- 属性值已正确落库
|
|
205
|
+
- 正文不是空白页
|
|
206
|
+
- 状态已变成 `已出报告`
|
|
304
207
|
|
|
305
|
-
|
|
208
|
+
不要只写属性不写正文,也不要只写正文不回填属性。
|
|
306
209
|
|
|
307
|
-
|
|
210
|
+
## 6. 正文模板
|
|
308
211
|
|
|
309
|
-
|
|
212
|
+
正文固定按 5 段写,标题建议保持一致,方便后续横向阅读。
|
|
310
213
|
|
|
311
|
-
|
|
312
|
-
|
|
214
|
+
```markdown
|
|
215
|
+
## 1. 模块概览
|
|
313
216
|
|
|
314
|
-
|
|
217
|
+
- 核心作用:{一句话说清模块解决什么问题}
|
|
218
|
+
- 主要对象/流程:{服务哪个业务对象、流程或工作台}
|
|
219
|
+
- 来源与维护:{模块来源、仓库、维护活跃度、版本匹配情况}
|
|
315
220
|
|
|
316
|
-
|
|
317
|
-
- 配置步骤
|
|
318
|
-
- 关键配置项说明
|
|
319
|
-
- 推荐配置方式或常见配置值
|
|
320
|
-
- 配置完成后如何验证生效
|
|
221
|
+
## 2. 功能说明
|
|
321
222
|
|
|
322
|
-
|
|
223
|
+
- 核心模型:{模型、关键字段、关系}
|
|
224
|
+
- 关键界面/动作:{视图、按钮、菜单、动作、自动化}
|
|
225
|
+
- 关键规则:{权限、约束、自动化、与标准 Odoo 的主要差异}
|
|
323
226
|
|
|
324
|
-
|
|
325
|
-
- 适用角色
|
|
326
|
-
- 前置条件
|
|
327
|
-
- 操作步骤
|
|
328
|
-
- 预期结果
|
|
227
|
+
## 3. 使用场景
|
|
329
228
|
|
|
330
|
-
|
|
331
|
-
|
|
229
|
+
- 适用业务域:{结合项目背景和业务域全景图判断}
|
|
230
|
+
- 适用方式:{主方案 / 补充方案 / 备选方案}
|
|
231
|
+
- 落地前提:{依赖什么业务前提、主数据、流程或外部系统}
|
|
232
|
+
- 待确认项:{上下文不足时写清楚缺什么}
|
|
332
233
|
|
|
333
|
-
|
|
234
|
+
## 4. 依赖与安装
|
|
334
235
|
|
|
335
|
-
-
|
|
336
|
-
-
|
|
337
|
-
-
|
|
236
|
+
- 依赖模块:{模块列表}
|
|
237
|
+
- 前置条件:{安装前准备}
|
|
238
|
+
- 安装步骤:{按顺序列出}
|
|
239
|
+
- 安装后验证:{如何确认模块已生效}
|
|
338
240
|
|
|
339
|
-
##
|
|
241
|
+
## 5. 操作指南
|
|
340
242
|
|
|
341
|
-
|
|
243
|
+
### 配置指南
|
|
342
244
|
|
|
343
|
-
-
|
|
344
|
-
-
|
|
345
|
-
-
|
|
346
|
-
-
|
|
245
|
+
- 配置入口:{菜单路径}
|
|
246
|
+
- 配置步骤:{步骤列表}
|
|
247
|
+
- 关键配置项:{字段、推荐值、注意事项}
|
|
248
|
+
- 生效验证:{如何检查配置已生效}
|
|
347
249
|
|
|
348
|
-
|
|
250
|
+
### 演示场景
|
|
349
251
|
|
|
350
|
-
-
|
|
351
|
-
-
|
|
352
|
-
-
|
|
252
|
+
- 场景名称:{一个完整场景}
|
|
253
|
+
- 适用角色:{谁来操作}
|
|
254
|
+
- 前置条件:{需要先准备什么}
|
|
255
|
+
- 操作步骤:{按顺序列出}
|
|
256
|
+
- 预期结果:{系统应表现出什么结果}
|
|
257
|
+
```
|
|
353
258
|
|
|
354
|
-
|
|
259
|
+
补充规则:
|
|
355
260
|
|
|
356
|
-
-
|
|
357
|
-
-
|
|
358
|
-
-
|
|
359
|
-
-
|
|
360
|
-
- 创建或更新模块记录时,目标上不应漏掉 `简介 / 使用场景 / 推荐度`
|
|
361
|
-
- `依赖与安装` 必须细到跟着就能装好
|
|
362
|
-
- `操作指南` 里的配置指南必须细到跟着就能配好
|
|
363
|
-
- `操作指南` 必须包含至少 1 个闭环演示场景,让用户能实际走通一遍
|
|
364
|
-
- 不确定的信息写“待确认”,不要编造
|
|
261
|
+
- `功能说明` 和 `使用场景` 不要混写
|
|
262
|
+
- `使用场景` 必须引用项目背景判断,不要写成通用营销文案
|
|
263
|
+
- 纯库模块或无独立 UI 的模块,`操作指南` 可以简化为“安装即生效 + 验证方式”
|
|
264
|
+
- 如果信息不够,明确写 `待确认`,不要编造
|
|
365
265
|
|
|
366
|
-
##
|
|
266
|
+
## 7. 返回给调用方的摘要
|
|
367
267
|
|
|
368
|
-
写完 Notion
|
|
268
|
+
写完 Notion 后,返回一段短摘要即可:
|
|
369
269
|
|
|
370
270
|
```markdown
|
|
371
271
|
## 模块报告已更新
|
|
372
|
-
|
|
373
272
|
- 仓库:{repo_name}
|
|
374
273
|
- 模块:{module_name}
|
|
375
274
|
- 简介:{一句话简介}
|
|
376
|
-
-
|
|
377
|
-
-
|
|
275
|
+
- 评分:⭐~⭐⭐⭐⭐⭐
|
|
276
|
+
- 评估状态:已出报告
|
|
378
277
|
- 结论:{一句话总结}
|
|
379
278
|
```
|
|
380
279
|
|
|
381
|
-
##
|
|
280
|
+
## 8. 质量边界
|
|
382
281
|
|
|
383
|
-
-
|
|
384
|
-
-
|
|
385
|
-
-
|
|
386
|
-
- 不要脱离 `全局资源` 直接给“推荐度”
|
|
282
|
+
- 不要只重复 README,要补代码层判断
|
|
283
|
+
- 不要跳过 `项目背景` 和 `业务域全景图` 直接评分
|
|
284
|
+
- 不要在 `项目 Wiki` 下新建并行数据库结构
|
|
387
285
|
- 不要为同一个模块重复创建多条记录
|
|
388
|
-
-
|
|
389
|
-
-
|
|
286
|
+
- 不要擅自新增 5 段之外的强制章节
|
|
287
|
+
- 版本不匹配要明确提示,不硬推荐
|