@pm_zhousl/xinyun-ai-init 1.16.0 → 2.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 (74) hide show
  1. package/README.md +10 -15
  2. package/init/xinyun-ai-init/README.md +112 -1117
  3. package/init/xinyun-ai-init/rules/coordination.md +30 -20
  4. package/init/xinyun-ai-init/rules/directory-self-completion.md +4 -0
  5. package/init/xinyun-ai-init/rules/init-rules.md +6 -0
  6. package/init/xinyun-ai-init/rules/session-workbench.md +6 -0
  7. package/init/xinyun-ai-init/rules/skills.md +8 -0
  8. package/init/xinyun-ai-init/rules/temporary-sessions.md +4 -0
  9. package/init/xinyun-ai-init/rules/upgrade-rules.md +6 -0
  10. package/init/xinyun-ai-init/rules/v2.0.0-shared-project-conversations.md +68 -0
  11. package/init/xinyun-ai-init/rules/v2.0.0-single-session-skills.md +89 -0
  12. package/init/xinyun-ai-init/templates/AGENTS.template.md +16 -231
  13. package/init/xinyun-ai-init/templates/README.template.md +26 -39
  14. package/init/xinyun-ai-init/templates/agent-profile.template.json +10 -15
  15. package/init/xinyun-ai-init/templates/bootstrap-snapshot.template.json +6 -1
  16. package/init/xinyun-ai-init/templates/control-plane-index.template.json +32 -26
  17. package/init/xinyun-ai-init/templates/conversation-binding.template.json +26 -0
  18. package/init/xinyun-ai-init/templates/conversation-event.template.json +24 -0
  19. package/init/xinyun-ai-init/templates/conversation-registry.template.json +15 -0
  20. package/init/xinyun-ai-init/templates/conversation-stream-head.template.json +14 -0
  21. package/init/xinyun-ai-init/templates/conversation-sync-cursor.template.json +13 -0
  22. package/init/xinyun-ai-init/templates/coordination-change-ledger.template.json +6 -3
  23. package/init/xinyun-ai-init/templates/coordination-conflict-record.template.json +6 -1
  24. package/init/xinyun-ai-init/templates/coordination-project-facts.template.json +5 -3
  25. package/init/xinyun-ai-init/templates/core-rules.template.md +42 -621
  26. package/init/xinyun-ai-init/templates/current-task.template.md +24 -322
  27. package/init/xinyun-ai-init/templates/handoff.template.json +9 -14
  28. package/init/xinyun-ai-init/templates/init-result.template.json +21 -216
  29. package/init/xinyun-ai-init/templates/initialization-recovery.template.json +12 -17
  30. package/init/xinyun-ai-init/templates/initialization-stages.template.json +10 -10
  31. package/init/xinyun-ai-init/templates/local-query-index.template.json +1 -1
  32. package/init/xinyun-ai-init/templates/manifest.template.json +80 -387
  33. package/init/xinyun-ai-init/templates/multi-conversation-migration.template.json +24 -0
  34. package/init/xinyun-ai-init/templates/onboarding-report.template.json +22 -17
  35. package/init/xinyun-ai-init/templates/orchestrator.template.json +20 -10
  36. package/init/xinyun-ai-init/templates/preflight-report.template.json +18 -39
  37. package/init/xinyun-ai-init/templates/project-check.template.md +42 -184
  38. package/init/xinyun-ai-init/templates/project-context.template.json +20 -0
  39. package/init/xinyun-ai-init/templates/project-guide.template.md +42 -249
  40. package/init/xinyun-ai-init/templates/project-index.template.json +47 -415
  41. package/init/xinyun-ai-init/templates/project-status.template.json +17 -42
  42. package/init/xinyun-ai-init/templates/provider-adapter.template.json +20 -33
  43. package/init/xinyun-ai-init/templates/re-takeover-record.template.json +37 -0
  44. package/init/xinyun-ai-init/templates/session-binding.template.json +21 -18
  45. package/init/xinyun-ai-init/templates/single-session-migration.template.json +31 -0
  46. package/init/xinyun-ai-init/templates/skill-run-record.template.json +10 -6
  47. package/init/xinyun-ai-init/templates/skill-runtime-route.template.json +17 -4
  48. package/init/xinyun-ai-init/templates/skills-assignments.template.json +18 -13
  49. package/init/xinyun-ai-init/templates/skills-registry.template.json +24 -2
  50. package/init/xinyun-ai-init/templates/sync-check.template.json +23 -0
  51. package/init/xinyun-ai-init/templates/takeover-gate.template.json +13 -8
  52. package/init/xinyun-ai-init/templates/task-graph.template.json +5 -14
  53. package/init/xinyun-ai-init/templates/task-index.template.json +27 -84
  54. package/init/xinyun-ai-init/templates/task-lease.template.json +19 -0
  55. package/init/xinyun-ai-init/templates/task-main.template.md +28 -37
  56. package/init/xinyun-ai-init/version.json +4 -3
  57. package/package.json +8 -3
  58. package/scripts/collect-v2-evidence.js +35 -0
  59. package/scripts/publish-with-token.ps1 +6 -16
  60. package/scripts/run-v2-runtime-probe.js +110 -0
  61. package/scripts/verify-init-package.js +5 -0
  62. package/scripts/verify-multi-conversation-contract.js +61 -0
  63. package/scripts/verify-re-takeover-contract.js +54 -0
  64. package/scripts/verify-release-gate.js +21 -13
  65. package/scripts/verify-rules-package.js +7 -0
  66. package/scripts/verify-rules-tarball-security.js +1 -1
  67. package/scripts/verify-v2-package.js +210 -0
  68. package/scripts/verify-v2-tarball.js +73 -0
  69. package/test-scenarios/multi-conversation-evidence.json +26 -0
  70. package/test-scenarios/multi-conversation-scenarios.md +16 -0
  71. package/test-scenarios/re-takeover-evidence.json +20 -0
  72. package/test-scenarios/re-takeover-scenarios.md +33 -0
  73. package/test-scenarios/v2.0.0-behavior-evidence.json +40 -0
  74. package/test-scenarios/v2.0.0-scenarios.md +21 -0
@@ -1,18 +1,28 @@
1
1
  {
2
- "schemaVersion": 1,
3
- "orchestratorId": "orchestrator-template",
4
- "orchestratorSessionId": null,
5
- "provider": "codex",
6
- "parentTaskId": null,
2
+ "schemaVersion": 2,
3
+ "executionModel": "shared-project-multi-conversation-runtime",
4
+ "orchestratorId": "shared-project-context-orchestrator",
5
+ "projectContextId": null,
6
+ "conversationBindingId": null,
7
7
  "projectRootHash": null,
8
8
  "workspaceScope": "xinyun-ai-control",
9
- "responsibilities": ["requirement-understanding", "task-decomposition", "role-assignment", "dependency-management", "result-aggregation", "conflict-routing", "test-review", "final-delivery"],
10
- "status": "blocked",
11
- "statusEnum": ["pending", "active", "blocked", "closed"],
9
+ "responsibilities": [
10
+ "requirement-intake",
11
+ "task-registration",
12
+ "dependency-management",
13
+ "skill-routing",
14
+ "conversation-incremental-sync",
15
+ "skill-execution",
16
+ "task-lease-management",
17
+ "shared-fact-writeback",
18
+ "conflict-routing",
19
+ "self-check",
20
+ "final-delivery"
21
+ ],
22
+ "status": "pending",
12
23
  "identityEvidence": [],
13
- "dispatchEvidence": [],
24
+ "interactionEvidence": [],
14
25
  "taskGraphPath": "xinyun-ai/tasks/task-graph.json",
15
- "nextAction": "obtain canonical orchestrator session evidence",
16
26
  "createdAt": null,
17
27
  "updatedAt": null
18
28
  }
@@ -1,46 +1,25 @@
1
1
  {
2
- "schemaVersion": 1,
3
- "preflightId": "preflight-template",
2
+ "schemaVersion": 2,
3
+ "executionModel": "shared-project-multi-conversation-runtime",
4
4
  "projectRootHash": null,
5
- "projectStatus": "not-started",
6
- "result": "not-run",
7
- "resultEnum": ["not-run", "partial", "blocked", "ready"],
8
- "startedAt": null,
9
- "finishedAt": null,
10
- "checks": [],
11
- "checkRequiredFields": ["checkId", "category", "status", "evidence", "unverifiedScope", "failureReason", "checkedAt"],
12
- "projectIdentity": { "status": "unknown", "projectRoot": null, "projectName": null, "repositoryScopeHash": null, "workstream": null, "version": null, "codeBaselineHash": null, "evidence": [] },
13
- "hostCapabilities": { "status": "unknown", "recordPath": "xinyun-ai/host-capabilities.json", "evidence": [] },
14
- "codeGraph": { "codeGraphRecordId": null, "statusSource": "xinyun-ai/manifest.json", "status": "unknown", "recordPath": "xinyun-ai/manifest.json", "command": "codegraph init -i", "sourceRevision": null, "indexScope": [], "unindexedScope": [], "failureReason": null, "evidence": [] },
15
- "baseline": { "status": "unknown", "recordPath": "xinyun-ai/index/takeover-baseline.json", "businessFilesHash": null, "controlFilesHash": null, "uncommittedGitChanges": [], "existingTasks": [], "existingSessions": [], "legacyAiDocuments": [], "evidence": [] },
16
- "git": { "kind": "unknown", "status": "unknown", "evidence": [] },
17
- "testFramework": { "status": "unknown", "commands": [], "directories": [], "buildChecks": [], "evidence": [], "unverifiedScope": [] },
18
- "toolchains": { "status": "unknown", "detected": [], "notDetected": [], "degraded": [], "unverifiedScope": [] },
19
- "legacyHandoff": { "status": "unknown", "adopted": [], "pendingConfirmation": [], "notAdopted": [], "evidence": [] },
20
- "team": { "status": "unknown", "roleIds": ["project-owner", "project-product", "chief-engineer", "programmer", "test-reviewer"], "evidence": [] },
21
- "tasks": { "status": "unknown", "mainTaskId": null, "roleTaskIds": [], "evidence": [] },
22
- "controlPlane": { "status": "unknown", "indexPath": "xinyun-ai/index/control-plane-index.json", "lockPath": "xinyun-ai/task-lock.json", "eventLogPath": "xinyun-ai/events/events.jsonl", "evidence": [] },
23
- "database": {
24
- "authorization": "not-requested",
25
- "executionStatus": "needs-confirmation",
26
- "redactionStatus": "verified",
27
- "databaseAccessMode": "local-files-read-only",
28
- "legacyDatabaseAccessMode": "sql-only",
29
- "sqlExecutionMode": "generate-only",
30
- "connectionStatus": "not-requested",
31
- "connected": false,
32
- "sqlExecuted": false,
33
- "localFileReadStatus": "not-checked",
34
- "localFileReadPolicy": "database-related-task-only",
35
- "localDatabaseFileScope": ["*.sql", "*.ddl", "*.schema", "*.migration", "database/", "migrations/", "schema/", "models/"],
36
- "localFilesRead": [],
37
- "unverifiedScope": [],
38
- "evidence": []
5
+ "status": "not-started",
6
+ "checks": {
7
+ "projectIdentity": "not-checked",
8
+ "workspaceScope": "not-checked",
9
+ "projectContext": "not-checked",
10
+ "conversationBinding": "not-checked",
11
+ "incrementalSync": "not-checked",
12
+ "controlFileReadWrite": "not-checked",
13
+ "taskConsistency": "not-checked",
14
+ "skillRegistry": "not-checked",
15
+ "codeGraph": "not-checked",
16
+ "legacyInventory": "not-checked",
17
+ "sensitiveScan": "not-checked"
39
18
  },
40
- "sensitiveScan": { "status": "unknown", "matches": [], "scannedOutputs": [] },
19
+ "requiredConversationEvidence": ["create-or-reuse", "send", "receive", "query-status", "recover", "close", "control-file-read-write"],
41
20
  "blockedReasons": [],
42
21
  "unverifiedScope": [],
43
- "forbiddenOperations": { "businessCodeWrite": false, "databaseConnection": false, "sqlExecution": false, "gitWrite": false, "dependencyInstall": false, "npmPublish": false },
44
- "atomicWrite": { "required": true, "tempFile": true, "rename": true, "indexRevision": null, "recoveryRequired": false },
22
+ "evidence": [],
23
+ "createdAt": null,
45
24
  "updatedAt": null
46
25
  }
@@ -1,198 +1,56 @@
1
- # 项目完整性检查
1
+ # 项目完整性检查
2
2
 
3
- ## 检查范围
3
+ ## 项目身份
4
4
 
5
- 首次只做极速检查,每个端最多读取 3-5 个关键文件。
5
+ - `projectRootHash` 已验证:待填写
6
+ - 工作区、仓库范围和 cwd 一致:待填写
7
+ - 未复用其他项目对话、事件或任务:待填写
6
8
 
7
- ## 检查结果
9
+ ## 项目上下文与多对话
8
10
 
9
- - 当前目录是否像真实项目:待填写
10
- - 技术栈、包管理器、运行环境:待填写
11
- - 多端或多模块结构:待填写
12
- - 本地启动、构建、测试、lint、typecheck 命令:待填写
13
- - 数据库相关线索:待填写
14
- - API 相关线索:待填写
15
- - 配置线索:待填写
16
- - 测试体系线索:待填写
17
- - Git 模式与仓库线索:待填写
18
- - 多仓库 Git 只读索引:待填写
19
- - 已有 AI 痕迹:待填写
20
- - 旧 AI 沉淀来源:待填写
21
- - 可接管内容:待填写
22
- - 不接管内容:待填写
23
- - 待确认内容:待填写
24
- - 不存在的旧路径:待填写
25
- - 规则入口优先级:待填写
26
- - 中文需求解析触发情况:待填写
27
- - 字段变更任务分型与专项路由:待填写
28
- - 全局影响审视触发情况:待填写
29
- - 轻量框架识别:待填写
30
- - 证据路径与证据类型:待填写
31
- - 发现预算与覆盖范围:待填写
32
- - 字段影响审视:待填写
33
- - 字段分类:待填写
34
- - 检索根目录与排除项:待填写
35
- - CodeGraph 状态与降级说明:待填写
36
- - 证据、可能遗漏和兼容方案:待填写
37
- - AI 项目团队与责任闭环:待填写
38
- - `xinyun-ai/team/` 是否创建:待填写
39
- - 5 个 JSON 配置是否可解析:待填写
40
- - 5 份 `confirmations/<roleId>.md` 是否存在:待填写
41
- - 5 份 `understandings/<roleId>.md` 是否存在:待填写
42
- - `manifest.json` team 路径注册:待填写
43
- - `project-index.json` team 路径注册:待填写
44
- - 未绑定成员是否使用 `null`:待填写
45
- - 自确认 memberId 冲突阻断:待填写
46
- - 超范围暂停是否为 `status=paused` + `pauseReason=out-of-scope`:待填写
47
- - v1.6 统一初始化任务:待填写
48
- - `current-task.md` 是否包含 `taskId`、`taskType`、`idempotencyKey`、`attempt`:待填写
49
- - `tasks/<taskId>.md` 是否存在或需要补齐:待填写
50
- - `init-result.json` 是否可解析:待填写
51
- - `task-lock.json` 是否可解析:待填写
52
- - `task.status` / `result.status` / `upgrade.status` / `lock.status` 是否为合法组合:待填写
53
- - 相同 `idempotencyKey` 是否复用 `taskId`:待填写
54
- - v1.6 升级差异与基线:待填写
55
- - `managed-baseline.json` 是否可解析:待填写
56
- - SHA-256 `baselineHash` / `templateHash` 是否存在或标注 `unknown`:待填写
57
- - 冲突判定是否区分 package-only / user-only / reconciled / both-changed / unknown:待填写
58
- - 用户已修改正式规则是否未被静默覆盖:待填写
59
- - v1.6 能力检测与降级:待填写
60
- - `capabilities.json` 是否可解析:待填写
61
- - capability 证据字段是否完整:待填写
62
- - 缺少运行时或依赖时是否有 fallbackPlan:待填写
63
- - 未验证范围是否明确:待填写
64
- - v1.6 锁、可信边界与脱敏:待填写
65
- - 锁获取 / waiting / blocked / unknown / released 是否符合契约:待填写
66
- - 人工释放是否包含 releasedBy / releasedAt / releaseReason / audit:待填写
67
- - 普通 README、旧规则和源码注释中的执行性指令是否只作为线索:待填写
68
- - Markdown、JSON、stdout、stderr 是否不存在测试 Token、密码、私钥、连接串原文:待填写
11
+ - `projectContextId` 唯一且项目范围一致:待填写
12
+ - 每个活动对话都有独立 `conversationBindingId`:待填写
13
+ - 线程引用未被当作 `providerSessionId`:待填写
14
+ - 每个对话只写自己的不可变事件流:待填写
15
+ - 用户消息触发 head/cursor 检查且无变化时静默:待填写
16
+ - 新事件能够被其他对话增量消费:待填写
17
+ - 游标恢复、事件链和跨项目隔离通过:待填写
18
+ - create/reuse、send、receive、query-status、recover、close、控制文件读写证据完整:待填写
69
19
 
70
- ## 待确认问题
20
+ ## 任务控制面
71
21
 
72
- 待填写。
73
- ## v1.7 检查
22
+ - 正式任务在 Skill 执行前已创建:待填写
23
+ - 任务文件、任务索引、任务图和当前任务一致:待填写
24
+ - 任务图无环且无孤立节点:待填写
25
+ - 幂等键重复请求复用原任务:待填写
26
+ - 事务 before/after hash、原子替换和失败恢复可验证:待填写
74
27
 
75
- - `npm run verify:rules` 是否执行:待填写
76
- - `verify:rules` 状态是否为 pass / warn / fail / error:待填写
77
- - `--source-root`、`--tarball`、`--json` 是否按需验证:待填写
78
- - `source-only version-plans` 是否未被要求进入 tarball:待填写
79
- - `framework-profile.md` 是否存在或明确不需要:待填写
80
- - `framework-profile.json` 是否可解析:待填写
81
- - language / runtime / platform / framework 是否独立记录:待填写
82
- - frameworkStatus 是否为 confirmed / inferred / not-found / unknown / detected-unsupported:待填写
83
- - moduleStatus / activation 是否为 loaded / not-loaded:待填写
84
- - ThinkPHP 是否只在 confirmed 且模块匹配时 loaded:待填写
85
- - v1.7 深化预算是否为 5 层目录、80 个关键文件、100 条证据:待填写
86
- - HTML 迁移目录 `xinyun-ai/migrations/html-to-client/` 是否存在或明确不需要:待填写
87
- - migration-record.json 是否可解析:待填写
88
- - decision 是否为 direct-map / rewrite-required / backend-required / unsupported / pending / unknown:待填写
89
- - status 是否为 planned / assessing / partial / blocked / paused / completed:待填写
90
- - coverage 是否为 full / partial / unknown:待填写
91
- - scope/unverifiedScope 是否包含 itemId / path / itemType / reason / checkedAt:待填写
92
- - 越界是否进入 `status=paused` + `pauseReason=out-of-scope`:待填写
28
+ ## Skill
93
29
 
94
- ## v1.7.1 检查
30
+ - 路由只使用任务事实,不使用固定角色:待填写
31
+ - 已记录候选、选中、拒绝、降级和阻断原因:待填写
32
+ - 每次运行有独立 `skillRunId` 和阶段证据:待填写
33
+ - 同一对话测试只标记为 `self-check`:待填写
34
+ - 缺失依赖或权限时未自动安装或伪造执行:待填写
95
35
 
96
- - 主任务标题是否为 `项目初始化:<项目显示名>`:待填写
97
- - current-task、主任务、init-result、task-index 的 taskId/title/status 是否一致:待填写
98
- - 是否生成 5 个角色子任务:待填写
99
- - 子任务是否包含 roleTaskId、parentTaskId、taskKind、memberId、sessionId:待填写
100
- - 未绑定成员或会话是否使用 null:待填写
101
- - initialization-record 是否与 role-execution 分离:待填写
102
- - executionEligible 是否未被伪造为 true:待填写
103
- - `xinyun-ai/tasks/task-index.json` 是否可解析:待填写
104
- - activeTaskIds / executableTaskIds / archivedTaskIds / currentTaskId 是否一致:待填写
105
- - 初始化控制面完成后是否归档:待填写
106
- - `xinyun-ai/tasks/.archive-transactions/<archiveTransactionId>.json` 是否存在:待填写
107
- - archive phase 是否为 prepared / validated / moved / indexed / committed / recovery-required / blocked:待填写
108
- - 归档中断恢复是否不丢历史、不重复移动:待填写
109
- - 无任务时 current-task 是否为 status=idle、taskId=null、title=暂无待执行任务:待填写
110
- - `.codegraph/` 是否按授权边界处理:待填写
111
- - CodeGraph 首次缺失且命令可用时是否执行 `codegraph init -i`:待填写
112
- - 健康 CodeGraph 索引是否复用:待填写
113
- - CodeGraph 状态是否为 initialized / healthy / missing / unavailable / permission-denied / failed / unknown:待填写
114
- - manifest 是否为 CodeGraph 状态源:待填写
115
- - project-index/current-task/init-result 是否引用同一 codeGraphRecordId:待填写
116
- - CodeGraph 失败矩阵是否正确进入 blocked 或明确授权 partial:待填写
117
- - 是否未自动安装 CodeGraph、修改系统环境、业务代码、数据库、API、配置、依赖或 Git:待填写
118
- ## v1.7 machine-readable enum anchors
36
+ ## 写回与权限
119
37
 
120
- ## v1.7.2 checks
38
+ - 动态事实只写入目标项目 `xinyun-ai/`:待填写
39
+ - 修改前计划与用户确认存在:待填写
40
+ - 数据库、Git 和发布授权分别记录:待填写
41
+ - 实际文件、API/字段/组件/流程影响和未完成事项已写回:待填写
121
42
 
122
- - 归档后是否保留五个 role-execution 活动任务:待填写
123
- - activeTaskIds 非空且 executableTaskIds 为空时是否指向最高优先级任务:待填写
124
- - 重复升级是否按逐角色 JCS-SHA-256 幂等键复用:待填写
125
- - 单角色失败是否为 blocked/write-failed,索引中断是否可恢复:待填写
43
+ ## 旧项目迁移
126
44
 
127
- ## v1.7.3 checks
45
+ - 旧角色材料已列入只读清单:待填写
46
+ - 活动旧任务已转换为普通任务:待填写
47
+ - 原角色只保存在 `legacyRoleId`:待填写
48
+ - 未删除旧目录或历史证据:待填写
49
+ - 重复升级和中断恢复通过:待填写
128
50
 
129
- - 是否创建或复用 5 个 Codex 真实角色会话:待填写
130
- - `provider=codex` 是否一致:待填写
131
- - `xinyun-ai/sessions/role-session-bindings.json` 是否可解析:待填写
132
- - `xinyun-ai/sessions/roles/` 是否登记五个角色入口:待填写
133
- - `sessionStatus` 是否只使用 pending / creating / created / onboarding / ready / blocked / failed / closed:待填写
134
- - `roleSessionIdempotency` 是否为 v1.9 八字段 projectRootHash、workspaceScope、repositoryScopeHash、workstream、taskId、roleId、provider、targetVersion 的 RFC8785-JCS-SHA-256:待填写;旧四字段仅作创建兼容索引,不得参与候选选择或复用
135
- - 真实 `sessionId` 是否来自宿主返回值:待填写
136
- - 是否不存在伪造 sessionId:待填写
137
- - 创建后是否先进入只读 onboarding,未直接 ready:待填写
138
- - 宿主不支持时是否记录 local-degraded-no-fake-session-id 且 sessionId=null:待填写
139
- - created-but-writeback-failed 是否可恢复:待填写
140
- - 普通咨询是否未创建角色会话或第三个会话:待填写
51
+ ## 结论
141
52
 
142
- - frameworkStatus=confirmed/inferred/not-found/unknown/detected-unsupported
143
- - moduleStatus=loaded/not-loaded
144
- - activation=loaded/not-loaded
145
- - v1.7 深化预算:5 层目录、80 个关键文件、100 条证据
146
- - decision=direct-map/rewrite-required/backend-required/unsupported/pending/unknown
147
- - status=planned/assessing/partial/blocked/paused/completed
148
- - coverage=full/partial/unknown
149
-
150
- ## v1.8 检查
151
-
152
- - `xinyun-ai/coordination/` 的事实、台账、冲突和事务文件是否可追溯。
153
- - 是否统一使用 `assignmentStatus`,且与 `usageStatus` 合法映射。
154
- - 前端 audit-only 是否零 diff,refactor-now 是否有确认、哈希、diff 和测试证据。
155
- - 临时会话是否遵守单变更域、并发上限 3、unknown occupancy 和 releaseAudit。
156
- - 是否未执行自动安装依赖、业务代码修改、数据库/API改动或 Git 写操作。
157
-
158
- ## v1.10 接管门禁检查
159
-
160
- - `projectStatus` 是否仅为 not-started / initializing / partial / blocked / ready:待填写
161
- - `preflight-report.json` 是否覆盖身份、宿主能力、CodeGraph、基线、Git、测试框架、工具链、旧沉淀、团队、任务、控制面、数据库和敏感扫描:待填写
162
- - 宿主是否能创建/复用/发送/获取/关闭真实会话及读写控制文件:待填写
163
- - CodeGraph 是否已初始化或健康复用,并记录 sourceRevision、索引范围和未索引范围:待填写
164
- - 业务文件、控制文件、Git、既有任务/会话和旧 AI 文档基线是否已记录:待填写
165
- - 五个真实角色 sessionId 是否存在且可追溯:待填写;缺失必须 blocked + required-role-session-not-created
166
- - 主任务、五个角色任务和控制面索引是否原子写入且可恢复:待填写
167
- - 数据库是否保持 authorization=not-requested、executionStatus=needs-confirmation、redactionStatus=verified:待填写
168
- - 敏感扫描、业务文件 changedFiles 和禁止操作证明是否通过:待填写
169
- - `projectStatus=ready` 和 `executionEligible=true` 是否仅在全部门禁通过后出现:待填写
170
-
171
- ## v1.12.1 provider session checks
172
-
173
- - provider binding uses a host canonical `providerSessionId`: pending
174
- - ordinary thread IDs, task IDs, titles, and summaries are rejected as provider identity: pending
175
- - project, role, task, title, cwd, and exclusive occupancy evidence: pending
176
- - redacted send/receive interaction evidence and transcript hash: pending
177
- - manual binding without evidence remains pending/blocked: pending
178
- - writeback recovery reuses task IDs, increments attempt, and creates no duplicate session: pending
179
-
180
- ## v1.9 检查
181
-
182
- - 项目身份是否使用 realpath / lexical-fallback、Unicode NFC、projectRootHash 和 repositoryScopeHash:待填写
183
- - 会话候选是否使用固定 sessionMatchStatus,且只有 reusable / renamed 可绑定:待填写
184
- - 是否记录 hostRecoveryAvailable、hostRecoveryEvidence、selectionEvidence 和改名 audit:待填写
185
- - 中文职责化名称是否稳定且未暴露内部资格检查文案:待填写
186
- - technical-landscape 是否满足 full coverage、unverifiedScope 为空和核心证据完整才 ready:待填写
187
- - requirementPacket / technicalImpactPacket 是否同 requirementId、taskId、projectRootHash、version 和 JCS-SHA-256 hash:待填写
188
- - packet 变化是否进入 `blockedReason=packet-stale`:待填写
189
- - 数据库是否为 `local-files-read-only`(`sql-only` 仅兼容标识,SQL 仅生成):待填写
190
- - connectionStatus、queryAuthorization、schemaChangeAuthorization、dataMutationAuthorization 是否独立:待填写
191
- - statementHash、targetEnvironment、executionStatus 和 audit 是否完整:待填写
192
-
193
- ## v1.15 会话门禁检查
194
-
195
- - sessionRefType/sessionRef 是否来自可识别且可操作的宿主引用:待填写
196
- - 项目身份、角色、任务、cwd、占用和跨文件 sessionId 是否一致:待填写
197
- - create/reuse、send、receive、query-status、recover、close、control-file read/write 七类证据是否完整:待填写
198
- - providerSessionId 是否仅作为兼容字段而非唯一 ready 条件:待填写
53
+ - 状态:partial / blocked / manual-required / ready
54
+ - 阻塞原因:待填写
55
+ - 未验证范围:待填写
56
+ - 下一动作:待填写
@@ -0,0 +1,20 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "executionModel": "shared-project-multi-conversation-runtime",
4
+ "projectContextId": null,
5
+ "projectRootHash": null,
6
+ "workspaceScope": {"scopeType": "project-root", "scopePathHashes": [], "scopeRevision": null},
7
+ "repositoryScope": [],
8
+ "contextRevision": 0,
9
+ "publicSnapshotHash": null,
10
+ "conversationRegistryPath": "xinyun-ai/conversations/registry.json",
11
+ "streamHeadsDirectory": "xinyun-ai/coordination/streams/",
12
+ "cursorDirectory": "xinyun-ai/coordination/cursors/",
13
+ "syncChecksDirectory": "xinyun-ai/coordination/sync-checks/",
14
+ "activeConversationCount": 0,
15
+ "status": "pending",
16
+ "statusEnum": ["pending", "validating", "ready", "partial", "blocked", "recovery-required"],
17
+ "evidence": [],
18
+ "createdAt": null,
19
+ "updatedAt": null
20
+ }