@pm_zhousl/xinyun-ai-init 1.3.0 → 1.5.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.
- package/init/xinyun-ai-init/README.md +240 -6
- package/init/xinyun-ai-init/rules/directory-self-completion.md +7 -0
- package/init/xinyun-ai-init/rules/frameworks/README.md +16 -0
- package/init/xinyun-ai-init/rules/frameworks/backend/php/thinkphp.md +5 -0
- package/init/xinyun-ai-init/rules/frameworks/frontend/uni-app.md +5 -0
- package/init/xinyun-ai-init/rules/frameworks/frontend/wechat-miniprogram.md +5 -0
- package/init/xinyun-ai-init/rules/init-rules.md +7 -0
- package/init/xinyun-ai-init/rules/session-workbench.md +73 -0
- package/init/xinyun-ai-init/rules/upgrade-rules.md +9 -0
- package/init/xinyun-ai-init/templates/AGENTS.template.md +27 -1
- package/init/xinyun-ai-init/templates/core-rules.template.md +172 -1
- package/init/xinyun-ai-init/templates/current-task.template.md +68 -0
- package/init/xinyun-ai-init/templates/manifest.template.json +17 -2
- package/init/xinyun-ai-init/templates/project-check.template.md +19 -0
- package/init/xinyun-ai-init/templates/project-guide.template.md +47 -1
- package/init/xinyun-ai-init/templates/project-index.template.json +50 -0
- package/init/xinyun-ai-init/templates/team/README.md +40 -0
- package/init/xinyun-ai-init/templates/team/assignments.json +33 -0
- package/init/xinyun-ai-init/templates/team/confirmations/chief-engineer.md +24 -0
- package/init/xinyun-ai-init/templates/team/confirmations/programmer.md +24 -0
- package/init/xinyun-ai-init/templates/team/confirmations/project-owner.md +24 -0
- package/init/xinyun-ai-init/templates/team/confirmations/project-product.md +24 -0
- package/init/xinyun-ai-init/templates/team/confirmations/test-reviewer.md +24 -0
- package/init/xinyun-ai-init/templates/team/file-ownership.json +32 -0
- package/init/xinyun-ai-init/templates/team/members.json +61 -0
- package/init/xinyun-ai-init/templates/team/responsibility-matrix.json +81 -0
- package/init/xinyun-ai-init/templates/team/roles.json +71 -0
- package/init/xinyun-ai-init/templates/team/understandings/chief-engineer.md +23 -0
- package/init/xinyun-ai-init/templates/team/understandings/programmer.md +23 -0
- package/init/xinyun-ai-init/templates/team/understandings/project-owner.md +23 -0
- package/init/xinyun-ai-init/templates/team/understandings/project-product.md +23 -0
- package/init/xinyun-ai-init/templates/team/understandings/test-reviewer.md +23 -0
- package/init/xinyun-ai-init/templates/workstreams-readme.template.md +15 -0
- package/init/xinyun-ai-init/version.json +1 -1
- package/package.json +1 -1
- package/scripts/verify-init-package.js +360 -8
- package/test-scenarios/README.md +3 -3
- package/test-scenarios/review-template.md +19 -2
- package/test-scenarios/scenarios.md +258 -4
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
本目录是“欣芸技术开发 Agent 流”的初始化包,负责把完整 AI 执行要求下发到目标项目。
|
|
4
4
|
|
|
5
|
-
当前规则版本:`1.
|
|
5
|
+
当前规则版本:`1.5.0`。
|
|
6
6
|
|
|
7
7
|
## Codex 一句话入口
|
|
8
8
|
|
|
@@ -26,7 +26,7 @@ AI 读取本文件后,必须按以下方式执行:
|
|
|
26
26
|
|
|
27
27
|
1. 如果当前项目没有 `xinyun-ai/`,进入极速初始化模式。
|
|
28
28
|
2. 如果当前项目已有 `xinyun-ai/`,进入升级检查模式。
|
|
29
|
-
3. 用户发送 Codex 一句话入口后,视为已授权 AI 按本初始化包创建或补齐最小 `xinyun-ai/` 与极简 `AGENTS.md`。
|
|
29
|
+
3. 用户发送 Codex 一句话入口后,视为已授权 AI 按本初始化包创建或补齐最小 `xinyun-ai/`、`xinyun-ai/team/` 与极简 `AGENTS.md`。
|
|
30
30
|
4. 代码整改前必须先输出改动计划,等待用户明确确认后才能执行。
|
|
31
31
|
5. 涉及 SQL / 数据库改动时,必须单独输出 SQL 执行提醒。
|
|
32
32
|
6. 非项目开发内容不要沉淀。
|
|
@@ -35,8 +35,12 @@ AI 读取本文件后,必须按以下方式执行:
|
|
|
35
35
|
9. 复杂改动可使用双会话执行闭环,主会话负责计划和复核,执行会话只按任务单执行。
|
|
36
36
|
10. 需求模糊、涉及改动或出现高风险词时,先做中文需求解析和任务分型;普通咨询不强制输出完整解析结构。
|
|
37
37
|
11. 新功能、大改、重构、跨端、规则或索引调整时,先做全局影响审视;首次极速初始化不强制创建全局审视目录。
|
|
38
|
-
12.
|
|
39
|
-
13.
|
|
38
|
+
12. 识别 ThinkPHP、uni-app、微信小程序时必须输出证据路径、证据类型、识别状态和覆盖范围,遵守读取预算。
|
|
39
|
+
13. 多仓库 Git 只做只读索引与端口映射,不执行任何 Git 写操作。
|
|
40
|
+
14. 字段新增、删除、重命名、类型 / 含义变化、API 映射或前端展示变化时,先做有边界的字段影响审视。
|
|
41
|
+
15. 初始化时创建 AI 项目团队责任闭环:5 个逻辑角色、5 个 JSON 配置、5 份职责确认记录和 5 份角色理解记录。
|
|
42
|
+
16. 首次初始化不执行语言级语法检查、lint、typecheck、测试或构建命令;本机缺少运行时只记录为待确认,不展开长解释。
|
|
43
|
+
17. 完成后用中文输出初始化或升级结果、项目导读、团队责任状态、待确认问题和后续短指令。
|
|
40
44
|
|
|
41
45
|
## 初始化授权边界
|
|
42
46
|
|
|
@@ -44,8 +48,12 @@ CLI 只负责生成 `xinyun-ai-init/`,不创建 `xinyun-ai/`,也不修改业
|
|
|
44
48
|
|
|
45
49
|
用户发送一句话入口后,AI 可以按本 README 和 `templates/` 创建或补齐首次最小落盘清单。
|
|
46
50
|
|
|
51
|
+
v1.5.0 起,首次最小 AI 工作区授权包含 `xinyun-ai/team/` 团队责任闭环控制文件:5 个逻辑角色、5 个 JSON 配置、5 份 `confirmations/<roleId>.md` 和 5 份 `understandings/<roleId>.md`。
|
|
52
|
+
|
|
47
53
|
该授权只覆盖 AI 工作区初始化,不代表授权修改业务代码、配置、数据库、依赖、构建脚本、测试逻辑、API 行为、UI 行为或业务流程。
|
|
48
54
|
|
|
55
|
+
团队角色是本地逻辑配置,不自动创建外部人员账号、外部 AI 会话或无限会话;未知人员、会话和确认人使用 `null`,不得虚构。
|
|
56
|
+
|
|
49
57
|
## 改动计划与执行确认
|
|
50
58
|
|
|
51
59
|
用户提出“帮我改”“修复”“处理一下”“优化一下”只代表提出需求,不代表授权执行。
|
|
@@ -123,6 +131,10 @@ CLI 只负责生成 `xinyun-ai-init/`,不创建 `xinyun-ai/`,也不修改业
|
|
|
123
131
|
|
|
124
132
|
任务类型至少包括:问题排查、新功能开发、UI 调整、API / 接口调整、数据库 / SQL、商业逻辑、Git / 发布、文档沉淀、规则调整、临时咨询。
|
|
125
133
|
|
|
134
|
+
字段变更类任务还必须细分为:数据库字段新增 / 删除 / 重命名、字段类型或含义变更、API 字段调整、字段展示或渲染调整。
|
|
135
|
+
|
|
136
|
+
字段相关需求必须输出字段分类和专项路由:字段影响审视 / 普通改动计划 / SQL 提醒 / 业务流程理解。信息不足时最多追问 1-3 个关键问题,不得直接脑补并修改代码。
|
|
137
|
+
|
|
126
138
|
高歧义表达包括:优化一下、处理一下、不对、怪怪的、照之前、顺便、差不多、参考一下。
|
|
127
139
|
|
|
128
140
|
高风险词包括:订单、支付、退款、优惠券、会员、权益、金额、积分、分润、提现、结算、权限、删除、批量、发布、回滚。
|
|
@@ -237,6 +249,75 @@ rules/frameworks/frontend/wechat-miniprogram.md
|
|
|
237
249
|
|
|
238
250
|
未识别到对应框架时,不强行套用该框架规则。
|
|
239
251
|
|
|
252
|
+
框架识别默认预算:
|
|
253
|
+
|
|
254
|
+
- 每个端口从端口根目录向下最多发现 3 层目录。
|
|
255
|
+
- 每个端口最多读取 20 个关键文件。
|
|
256
|
+
- 正向识别必须列出证据路径和证据类型,如依赖、配置、入口、目录结构、代码特征。
|
|
257
|
+
- 只有单一线索时标注 `推断` 或 `待确认`。
|
|
258
|
+
- 预算内无证据时标注 `未在项目中发现`。
|
|
259
|
+
- 超预算、权限不足或路径不可读时标注 `状态未知`,并写明 `覆盖范围:部分` 和未检查范围。
|
|
260
|
+
- 不把 uni-app 规则套到原生微信小程序,也不把微信小程序规则套到 uni-app。
|
|
261
|
+
|
|
262
|
+
识别输出建议:
|
|
263
|
+
|
|
264
|
+
```md
|
|
265
|
+
## 轻量框架识别
|
|
266
|
+
- workstream:
|
|
267
|
+
- 框架候选:
|
|
268
|
+
- 识别状态:已确认 / 推断 / 待确认 / 未在项目中发现 / 状态未知
|
|
269
|
+
- 覆盖范围:完整 / 部分
|
|
270
|
+
- 发现预算:目录深度 3 层、关键文件 20 个
|
|
271
|
+
- 证据:路径、证据类型、命中内容摘要
|
|
272
|
+
- 未检查范围:
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
## 字段变更影响审视
|
|
276
|
+
|
|
277
|
+
当需求涉及字段新增、删除、重命名、类型变化、含义变化、API 映射变化或前端展示变化时,AI 必须先做字段影响审视,再进入改动计划。
|
|
278
|
+
|
|
279
|
+
字段影响审视必须区分数据库字段、API 字段和前端展示字段。
|
|
280
|
+
|
|
281
|
+
默认审视范围:
|
|
282
|
+
|
|
283
|
+
- 数据库表结构、migration、Model、Entity、ORM、查询和写入。
|
|
284
|
+
- Service、DAO、参数校验、状态流转、计算、缓存和队列。
|
|
285
|
+
- API 请求、响应、DTO、Serializer 和接口文档。
|
|
286
|
+
- 各端表单、列表、详情、表格、筛选、状态、格式化、图表、导出和打印。
|
|
287
|
+
- Mock、Seed、测试数据、空值、旧值、默认值、历史数据和兼容性。
|
|
288
|
+
|
|
289
|
+
默认预算:
|
|
290
|
+
|
|
291
|
+
- 检索根目录为项目根目录和已确认端口 / workstream 根目录。
|
|
292
|
+
- 每个端口最多检查 300 个候选文件、1000 条匹配结果和 50 条证据记录。
|
|
293
|
+
- 排除 `node_modules`、`dist`、`build`、`vendor`、`.git`、`.codegraph`、`storage`、`runtime`、`unpackage`、`coverage`、二进制文件和明确生成目录。
|
|
294
|
+
- CodeGraph 可用时,结构性影响优先使用 CodeGraph;CodeGraph 不可用时,降级为入口文件、配置文件、结构化检索和限定范围文本检索,并标注降级状态。
|
|
295
|
+
- 动态 SQL、动态字段名、序列化、反射和生成代码无法确认时,列为 `待确认` 或 `可能遗漏位置`。
|
|
296
|
+
- 超过预算时停止扩展检索,标注 `审视状态:部分覆盖`、`状态未知` 和 `可能遗漏位置`。
|
|
297
|
+
|
|
298
|
+
字段影响审视输出契约:
|
|
299
|
+
|
|
300
|
+
```md
|
|
301
|
+
## 字段影响审视
|
|
302
|
+
- 审视状态:完整覆盖 / 部分覆盖 / 状态未知
|
|
303
|
+
- 字段分类:数据库字段 / API 字段 / 前端展示字段
|
|
304
|
+
- 字段名称与原含义:
|
|
305
|
+
- 调整后含义:
|
|
306
|
+
- 检索根目录:
|
|
307
|
+
- 排除目录与文件:
|
|
308
|
+
- CodeGraph 状态:可用 / 不可用 / 降级
|
|
309
|
+
- 降级原因:
|
|
310
|
+
- 工具预算:
|
|
311
|
+
- 证据列表:路径、位置、匹配内容、判断状态
|
|
312
|
+
- 已覆盖范围:
|
|
313
|
+
- 可能遗漏位置:
|
|
314
|
+
- 旧数据兼容方案:
|
|
315
|
+
- 最终风险:
|
|
316
|
+
- 是否需要用户确认:
|
|
317
|
+
```
|
|
318
|
+
|
|
319
|
+
只改展示方式时,不得顺手修改数据库和 API。未确认前不得执行 SQL、migration、seed、批量数据修复或接口兼容改动。
|
|
320
|
+
|
|
240
321
|
## 执行模式
|
|
241
322
|
|
|
242
323
|
如果项目没有 `xinyun-ai/`:
|
|
@@ -268,6 +349,22 @@ xinyun-ai/project/项目导读.md
|
|
|
268
349
|
xinyun-ai/project/项目完整性检查.md
|
|
269
350
|
xinyun-ai/workstreams/README.md
|
|
270
351
|
xinyun-ai/index/project-index.json
|
|
352
|
+
xinyun-ai/team/README.md
|
|
353
|
+
xinyun-ai/team/roles.json
|
|
354
|
+
xinyun-ai/team/members.json
|
|
355
|
+
xinyun-ai/team/assignments.json
|
|
356
|
+
xinyun-ai/team/responsibility-matrix.json
|
|
357
|
+
xinyun-ai/team/file-ownership.json
|
|
358
|
+
xinyun-ai/team/understandings/project-owner.md
|
|
359
|
+
xinyun-ai/team/understandings/project-product.md
|
|
360
|
+
xinyun-ai/team/understandings/chief-engineer.md
|
|
361
|
+
xinyun-ai/team/understandings/programmer.md
|
|
362
|
+
xinyun-ai/team/understandings/test-reviewer.md
|
|
363
|
+
xinyun-ai/team/confirmations/project-owner.md
|
|
364
|
+
xinyun-ai/team/confirmations/project-product.md
|
|
365
|
+
xinyun-ai/team/confirmations/chief-engineer.md
|
|
366
|
+
xinyun-ai/team/confirmations/programmer.md
|
|
367
|
+
xinyun-ai/team/confirmations/test-reviewer.md
|
|
271
368
|
```
|
|
272
369
|
|
|
273
370
|
首次不要创建大量规则、模板、脚本和业务沉淀目录。后续根据任务按需补齐。
|
|
@@ -325,6 +422,24 @@ AI 可以读取 Git 状态、总结 diff、建议 commit message 和 tag;未
|
|
|
325
422
|
|
|
326
423
|
多端多仓库改动后,应按仓库分别输出交付摘要和建议 commit message,不要混成一个提交建议。
|
|
327
424
|
|
|
425
|
+
### 多仓库 Git 只读索引与端口映射
|
|
426
|
+
|
|
427
|
+
AI 可以建立“项目 → 端口 / workstream → Git 仓库”的只读索引,但全程禁止 Git 写操作。
|
|
428
|
+
|
|
429
|
+
默认发现预算:
|
|
430
|
+
|
|
431
|
+
- 从项目根目录向下最多发现 4 层目录。
|
|
432
|
+
- 最多记录 20 个仓库候选和 200 个相关目录 / 文件条目。
|
|
433
|
+
- 覆盖根仓库、嵌套 `.git`、子模块和 worktree。
|
|
434
|
+
- 超过预算、权限不足、路径不可读或状态无法确认时,标注 `状态未知`,不得判断为无 Git。
|
|
435
|
+
- 预算内完成检查且无 Git 证据时,标注 `未在项目中发现`。
|
|
436
|
+
|
|
437
|
+
仓库索引字段:`repoRoot`、`path`、`workstream`、`kind`、`parentRepo`、`branch`、`remote`、`status`、`evidence`。
|
|
438
|
+
|
|
439
|
+
`kind` 取值为:`root` / `nested` / `submodule` / `worktree`。
|
|
440
|
+
|
|
441
|
+
只读 Git 操作范围:读取状态、分支、remote、diff 摘要和配置证据。禁止 `commit`、`tag`、`push`、`pull`、`merge`、`rebase`、`reset`、`checkout`、`switch`、回滚和切分支。
|
|
442
|
+
|
|
328
443
|
## 按需补齐
|
|
329
444
|
|
|
330
445
|
后续识别到新端、模块或能力时,只在 `xinyun-ai/` 内补齐对应目录和说明文件。
|
|
@@ -387,6 +502,124 @@ xinyun-ai/global-review/
|
|
|
387
502
|
- 验证层
|
|
388
503
|
- 交接层
|
|
389
504
|
|
|
505
|
+
## AI 项目团队与责任闭环
|
|
506
|
+
|
|
507
|
+
初始化时必须创建 `xinyun-ai/team/`,用于记录本地 AI 协作团队、职责确认、角色理解、任务责任和文件目录责任。
|
|
508
|
+
|
|
509
|
+
默认逻辑角色:
|
|
510
|
+
|
|
511
|
+
- `project-owner`:项目负责人,负责需求最终确认、业务验收和发布授权。
|
|
512
|
+
- `project-product`:项目产品,负责需求整理、任务拆分和产品验收建议。
|
|
513
|
+
- `chief-engineer`:总工 / 技术负责人,负责技术方案、架构风险和技术最终确认。
|
|
514
|
+
- `programmer`:程序员,按确认范围执行代码、配置和测试任务。
|
|
515
|
+
- `test-reviewer`:测试审查员,独立测试、发布阻断判断和测试结论,不修改代码。
|
|
516
|
+
|
|
517
|
+
首次必须创建:
|
|
518
|
+
|
|
519
|
+
```text
|
|
520
|
+
xinyun-ai/team/
|
|
521
|
+
README.md
|
|
522
|
+
roles.json
|
|
523
|
+
members.json
|
|
524
|
+
assignments.json
|
|
525
|
+
responsibility-matrix.json
|
|
526
|
+
file-ownership.json
|
|
527
|
+
understandings/<roleId>.md
|
|
528
|
+
confirmations/<roleId>.md
|
|
529
|
+
```
|
|
530
|
+
|
|
531
|
+
`roles.json`、`members.json`、`assignments.json`、`responsibility-matrix.json`、`file-ownership.json` 必须是有效 JSON。5 个逻辑角色各有一份 `confirmations/<roleId>.md` 和一份 `understandings/<roleId>.md`;`roleId` 必须来自 `roles.json`,不得用显示名称代替。
|
|
532
|
+
|
|
533
|
+
团队入口注册:
|
|
534
|
+
|
|
535
|
+
- `xinyun-ai/manifest.json` 必须包含 `capabilities.teamResponsibilityClosure: true`。
|
|
536
|
+
- `xinyun-ai/manifest.json` 必须登记 `team.directory`、`roles`、`members`、`assignments`、`responsibilityMatrix`、`fileOwnership`、`understandingsDirectory`、`confirmationsDirectory` 这 8 个相对路径。
|
|
537
|
+
- `xinyun-ai/index/project-index.json` 必须登记 `team.enabled`、`directory`、`roleCount=5`、`confirmationCount=5`、`status=pending-confirmation` 和同名 `paths`。
|
|
538
|
+
- 注册路径必须与实际文件系统路径逐项一致。
|
|
539
|
+
|
|
540
|
+
未知绑定规则:
|
|
541
|
+
|
|
542
|
+
- 默认只创建逻辑角色和待绑定成员槽位,不虚构真实人员。
|
|
543
|
+
- 未绑定真实人员或会话时,`personId`、`sessionId`、职责确认记录中的 `memberId`、`confirmedBy` 和 `confirmedAt` 使用 `null`。
|
|
544
|
+
- `confirmations/<roleId>.md` 和 `understandings/<roleId>.md` 的 `createdAt`、`updatedAt` 必须存在且为 ISO 8601 时间;首次落盘可使用模板初始时间或替换为当前时间,但不得留空。
|
|
545
|
+
- 不因为角色数量增加而自动创建多个会话或外部账号。
|
|
546
|
+
|
|
547
|
+
状态分层:
|
|
548
|
+
|
|
549
|
+
- 角色生命周期:`unassigned`、`assigned`、`onboarding`、`ready`、`blocked`、`disabled`。
|
|
550
|
+
- 职责确认状态:`pending`、`confirmed`、`adjustment-required`。
|
|
551
|
+
- 任务分配状态:`pending`、`assigned`、`accepted`、`executing`、`paused`、`blocked`、`completed`、`cancelled`。
|
|
552
|
+
- `status=paused` 时必须填写 `pauseReason`,允许值至少包括 `out-of-scope`、`awaiting-confirmation`、`execution-failed`、`user-requested`;其他状态的 `pauseReason` 必须为 `null`。
|
|
553
|
+
- 确认人不可用或发生成员冲突时使用 `status=blocked`,并填写 `blockedReason=approver-unavailable` 或 `member-conflict`。
|
|
554
|
+
|
|
555
|
+
可执行前置条件:
|
|
556
|
+
|
|
557
|
+
- 成员已绑定。
|
|
558
|
+
- 角色生命周期为 `ready`。
|
|
559
|
+
- 职责确认状态为 `confirmed`。
|
|
560
|
+
- 角色理解记录为 `ready`。
|
|
561
|
+
- 任务执行人和确认人不冲突。
|
|
562
|
+
|
|
563
|
+
成员级确认冲突:
|
|
564
|
+
|
|
565
|
+
- 执行人不得直接作为自己的最终确认人。
|
|
566
|
+
- 最终确认关系必须在任务分配记录中落到成员 ID。
|
|
567
|
+
- `memberId` 不得等于 `technicalApproverMemberId`、`businessApproverMemberId` 或 `publishAuthorizerMemberId`。
|
|
568
|
+
- `roles.json` 中的默认确认角色只用于候选人推荐,不构成授权,也不能覆盖成员级冲突校验。
|
|
569
|
+
- 总工为执行人时不得回落为自己确认自己。
|
|
570
|
+
- 没有可用技术、业务或发布确认成员时,任务保持 `blocked` / 待分配,不得自动使用执行成员、虚构成员或空确认通过。
|
|
571
|
+
- 程序员不得担任技术最终确认人、业务最终确认人或发布授权人;本版本不设置例外。
|
|
572
|
+
|
|
573
|
+
角色理解记录:
|
|
574
|
+
|
|
575
|
+
- 每个角色按照自己的职责读取项目内容,生成独立理解记录。
|
|
576
|
+
- 理解记录必须包含 `recordId`、`roleId`、`memberId`、`status`、`readScope`、`readBudget`、`unreadablePaths`、`confirmedFacts`、`inferences`、`pendingQuestions`、`risks`、`evidence`、`coverage`、`executionEligible`、`createdAt`、`updatedAt`。
|
|
577
|
+
- 理解记录状态:`pending`、`reading`、`ready`、`partial`、`blocked`。
|
|
578
|
+
- 角色理解不等于代码修改授权;即使 `executionEligible=true`,仍必须有已确认任务单。
|
|
579
|
+
- 不要求所有角色初始化时全量扫描业务代码。
|
|
580
|
+
|
|
581
|
+
任务责任字段:
|
|
582
|
+
|
|
583
|
+
```md
|
|
584
|
+
- 需求负责人:
|
|
585
|
+
- 技术负责人 / 总工:
|
|
586
|
+
- 执行人:
|
|
587
|
+
- 测试审查人:
|
|
588
|
+
- 技术最终确认人:
|
|
589
|
+
- 业务最终确认人:
|
|
590
|
+
- 发布授权人:
|
|
591
|
+
```
|
|
592
|
+
|
|
593
|
+
文件目录责任和变更核对:
|
|
594
|
+
|
|
595
|
+
```md
|
|
596
|
+
## 预计更新文件目录
|
|
597
|
+
- 文件或目录:
|
|
598
|
+
- 文件类型:
|
|
599
|
+
- 负责角色:
|
|
600
|
+
- 执行角色:
|
|
601
|
+
- 审查角色:
|
|
602
|
+
- 最终确认角色:
|
|
603
|
+
|
|
604
|
+
## 实际更新文件目录
|
|
605
|
+
- 已修改:
|
|
606
|
+
- 新增:
|
|
607
|
+
- 删除:
|
|
608
|
+
- 未修改:
|
|
609
|
+
- 超出预计范围:
|
|
610
|
+
- 是否需要重新确认:
|
|
611
|
+
```
|
|
612
|
+
|
|
613
|
+
- 目录记录以相对 `repoRoot` 的正斜线路径为准,跨仓库必须分别记录。
|
|
614
|
+
- 文件、目录、通配符分别通过 `pathType` 标注;`pathType` 只能是 `file`、`directory` 或 `glob`。
|
|
615
|
+
- 路径不得包含 `..`。
|
|
616
|
+
- 删除和重命名必须记录旧路径,重命名还必须记录新路径。
|
|
617
|
+
- 生成文件必须列出实际输出路径,不得只写“生成相关文件”。
|
|
618
|
+
- `xinyun-ai/team/**`、`xinyun-ai/current-task.md`、`xinyun-ai/index/session-current.md`、`xinyun-ai/handoffs/**` 属于控制文件,计入实际更新记录,但与业务代码修改分栏统计。
|
|
619
|
+
- 实际目录通过文件清单和 diff 只读核对。
|
|
620
|
+
- 发现未授权路径后,任务状态改为 `paused`、`pauseReason=out-of-scope`,记录责任人、发现人、影响范围和重新确认人。
|
|
621
|
+
- 不得使用未定义状态 `paused-out-of-scope`。
|
|
622
|
+
|
|
390
623
|
## 双会话执行闭环(MVP)
|
|
391
624
|
|
|
392
625
|
复杂改动可使用一个主会话 + 一个执行会话的手工协作闭环。普通咨询、只读分析和不涉及文件修改的任务仍可使用单会话。
|
|
@@ -540,8 +773,9 @@ npx --yes @pm_zhousl/xinyun-ai-init@latest --force
|
|
|
540
773
|
6. 数据库、API、测试体系发现情况。
|
|
541
774
|
7. CodeGraph 与索引状态。
|
|
542
775
|
8. Git 模式、涉及仓库、当前分支和工作区状态。
|
|
543
|
-
9.
|
|
544
|
-
10.
|
|
776
|
+
9. AI 项目团队状态:团队目录、5 个角色、5 个职责确认记录、5 个角色理解记录、manifest / project-index 路径注册。
|
|
777
|
+
10. 待确认问题。
|
|
778
|
+
11. 后续日常开发和问题排查短指令。
|
|
545
779
|
|
|
546
780
|
交付输出要求:
|
|
547
781
|
|
|
@@ -13,3 +13,10 @@
|
|
|
13
13
|
- 首次极速初始化不强制创建 `xinyun-ai/global-review/`。
|
|
14
14
|
- 创建或更新全局审视后,必须同步 `xinyun-ai/global-review/index.json` 和 `xinyun-ai/index/project-index.json`。
|
|
15
15
|
- 全局审视最小字段包括:`reviewId`、触发原因、关联任务、影响层、已确认内容、推断内容、待确认内容、风险点、后续动作、创建时间、更新时间。
|
|
16
|
+
- 识别到端口框架线索时,可按需补齐 `workstreams/<端>/`,记录 ThinkPHP / uni-app / 微信小程序识别证据、证据类型、发现预算、覆盖范围、`未在项目中发现` 或 `状态未知`。
|
|
17
|
+
- 识别到多仓库 Git 结构时,可按需补齐端口 Git 只读索引,记录 `repoRoot`、`path`、`workstream`、`kind`、`parentRepo`、`branch`、`remote`、`status`、`evidence`,不得执行 Git 写操作。
|
|
18
|
+
- 触发字段影响审视时,可按需补齐字段审视记录,记录字段分类、检索根目录、排除项、CodeGraph 状态、证据、可能遗漏位置、兼容方案和确认状态。
|
|
19
|
+
- 首次初始化必须补齐 `xinyun-ai/team/`;升级时发现团队能力缺失,可按方案补齐团队控制文件。
|
|
20
|
+
- 团队目录补齐后必须同步 `manifest.json` 和 `index/project-index.json` 的 team 路径注册。
|
|
21
|
+
- `xinyun-ai/team/**` 属于控制文件,计入实际更新记录,但与业务代码修改分栏统计。
|
|
22
|
+
- 超出预计目录时必须设置 `status=paused`、`pauseReason=out-of-scope`,不得使用 `paused-out-of-scope`。
|
|
@@ -27,3 +27,19 @@ frameworks/frontend/<framework>.md
|
|
|
27
27
|
- 如需进一步确认,放到后续任务按需补齐。
|
|
28
28
|
- 未识别到对应框架时,不强行套用该框架规则。
|
|
29
29
|
- 多端项目应分别说明每个端口的框架、入口、启动线索和请求链路线索。
|
|
30
|
+
- 每个端口从端口根目录向下最多发现 3 层目录,最多读取 20 个关键文件。
|
|
31
|
+
- 正向识别必须列出证据路径和证据类型,证据类型包括依赖、配置、入口、目录结构和代码特征。
|
|
32
|
+
- 预算内无识别证据时标注 `未在项目中发现`。
|
|
33
|
+
- 权限不足、路径不可读或超过预算时标注 `状态未知`,同时写明 `覆盖范围:部分` 和未检查范围。
|
|
34
|
+
- 单一线索只能标注 `推断` 或 `待确认`。
|
|
35
|
+
- 不把 uni-app 规则套到原生微信小程序,也不把微信小程序规则套到 uni-app。
|
|
36
|
+
|
|
37
|
+
## 输出字段
|
|
38
|
+
|
|
39
|
+
- workstream
|
|
40
|
+
- 框架候选
|
|
41
|
+
- 识别状态:已确认 / 推断 / 待确认 / 未在项目中发现 / 状态未知
|
|
42
|
+
- 覆盖范围:完整 / 部分
|
|
43
|
+
- 发现预算:目录深度 3 层、关键文件 20 个
|
|
44
|
+
- 证据:路径、证据类型、命中内容摘要
|
|
45
|
+
- 未检查范围
|
|
@@ -27,3 +27,8 @@
|
|
|
27
27
|
- 首次初始化不为确认 ThinkPHP 做全量 grep。
|
|
28
28
|
- 不把 ThinkPHP 规则套到其他 PHP 框架。
|
|
29
29
|
- 不默认生成大量 ThinkPHP 说明文件。
|
|
30
|
+
- 每个端口从端口根目录向下最多发现 3 层目录,最多读取 20 个关键文件。
|
|
31
|
+
- 正向识别必须输出证据路径和证据类型:依赖、入口、目录结构、配置或代码特征。
|
|
32
|
+
- 预算内无 ThinkPHP 证据时标注 `未在项目中发现`。
|
|
33
|
+
- 超预算、权限不足或路径不可读时标注 `状态未知` 和 `覆盖范围:部分`,并列出未检查范围。
|
|
34
|
+
- 单一线索不能直接确认 ThinkPHP,只能标注 `推断` 或 `待确认`。
|
|
@@ -29,3 +29,8 @@
|
|
|
29
29
|
- 只发现单一线索时,标注为 `推断` 或 `待确认`,不得直接当作已确认 uni-app 项目。
|
|
30
30
|
- 首次初始化不为确认 uni-app 做全量 grep。
|
|
31
31
|
- 不把 uni-app 规则套到原生微信小程序。
|
|
32
|
+
- 每个端口从端口根目录向下最多发现 3 层目录,最多读取 20 个关键文件。
|
|
33
|
+
- 正向识别必须输出证据路径和证据类型:依赖、配置、入口、目录结构或代码特征。
|
|
34
|
+
- 预算内无 uni-app 证据时标注 `未在项目中发现`。
|
|
35
|
+
- 超预算、权限不足或路径不可读时标注 `状态未知` 和 `覆盖范围:部分`,并列出未检查范围。
|
|
36
|
+
- 不把原生微信小程序规则反向套到 uni-app。
|
|
@@ -29,3 +29,8 @@
|
|
|
29
29
|
- 只发现单一线索时,标注为 `推断` 或 `待确认`,不得直接当作已确认微信小程序项目。
|
|
30
30
|
- 首次初始化不为确认微信小程序做全量 grep。
|
|
31
31
|
- 不把微信小程序规则套到 uni-app。
|
|
32
|
+
- 每个端口从端口根目录向下最多发现 3 层目录,最多读取 20 个关键文件。
|
|
33
|
+
- 正向识别必须输出证据路径和证据类型:配置、入口、页面结构、目录结构或代码特征。
|
|
34
|
+
- 预算内无微信小程序证据时标注 `未在项目中发现`。
|
|
35
|
+
- 超预算、权限不足或路径不可读时标注 `状态未知` 和 `覆盖范围:部分`,并列出未检查范围。
|
|
36
|
+
- 不把 uni-app 规则反向套到原生微信小程序。
|
|
@@ -15,3 +15,10 @@
|
|
|
15
15
|
- 首次极速初始化不强制创建 `xinyun-ai/global-review/`。
|
|
16
16
|
- 需求模糊、涉及改动或出现高风险词时,先做中文需求解析;普通咨询不强制输出完整解析结构。
|
|
17
17
|
- 中文需求解析最多追问 1-3 个关键问题。
|
|
18
|
+
- ThinkPHP、uni-app、微信小程序轻量识别每个端口最多发现 3 层目录、读取 20 个关键文件,必须记录证据路径、证据类型、识别状态和覆盖范围。
|
|
19
|
+
- 多仓库 Git 只读索引最多发现 4 层目录、20 个仓库候选和 200 个目录 / 文件条目,只读取状态与证据,不执行 Git 写操作。
|
|
20
|
+
- 字段新增、删除、重命名、类型 / 含义变化、API 映射或前端展示变化时,先做字段影响审视;未确认前不得执行 SQL、migration、seed、批量数据修复或接口兼容改动。
|
|
21
|
+
- 首次初始化必须创建 `xinyun-ai/team/`,包含 5 个逻辑角色、5 个 JSON 配置、5 份 `confirmations/<roleId>.md` 和 5 份 `understandings/<roleId>.md`。
|
|
22
|
+
- `manifest.json` 必须登记 `capabilities.teamResponsibilityClosure: true` 和 team 的 8 个路径;`project-index.json` 必须登记 `roleCount=5`、`confirmationCount=5`、`status=pending-confirmation`。
|
|
23
|
+
- 团队成员未绑定时使用 `null`,不得虚构真实人员、会话 ID 或确认人。
|
|
24
|
+
- 普通咨询不强制创建完整团队任务链。
|
|
@@ -24,6 +24,18 @@ xinyun-ai/index/session-current.md
|
|
|
24
24
|
|
|
25
25
|
双会话交接单至少记录:执行前 Git 或文件状态、实际修改文件、diff 摘要、测试结果、未完成事项、新风险和是否存在超范围修改。
|
|
26
26
|
|
|
27
|
+
字段变更任务单还必须记录字段分类、专项路由、字段影响审视状态、检索根目录、排除项、CodeGraph 状态、证据预算、允许修改文件、禁止修改范围、SQL / migration / seed 禁止项和用户确认状态。
|
|
28
|
+
|
|
29
|
+
多仓库 Git 任务单还必须记录只读仓库索引:`repoRoot`、`path`、`workstream`、`kind`、`parentRepo`、`branch`、`remote`、`status`、`evidence`,以及是否存在 `状态未知` 或 `未在项目中发现`。
|
|
30
|
+
|
|
31
|
+
团队责任任务单还必须记录需求负责人、技术负责人 / 总工、执行人、测试审查人、技术最终确认人、业务最终确认人、发布授权人,以及对应成员 ID:`memberId`、`reviewerMemberId`、`technicalApproverMemberId`、`businessApproverMemberId`、`publishAuthorizerMemberId`。
|
|
32
|
+
|
|
33
|
+
执行人不得作为自己的最终确认人,必须按 `memberId` 判断冲突;当 `memberId` 等于 `technicalApproverMemberId`、`businessApproverMemberId` 或 `publishAuthorizerMemberId` 时,任务必须 `status=blocked`,`blockedReason=member-conflict`。
|
|
34
|
+
|
|
35
|
+
确认人不可用时,任务必须 `status=blocked`,`blockedReason=approver-unavailable`。不得自动使用执行成员、虚构成员或空确认通过。
|
|
36
|
+
|
|
37
|
+
任务开始前必须记录预计更新文件目录;任务完成后必须记录实际更新文件目录。发现实际修改超出预计目录时,任务必须 `status=paused`,`pauseReason=out-of-scope`,不得使用 `paused-out-of-scope`。
|
|
38
|
+
|
|
27
39
|
状态机至少包含:待确认、待执行、执行中、暂停待复核、待主会话复核、已完成、失败、中断、超时、阻塞、取消、需重新确认。
|
|
28
40
|
|
|
29
41
|
失败、中断、超时后不得自动重试。重试必须由主会话重新确认并增加 `attempt`,不能覆盖历史交接结果。
|
|
@@ -52,6 +64,47 @@ xinyun-ai/index/session-current.md
|
|
|
52
64
|
|
|
53
65
|
## 数据库 / API / UI / 配置影响
|
|
54
66
|
|
|
67
|
+
## 团队责任与审批关系
|
|
68
|
+
|
|
69
|
+
- 需求负责人:
|
|
70
|
+
- 技术负责人 / 总工:
|
|
71
|
+
- 执行人:
|
|
72
|
+
- 测试审查人:
|
|
73
|
+
- 技术最终确认人:
|
|
74
|
+
- 业务最终确认人:
|
|
75
|
+
- 发布授权人:
|
|
76
|
+
- memberId:
|
|
77
|
+
- reviewerMemberId:
|
|
78
|
+
- technicalApproverMemberId:
|
|
79
|
+
- businessApproverMemberId:
|
|
80
|
+
- publishAuthorizerMemberId:
|
|
81
|
+
- blockedReason:
|
|
82
|
+
- pauseReason:
|
|
83
|
+
- memberId 冲突检查:
|
|
84
|
+
|
|
85
|
+
## 预计更新文件目录
|
|
86
|
+
|
|
87
|
+
- 文件或目录:
|
|
88
|
+
- 文件类型:
|
|
89
|
+
- 负责角色:
|
|
90
|
+
- 执行角色:
|
|
91
|
+
- 审查角色:
|
|
92
|
+
- 最终确认角色:
|
|
93
|
+
|
|
94
|
+
## 字段影响审视
|
|
95
|
+
|
|
96
|
+
- 字段分类:
|
|
97
|
+
- 专项路由:
|
|
98
|
+
- 审视状态:
|
|
99
|
+
- 检索根目录:
|
|
100
|
+
- 排除目录与文件:
|
|
101
|
+
- CodeGraph 状态:
|
|
102
|
+
- 工具预算:
|
|
103
|
+
- 证据列表:
|
|
104
|
+
- 可能遗漏位置:
|
|
105
|
+
- 旧数据兼容方案:
|
|
106
|
+
- 是否需要用户确认:
|
|
107
|
+
|
|
55
108
|
## 验证命令
|
|
56
109
|
|
|
57
110
|
## 验收标准
|
|
@@ -90,4 +143,24 @@ xinyun-ai/index/session-current.md
|
|
|
90
143
|
## 是否执行过高风险操作
|
|
91
144
|
|
|
92
145
|
## 是否发现新影响范围
|
|
146
|
+
|
|
147
|
+
## 字段影响审视交接
|
|
148
|
+
|
|
149
|
+
- 审视状态:
|
|
150
|
+
- 实际证据数量:
|
|
151
|
+
- 可能遗漏位置:
|
|
152
|
+
- 兼容方案变化:
|
|
153
|
+
- 是否触发重新确认:
|
|
154
|
+
|
|
155
|
+
## 实际更新文件目录
|
|
156
|
+
|
|
157
|
+
- 已修改:
|
|
158
|
+
- 新增:
|
|
159
|
+
- 删除:
|
|
160
|
+
- 未修改:
|
|
161
|
+
- 超出预计范围:
|
|
162
|
+
- 是否需要重新确认:
|
|
163
|
+
- 控制文件:
|
|
164
|
+
- 业务代码:
|
|
165
|
+
- out-of-scope 处理:
|
|
93
166
|
```
|
|
@@ -25,8 +25,17 @@
|
|
|
25
25
|
- 是否需要补充中文需求解析和任务分型规则。
|
|
26
26
|
- 是否需要补充 `xinyun-ai/global-review/` 按需创建规则。
|
|
27
27
|
- 是否需要补充轻量框架适配识别规则。
|
|
28
|
+
- 是否需要补充框架识别证据路径、证据类型、发现预算、`状态未知` 和 `未在项目中发现` 语义。
|
|
29
|
+
- 是否需要补充多仓库 Git 只读索引字段:`repoRoot`、`path`、`workstream`、`kind`、`parentRepo`、`branch`、`remote`、`status`、`evidence`。
|
|
30
|
+
- 是否需要补充字段影响审视、字段任务分型和字段专项路由规则。
|
|
31
|
+
- 是否需要补充 `xinyun-ai/team/` 团队责任闭环。
|
|
32
|
+
- 是否需要补充 `capabilities.teamResponsibilityClosure: true` 和 team 的 8 个路径注册。
|
|
33
|
+
- 是否需要补充 5 个逻辑角色、5 个 JSON 配置、5 份职责确认记录和 5 份角色理解记录。
|
|
34
|
+
- 是否需要补充成员级自确认阻断、确认人缺失 `blocked`、超范围 `paused` + `pauseReason=out-of-scope` 规则。
|
|
28
35
|
- 当前 `xinyun-ai/manifest.json` 的版本是否低于初始化包版本。
|
|
29
36
|
|
|
30
37
|
涉及正式规则、目录结构、索引结构或旧规则合并时,必须先确认。
|
|
31
38
|
|
|
32
39
|
升级不自动迁移全部旧 AI 文档,不会自动覆盖现有正式规则,也不会因为补充全局审视规则而在首次极速初始化阶段强制创建全局审视目录。
|
|
40
|
+
|
|
41
|
+
升级补齐团队能力时,只允许更新 `xinyun-ai/` 内控制文件;不得修改业务代码、数据库、API、依赖、构建脚本或执行发布操作。已有团队配置不得被无确认覆盖,缺失项按方案等待用户确认后补齐。
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
|
|
33
33
|
只有用户明确回复“确认执行”“可以修改”“按方案改”“同意”等类似内容后,才允许在确认范围内执行。
|
|
34
34
|
|
|
35
|
-
说明:用户发送 `xinyun-ai-init` 一句话入口后,视为已授权 AI 创建或补齐最小 `xinyun-ai/` 与本入口文件;该授权不包含业务代码、配置、数据库、API、UI 或业务流程修改。
|
|
35
|
+
说明:用户发送 `xinyun-ai-init` 一句话入口后,视为已授权 AI 创建或补齐最小 `xinyun-ai/`、`xinyun-ai/team/` 与本入口文件;该授权不包含业务代码、配置、数据库、API、UI 或业务流程修改。
|
|
36
36
|
|
|
37
37
|
执行过程中发现新增影响范围、计划外文件、计划外数据库 / API / UI / 配置影响、计划外高风险操作或验收标准变化时,必须暂停并重新确认。
|
|
38
38
|
|
|
@@ -58,6 +58,8 @@
|
|
|
58
58
|
|
|
59
59
|
任务类型至少包括:问题排查、新功能开发、UI 调整、API / 接口调整、数据库 / SQL、商业逻辑、Git / 发布、文档沉淀、规则调整、临时咨询。
|
|
60
60
|
|
|
61
|
+
字段变更类任务必须细分为:数据库字段新增 / 删除 / 重命名、字段类型或含义变更、API 字段调整、字段展示或渲染调整,并路由到字段影响审视 / 普通改动计划 / SQL 提醒 / 业务流程理解。
|
|
62
|
+
|
|
61
63
|
高歧义表达包括:优化一下、处理一下、不对、怪怪的、照之前、顺便、差不多、参考一下。
|
|
62
64
|
|
|
63
65
|
高风险词包括:订单、支付、退款、优惠券、会员、权益、金额、积分、分润、提现、结算、权限、删除、批量、发布、回滚。
|
|
@@ -82,6 +84,12 @@
|
|
|
82
84
|
|
|
83
85
|
未获用户明确确认前,AI 不得自动执行 `commit`、`tag`、`push`、`pull`、`merge`、`rebase`、`reset`、`checkout` 回滚或切分支。
|
|
84
86
|
|
|
87
|
+
多仓库 Git 只读索引最多向下发现 4 层目录、记录 20 个仓库候选和 200 个目录 / 文件条目;仓库索引必须包含 `repoRoot`、`path`、`workstream`、`kind`、`parentRepo`、`branch`、`remote`、`status`、`evidence`。预算内无证据标注 `未在项目中发现`;超预算、权限不足、路径不可读或状态无法确认标注 `状态未知`。
|
|
88
|
+
|
|
89
|
+
ThinkPHP、uni-app、微信小程序轻量识别每个端口最多发现 3 层目录、读取 20 个关键文件。正向识别必须输出证据路径和证据类型;预算内无证据标注 `未在项目中发现`;超预算、权限不足或路径不可读标注 `状态未知` 和 `覆盖范围:部分`;不得混用 uni-app 与原生微信小程序规则。
|
|
90
|
+
|
|
91
|
+
字段新增、删除、重命名、类型变化、含义变化、API 映射变化或前端展示变化时,必须先做字段影响审视,区分数据库字段 / API 字段 / 前端展示字段,说明检索根目录、排除项、CodeGraph 状态、证据列表、覆盖范围、可能遗漏、旧数据兼容方案、风险和确认状态。每个端口最多检查 300 个候选文件、1000 条匹配结果和 50 条证据记录;未确认前不得执行 SQL、migration、seed、批量数据修复或接口兼容改动。
|
|
92
|
+
|
|
85
93
|
复杂改动可使用双会话执行闭环。主会话负责理解中文需求、识别任务类型和影响范围、生成改动计划、等待用户确认、生成执行任务单、复核执行结果并输出最终交付结论。执行会话负责读取任务单、只在确认范围内执行、进行必要验证、输出执行交接单、不创建第三个会话、不自行扩大范围。
|
|
86
94
|
|
|
87
95
|
双会话文件契约:`xinyun-ai/current-task.md` 由主会话维护;`xinyun-ai/index/session-current.md` 是主会话创建的临时执行任务单,执行会话只读;`xinyun-ai/handoffs/current-execution.md` 是执行会话写入的执行交接单,主会话只读复核。
|
|
@@ -100,6 +108,24 @@
|
|
|
100
108
|
|
|
101
109
|
需要落盘时按需创建或更新 `xinyun-ai/global-review/`、`xinyun-ai/global-review/index.json`,并同步 `xinyun-ai/index/project-index.json`。全局审视不代替改动计划,也不会授权 AI 直接修改业务代码。
|
|
102
110
|
|
|
111
|
+
## AI 项目团队与责任闭环
|
|
112
|
+
|
|
113
|
+
初始化时必须创建 `xinyun-ai/team/`,包含 5 个逻辑角色:`project-owner`、`project-product`、`chief-engineer`、`programmer`、`test-reviewer`。
|
|
114
|
+
|
|
115
|
+
团队配置必须包含 5 个 JSON:`roles.json`、`members.json`、`assignments.json`、`responsibility-matrix.json`、`file-ownership.json`;还必须包含 5 份 `confirmations/<roleId>.md` 和 5 份 `understandings/<roleId>.md`。
|
|
116
|
+
|
|
117
|
+
`manifest.json` 必须声明 `capabilities.teamResponsibilityClosure: true` 并登记 team 的 8 个相对路径;`project-index.json` 必须登记 `team.enabled`、`roleCount=5`、`confirmationCount=5`、`status=pending-confirmation` 和同名路径。
|
|
118
|
+
|
|
119
|
+
团队角色只是本地逻辑配置,不自动创建外部人员账号、外部 AI 会话或无限会话。未绑定真实人员或会话时,`personId`、`sessionId`、`memberId`、`confirmedBy` 使用 `null`,不得虚构。
|
|
120
|
+
|
|
121
|
+
角色生命周期:`unassigned`、`assigned`、`onboarding`、`ready`、`blocked`、`disabled`。职责确认状态:`pending`、`confirmed`、`adjustment-required`。任务分配状态:`pending`、`assigned`、`accepted`、`executing`、`paused`、`blocked`、`completed`、`cancelled`。
|
|
122
|
+
|
|
123
|
+
`status=paused` 时必须填写 `pauseReason`,超范围统一使用 `pauseReason=out-of-scope`;不得使用未定义状态 `paused-out-of-scope`。确认人不可用或成员冲突时使用 `status=blocked`,并填写 `blockedReason=approver-unavailable` 或 `member-conflict`。
|
|
124
|
+
|
|
125
|
+
执行人不得直接作为自己的最终确认人,冲突必须按成员 ID 判断:`memberId` 不得等于 `technicalApproverMemberId`、`businessApproverMemberId` 或 `publishAuthorizerMemberId`。`roles.json` 中的默认确认角色只用于候选推荐,不能覆盖成员级冲突校验。程序员不得担任技术最终确认人、业务最终确认人或发布授权人。
|
|
126
|
+
|
|
127
|
+
任务开始前记录预计更新文件目录,完成后通过文件清单和 diff 只读核对实际更新文件目录。发现实际修改超出预计目录时,任务必须设置 `status=paused`、`pauseReason=out-of-scope`,返回总工或主会话重新确认。
|
|
128
|
+
|
|
103
129
|
AI 接手本项目时,请先读取:
|
|
104
130
|
|
|
105
131
|
- `xinyun-ai/README.md`
|