@pm_zhousl/xinyun-ai-init 2.0.0 → 3.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 (199) hide show
  1. package/README.md +29 -39
  2. package/bin/xinyun-ai-init.js +121 -175
  3. package/init/xinyun-ai-init/README.md +26 -144
  4. package/init/xinyun-ai-init/rules/v3-skill-runtime.md +45 -0
  5. package/init/xinyun-ai-init/runtime/migrate-v3.js +115 -0
  6. package/init/xinyun-ai-init/runtime/route-skill.js +69 -0
  7. package/init/xinyun-ai-init/runtime-manifest.json +26 -0
  8. package/init/xinyun-ai-init/skills/registry.json +112 -0
  9. package/init/xinyun-ai-init/templates/AGENTS.template.md +4 -27
  10. package/init/xinyun-ai-init/templates/README.template.md +3 -31
  11. package/init/xinyun-ai-init/templates/control-plane-index.template.json +5 -24
  12. package/init/xinyun-ai-init/templates/core-rules.template.md +9 -57
  13. package/init/xinyun-ai-init/templates/current-task.template.md +3 -19
  14. package/init/xinyun-ai-init/templates/manifest.template.json +13 -67
  15. package/init/xinyun-ai-init/templates/project-context.template.json +3 -11
  16. package/init/xinyun-ai-init/templates/project-index.template.json +5 -51
  17. package/init/xinyun-ai-init/templates/skill-run-record.template.json +4 -16
  18. package/init/xinyun-ai-init/templates/skill-runtime-route.template.json +3 -24
  19. package/init/xinyun-ai-init/templates/skills-assignments.template.json +3 -21
  20. package/init/xinyun-ai-init/templates/skills-registry.template.json +5 -29
  21. package/init/xinyun-ai-init/templates/task-graph.template.json +3 -5
  22. package/init/xinyun-ai-init/templates/task-index.template.json +3 -31
  23. package/init/xinyun-ai-init/version.json +8 -8
  24. package/package.json +8 -14
  25. package/scripts/run-v3-runtime-probe.js +8 -0
  26. package/scripts/verify-legacy-cleanup.js +24 -0
  27. package/scripts/verify-release-gate.js +10 -23
  28. package/scripts/verify-rules-tarball-security.js +1 -1
  29. package/scripts/verify-skill-runtime.js +33 -0
  30. package/scripts/verify-tarball.js +42 -0
  31. package/scripts/verify-v3-package.js +70 -0
  32. package/test-scenarios/v3.0.0-behavior-evidence.json +25 -0
  33. package/test-scenarios/v3.0.0-scenarios.md +41 -0
  34. package/init/xinyun-ai-init/prompt.md +0 -1
  35. package/init/xinyun-ai-init/rules/coordination.md +0 -43
  36. package/init/xinyun-ai-init/rules/directory-self-completion.md +0 -100
  37. package/init/xinyun-ai-init/rules/frameworks/README.md +0 -56
  38. package/init/xinyun-ai-init/rules/frameworks/backend/php/thinkphp.md +0 -42
  39. package/init/xinyun-ai-init/rules/frameworks/frontend/uni-app.md +0 -36
  40. package/init/xinyun-ai-init/rules/frameworks/frontend/wechat-miniprogram.md +0 -36
  41. package/init/xinyun-ai-init/rules/frontend-audit.md +0 -9
  42. package/init/xinyun-ai-init/rules/init-rules.md +0 -145
  43. package/init/xinyun-ai-init/rules/self-learning-rules.md +0 -16
  44. package/init/xinyun-ai-init/rules/session-workbench.md +0 -333
  45. package/init/xinyun-ai-init/rules/skills.md +0 -23
  46. package/init/xinyun-ai-init/rules/temporary-sessions.md +0 -13
  47. package/init/xinyun-ai-init/rules/upgrade-rules.md +0 -161
  48. package/init/xinyun-ai-init/rules/v1.10.2-contract.md +0 -30
  49. package/init/xinyun-ai-init/rules/v1.11.0-acceleration.md +0 -27
  50. package/init/xinyun-ai-init/rules/v1.12.0-recovery.md +0 -34
  51. package/init/xinyun-ai-init/rules/v1.12.1-provider-session-binding.md +0 -25
  52. package/init/xinyun-ai-init/rules/v1.13.0-host-adapter.md +0 -43
  53. package/init/xinyun-ai-init/rules/v1.14.0-agent-core.md +0 -35
  54. package/init/xinyun-ai-init/rules/v1.15.0-session-binding.md +0 -44
  55. package/init/xinyun-ai-init/rules/v1.16.0-capability-efficiency.md +0 -23
  56. package/init/xinyun-ai-init/rules/v2.0.0-shared-project-conversations.md +0 -68
  57. package/init/xinyun-ai-init/rules/v2.0.0-single-session-skills.md +0 -89
  58. package/init/xinyun-ai-init/scripts/README.md +0 -16
  59. package/init/xinyun-ai-init/templates/agent-capabilities.template.json +0 -27
  60. package/init/xinyun-ai-init/templates/agent-profile.template.json +0 -21
  61. package/init/xinyun-ai-init/templates/archive-transaction.template.json +0 -15
  62. package/init/xinyun-ai-init/templates/bootstrap-snapshot.template.json +0 -22
  63. package/init/xinyun-ai-init/templates/capabilities.template.json +0 -19
  64. package/init/xinyun-ai-init/templates/codegraph-incremental-record.template.json +0 -21
  65. package/init/xinyun-ai-init/templates/conversation-binding.template.json +0 -26
  66. package/init/xinyun-ai-init/templates/conversation-event.template.json +0 -24
  67. package/init/xinyun-ai-init/templates/conversation-registry.template.json +0 -15
  68. package/init/xinyun-ai-init/templates/conversation-stream-head.template.json +0 -14
  69. package/init/xinyun-ai-init/templates/conversation-sync-cursor.template.json +0 -13
  70. package/init/xinyun-ai-init/templates/coordination-change-ledger.template.json +0 -15
  71. package/init/xinyun-ai-init/templates/coordination-conflict-record.template.json +0 -18
  72. package/init/xinyun-ai-init/templates/coordination-contract-snapshot.template.json +0 -9
  73. package/init/xinyun-ai-init/templates/coordination-project-facts.template.json +0 -20
  74. package/init/xinyun-ai-init/templates/coordination-transaction.template.json +0 -16
  75. package/init/xinyun-ai-init/templates/database-authorization.template.json +0 -53
  76. package/init/xinyun-ai-init/templates/final-delivery.template.json +0 -22
  77. package/init/xinyun-ai-init/templates/fixed-materialization.template.json +0 -12
  78. package/init/xinyun-ai-init/templates/framework-profile.template.json +0 -48
  79. package/init/xinyun-ai-init/templates/framework-profile.template.md +0 -39
  80. package/init/xinyun-ai-init/templates/frontend-audit.template.json +0 -27
  81. package/init/xinyun-ai-init/templates/handoff.template.json +0 -27
  82. package/init/xinyun-ai-init/templates/host-capabilities.template.json +0 -37
  83. package/init/xinyun-ai-init/templates/host-preflight.template.json +0 -33
  84. package/init/xinyun-ai-init/templates/html-migration-asset-map.template.md +0 -6
  85. package/init/xinyun-ai-init/templates/html-migration-compatibility-matrix.template.md +0 -6
  86. package/init/xinyun-ai-init/templates/html-migration-open-issues.template.md +0 -12
  87. package/init/xinyun-ai-init/templates/html-migration-pilot-plan.template.md +0 -21
  88. package/init/xinyun-ai-init/templates/html-migration-record.template.json +0 -36
  89. package/init/xinyun-ai-init/templates/html-migration-route-map.template.md +0 -6
  90. package/init/xinyun-ai-init/templates/html-migration-scope.template.md +0 -28
  91. package/init/xinyun-ai-init/templates/init-result.template.json +0 -25
  92. package/init/xinyun-ai-init/templates/initialization-cache.template.json +0 -13
  93. package/init/xinyun-ai-init/templates/initialization-change-report.template.json +0 -14
  94. package/init/xinyun-ai-init/templates/initialization-recovery.template.json +0 -24
  95. package/init/xinyun-ai-init/templates/initialization-stages.template.json +0 -18
  96. package/init/xinyun-ai-init/templates/initialization-timing.template.json +0 -16
  97. package/init/xinyun-ai-init/templates/local-query-index.template.json +0 -15
  98. package/init/xinyun-ai-init/templates/managed-baseline.template.json +0 -17
  99. package/init/xinyun-ai-init/templates/manual-session-binding.template.json +0 -45
  100. package/init/xinyun-ai-init/templates/manual-session-recovery.template.json +0 -53
  101. package/init/xinyun-ai-init/templates/multi-conversation-migration.template.json +0 -24
  102. package/init/xinyun-ai-init/templates/onboarding-report.template.json +0 -30
  103. package/init/xinyun-ai-init/templates/orchestrator.template.json +0 -28
  104. package/init/xinyun-ai-init/templates/parallelism.template.json +0 -13
  105. package/init/xinyun-ai-init/templates/performance-metrics.template.json +0 -17
  106. package/init/xinyun-ai-init/templates/preflight-report.template.json +0 -25
  107. package/init/xinyun-ai-init/templates/project-check.template.md +0 -56
  108. package/init/xinyun-ai-init/templates/project-guide.template.md +0 -57
  109. package/init/xinyun-ai-init/templates/project-identity.template.json +0 -23
  110. package/init/xinyun-ai-init/templates/project-status.template.json +0 -28
  111. package/init/xinyun-ai-init/templates/provider-adapter.template.json +0 -25
  112. package/init/xinyun-ai-init/templates/provider-session-binding.template.json +0 -77
  113. package/init/xinyun-ai-init/templates/re-takeover-record.template.json +0 -37
  114. package/init/xinyun-ai-init/templates/requirement-packet.template.json +0 -23
  115. package/init/xinyun-ai-init/templates/role-execution.template.md +0 -72
  116. package/init/xinyun-ai-init/templates/role-session-binding.template.json +0 -105
  117. package/init/xinyun-ai-init/templates/role-subtask.template.md +0 -36
  118. package/init/xinyun-ai-init/templates/session-binding.template.json +0 -38
  119. package/init/xinyun-ai-init/templates/session-candidates.template.json +0 -19
  120. package/init/xinyun-ai-init/templates/shared-project-snapshot.template.json +0 -24
  121. package/init/xinyun-ai-init/templates/single-session-migration.template.json +0 -31
  122. package/init/xinyun-ai-init/templates/sync-check.template.json +0 -23
  123. package/init/xinyun-ai-init/templates/takeover-baseline.template.json +0 -17
  124. package/init/xinyun-ai-init/templates/takeover-gate.template.json +0 -22
  125. package/init/xinyun-ai-init/templates/task-history.template.md +0 -35
  126. package/init/xinyun-ai-init/templates/task-lease.template.json +0 -19
  127. package/init/xinyun-ai-init/templates/task-lock.template.json +0 -31
  128. package/init/xinyun-ai-init/templates/task-main.template.md +0 -38
  129. package/init/xinyun-ai-init/templates/task-result.template.json +0 -23
  130. package/init/xinyun-ai-init/templates/team/README.md +0 -51
  131. package/init/xinyun-ai-init/templates/team/assignments.json +0 -49
  132. package/init/xinyun-ai-init/templates/team/confirmations/chief-engineer.md +0 -24
  133. package/init/xinyun-ai-init/templates/team/confirmations/programmer.md +0 -24
  134. package/init/xinyun-ai-init/templates/team/confirmations/project-owner.md +0 -24
  135. package/init/xinyun-ai-init/templates/team/confirmations/project-product.md +0 -24
  136. package/init/xinyun-ai-init/templates/team/confirmations/test-reviewer.md +0 -24
  137. package/init/xinyun-ai-init/templates/team/file-ownership.json +0 -32
  138. package/init/xinyun-ai-init/templates/team/members.json +0 -61
  139. package/init/xinyun-ai-init/templates/team/responsibility-matrix.json +0 -81
  140. package/init/xinyun-ai-init/templates/team/roles.json +0 -71
  141. package/init/xinyun-ai-init/templates/team/understandings/chief-engineer.md +0 -23
  142. package/init/xinyun-ai-init/templates/team/understandings/programmer.md +0 -23
  143. package/init/xinyun-ai-init/templates/team/understandings/project-owner.md +0 -23
  144. package/init/xinyun-ai-init/templates/team/understandings/project-product.md +0 -23
  145. package/init/xinyun-ai-init/templates/team/understandings/test-reviewer.md +0 -23
  146. package/init/xinyun-ai-init/templates/technical-impact-packet.template.json +0 -31
  147. package/init/xinyun-ai-init/templates/technical-landscape.template.json +0 -41
  148. package/init/xinyun-ai-init/templates/temporary-session.template.json +0 -32
  149. package/init/xinyun-ai-init/templates/workstreams-readme.template.md +0 -36
  150. package/scripts/collect-v1.10-evidence.js +0 -159
  151. package/scripts/collect-v1.14-local-evidence.js +0 -66
  152. package/scripts/collect-v1.15-real-evidence.js +0 -114
  153. package/scripts/collect-v1.16-evidence.js +0 -48
  154. package/scripts/collect-v2-evidence.js +0 -35
  155. package/scripts/run-v1.16-runtime-probe.js +0 -91
  156. package/scripts/run-v2-runtime-probe.js +0 -110
  157. package/scripts/verify-init-package.js +0 -2297
  158. package/scripts/verify-multi-conversation-contract.js +0 -61
  159. package/scripts/verify-re-takeover-contract.js +0 -54
  160. package/scripts/verify-rules-package.js +0 -1287
  161. package/scripts/verify-v2-package.js +0 -210
  162. package/scripts/verify-v2-tarball.js +0 -73
  163. package/test-scenarios/README.md +0 -130
  164. package/test-scenarios/fixtures/v1.10.0-takeover-gate-fixture/README.md +0 -23
  165. package/test-scenarios/fixtures/v1.10.0-takeover-gate-fixture/after/project-status.json +0 -7
  166. package/test-scenarios/fixtures/v1.10.0-takeover-gate-fixture/before/project-status.json +0 -7
  167. package/test-scenarios/fixtures/v1.9.0-behavior-fixture/README.md +0 -9
  168. package/test-scenarios/multi-conversation-evidence.json +0 -26
  169. package/test-scenarios/multi-conversation-scenarios.md +0 -16
  170. package/test-scenarios/re-takeover-evidence.json +0 -20
  171. package/test-scenarios/re-takeover-scenarios.md +0 -33
  172. package/test-scenarios/review-template.md +0 -165
  173. package/test-scenarios/scenarios.md +0 -1273
  174. package/test-scenarios/v1.10.0-behavior-evidence.json +0 -31
  175. package/test-scenarios/v1.10.0-scenarios.md +0 -96
  176. package/test-scenarios/v1.10.2-scenarios.md +0 -38
  177. package/test-scenarios/v1.11.0-scenarios.md +0 -30
  178. package/test-scenarios/v1.12.0-behavior-evidence.json +0 -29
  179. package/test-scenarios/v1.12.0-scenarios.md +0 -51
  180. package/test-scenarios/v1.12.1-behavior-evidence.json +0 -27
  181. package/test-scenarios/v1.12.1-scenarios.md +0 -42
  182. package/test-scenarios/v1.13.0-behavior-evidence.json +0 -650
  183. package/test-scenarios/v1.13.0-scenarios.md +0 -94
  184. package/test-scenarios/v1.14.0-behavior-evidence.json +0 -780
  185. package/test-scenarios/v1.14.0-scenarios.md +0 -63
  186. package/test-scenarios/v1.15.0-behavior-evidence.json +0 -476
  187. package/test-scenarios/v1.15.0-scenarios.md +0 -57
  188. package/test-scenarios/v1.16.0-behavior-evidence.json +0 -46
  189. package/test-scenarios/v1.16.0-real-host-probe.json +0 -132
  190. package/test-scenarios/v1.16.0-scenarios.md +0 -19
  191. package/test-scenarios/v1.7.0-scenarios.md +0 -91
  192. package/test-scenarios/v1.7.1-scenarios.md +0 -130
  193. package/test-scenarios/v1.7.2-scenarios.md +0 -51
  194. package/test-scenarios/v1.7.3-scenarios.md +0 -79
  195. package/test-scenarios/v1.8.0-scenarios.md +0 -39
  196. package/test-scenarios/v1.9.0-behavior-evidence.json +0 -269
  197. package/test-scenarios/v1.9.0-scenarios.md +0 -55
  198. package/test-scenarios/v2.0.0-behavior-evidence.json +0 -40
  199. package/test-scenarios/v2.0.0-scenarios.md +0 -21
@@ -1,33 +0,0 @@
1
- {
2
- "schemaVersion": 1,
3
- "preflightId": "host-preflight-template",
4
- "status": "not-checked",
5
- "statusEnum": ["not-checked", "running", "passed", "partial", "blocked", "failed", "unknown"],
6
- "requiredCapabilities": [
7
- "createRealSession",
8
- "reuseExistingSession",
9
- "sendTask",
10
- "receiveResult",
11
- "querySessionStatus",
12
- "recoverSession",
13
- "closeSession",
14
- "controlFileReadWrite"
15
- ],
16
- "capabilityStatusEnum": ["available", "available-with-dependency", "unavailable", "permission-denied", "unknown", "not-checked", "not-verified", "failed"],
17
- "dependencyStatusEnum": ["not-required", "required", "authorized", "not-authorized", "unknown"],
18
- "capabilities": {
19
- "createRealSession": {"capabilityId": "createRealSession", "detectionMethod": "host-api", "status": "not-checked", "evidence": [], "dependencyStatus": "unknown", "fallbackPlan": "blocked; keep sessionId=null", "usedTools": [], "unusedTools": [], "unverifiedScope": [], "failureReason": null, "checkedAt": null},
20
- "reuseExistingSession": {"capabilityId": "reuseExistingSession", "detectionMethod": "host-api", "status": "not-checked", "evidence": [], "dependencyStatus": "unknown", "fallbackPlan": "blocked; query existing binding only", "usedTools": [], "unusedTools": [], "unverifiedScope": [], "failureReason": null, "checkedAt": null},
21
- "sendTask": {"capabilityId": "sendTask", "detectionMethod": "host-api", "status": "not-checked", "evidence": [], "dependencyStatus": "unknown", "fallbackPlan": "blocked; preserve task for resume", "usedTools": [], "unusedTools": [], "unverifiedScope": [], "failureReason": null, "checkedAt": null},
22
- "receiveResult": {"capabilityId": "receiveResult", "detectionMethod": "host-api", "status": "not-checked", "evidence": [], "dependencyStatus": "unknown", "fallbackPlan": "blocked; preserve task for resume", "usedTools": [], "unusedTools": [], "unverifiedScope": [], "failureReason": null, "checkedAt": null},
23
- "querySessionStatus": {"capabilityId": "querySessionStatus", "detectionMethod": "host-api", "status": "not-checked", "evidence": [], "dependencyStatus": "unknown", "fallbackPlan": "blocked; require manual provider verification", "usedTools": [], "unusedTools": [], "unverifiedScope": [], "failureReason": null, "checkedAt": null},
24
- "recoverSession": {"capabilityId": "recoverSession", "detectionMethod": "host-api", "status": "not-checked", "evidence": [], "dependencyStatus": "unknown", "fallbackPlan": "manual binding with evidence", "usedTools": [], "unusedTools": [], "unverifiedScope": [], "failureReason": null, "checkedAt": null},
25
- "closeSession": {"capabilityId": "closeSession", "detectionMethod": "host-api", "status": "not-checked", "evidence": [], "dependencyStatus": "unknown", "fallbackPlan": "manual host close", "usedTools": [], "unusedTools": [], "unverifiedScope": [], "failureReason": null, "checkedAt": null},
26
- "controlFileReadWrite": {"capabilityId": "controlFileReadWrite", "detectionMethod": "filesystem", "status": "not-checked", "evidence": [], "dependencyStatus": "not-required", "fallbackPlan": "blocked on control-file write failure", "usedTools": [], "unusedTools": [], "unverifiedScope": [], "failureReason": null, "checkedAt": null}
27
- },
28
- "realSessionIdEvidence": {"required": true, "sessionIds": [], "source": null, "verified": false},
29
- "readyGate": {"allRequiredCapabilitiesPassed": false, "dependencyAuthorizationRequired": true, "unknownBlocksReady": true, "fakeSessionIdProhibited": true},
30
- "nextAction": "Run host capability preflight before starting role sessions.",
31
- "checkedAt": null,
32
- "updatedAt": null
33
- }
@@ -1,6 +0,0 @@
1
- # HTML 迁移资源映射
2
-
3
- | itemId | sourcePath | assetType | targetPath | decision | reason | checkedAt |
4
- |---|---|---|---|---|---|---|
5
-
6
- decision:direct-map / rewrite-required / backend-required / unsupported / pending / unknown
@@ -1,6 +0,0 @@
1
- # HTML 迁移兼容性矩阵
2
-
3
- | itemId | path | itemType | sourceFeature | targetPlatform | decision | reason | checkedAt |
4
- |---|---|---|---|---|---|---|---|
5
-
6
- decision:direct-map / rewrite-required / backend-required / unsupported / pending / unknown
@@ -1,12 +0,0 @@
1
- # HTML 迁移待确认问题
2
-
3
- - migrationId:
4
- - updatedAt:
5
-
6
- ## 待确认问题
7
-
8
- - itemId:
9
- - path:
10
- - itemType:
11
- - reason:
12
- - checkedAt:
@@ -1,21 +0,0 @@
1
- # HTML 迁移试点计划
2
-
3
- - migrationId:
4
- - pilotType:single-page / block
5
- - sourcePath:
6
- - targetPlatform:
7
- - status:planned / assessing / partial / blocked / paused / completed
8
- - requiresSeparateConfirmation:true
9
-
10
- ## 试点边界
11
-
12
- - 只评估和规划,不直接修改代码。
13
- - 实际代码改动必须重新输出改动计划并等待用户确认。
14
- - 越界时进入 `status=paused` + `pauseReason=out-of-scope`。
15
-
16
- ## 验收标准
17
-
18
- - 路由映射明确。
19
- - API 映射明确。
20
- - 资源映射明确。
21
- - 未验证范围明确。
@@ -1,36 +0,0 @@
1
- {
2
- "schemaVersion": 1,
3
- "migrationId": "",
4
- "sourceWorkstream": "",
5
- "sourceRepo": "",
6
- "sourcePlatform": "html",
7
- "targetPlatform": "",
8
- "targetWorkstream": "",
9
- "status": "planned",
10
- "pauseReason": null,
11
- "coverage": "unknown",
12
- "scope": [],
13
- "unverifiedScope": [],
14
- "budgets": {
15
- "maxDepth": 3,
16
- "maxPages": 20,
17
- "maxRelatedFiles": 200,
18
- "maxEvidence": 100
19
- },
20
- "compatibilityMatrix": [],
21
- "routeMap": [],
22
- "apiMap": [],
23
- "assetMap": [],
24
- "pilotPlan": {
25
- "type": "single-page-or-block",
26
- "plannedFiles": [],
27
- "requiresSeparateConfirmation": true
28
- },
29
- "decisions": [],
30
- "evidence": [],
31
- "risks": [],
32
- "openIssues": [],
33
- "businessCodeChanged": "unknown",
34
- "createdAt": "",
35
- "updatedAt": ""
36
- }
@@ -1,6 +0,0 @@
1
- # HTML 迁移路由映射
2
-
3
- | itemId | sourcePath | sourceRoute | targetPlatform | targetRoute | decision | reason | checkedAt |
4
- |---|---|---|---|---|---|---|---|
5
-
6
- decision:direct-map / rewrite-required / backend-required / unsupported / pending / unknown
@@ -1,28 +0,0 @@
1
- # HTML 迁移范围
2
-
3
- - migrationId:
4
- - sourceWorkstream:
5
- - sourceRepo:
6
- - targetPlatform:wechat-miniprogram / uni-app
7
- - targetWorkstream:
8
- - status:planned / assessing / partial / blocked / paused / completed
9
- - coverage:full / partial / unknown
10
- - pauseReason:
11
- - createdAt:
12
- - updatedAt:
13
-
14
- ## scope
15
-
16
- - itemId:
17
- - path:
18
- - itemType:
19
- - reason:
20
- - checkedAt:
21
-
22
- ## unverifiedScope
23
-
24
- - itemId:
25
- - path:
26
- - itemType:
27
- - reason:
28
- - checkedAt:
@@ -1,25 +0,0 @@
1
- {
2
- "schemaVersion": 2,
3
- "version": "2.0.0",
4
- "executionModel": "shared-project-multi-conversation-runtime",
5
- "status": "partial",
6
- "projectStatus": "initializing",
7
- "executionEligible": false,
8
- "projectRootHash": null,
9
- "projectContextPath": "xinyun-ai/project-context.json",
10
- "conversationRegistryPath": "xinyun-ai/conversations/registry.json",
11
- "syncCursorPath": null,
12
- "taskIndexPath": "xinyun-ai/tasks/task-index.json",
13
- "taskGraphPath": "xinyun-ai/tasks/task-graph.json",
14
- "currentTaskPath": "xinyun-ai/current-task.md",
15
- "createdFiles": [],
16
- "updatedFiles": [],
17
- "preservedLegacyFiles": [],
18
- "skillRuns": [],
19
- "requiredGates": [],
20
- "blockedReasons": [],
21
- "unverifiedScope": [],
22
- "evidence": [],
23
- "createdAt": null,
24
- "updatedAt": null
25
- }
@@ -1,13 +0,0 @@
1
- {
2
- "schemaVersion": 1,
3
- "cacheId": "initialization-cache-template",
4
- "keyAlgorithm": "RFC8785-JCS-SHA-256",
5
- "keyFields": ["projectRootHash", "targetVersion", "fixedTemplateHash", "codeGraphIndexHash", "snapshotHash", "roleBindingSummaryHash"],
6
- "ttlHours": 24,
7
- "statusEnum": ["valid", "expired", "corrupt", "unknown", "revalidate"],
8
- "cacheKey": null,
9
- "observedAt": null,
10
- "expiresAt": null,
11
- "invalidReason": null,
12
- "sensitiveScan": {"status": "not-run", "matches": []}
13
- }
@@ -1,14 +0,0 @@
1
- {
2
- "schemaVersion": 1,
3
- "reportId": "initialization-change-report-template",
4
- "status": "not-checked",
5
- "changeOriginEnum": ["initialization-created", "initialization-updated", "pre-existing-user-change", "control-plane-only"],
6
- "baseline": {"businessFilesHash": null, "controlFilesHash": null, "gitStatusHash": null, "capturedAt": null},
7
- "changes": [],
8
- "classificationRule": "Compare before and after file hashes; never attribute pre-existing user changes to initialization and never roll them back.",
9
- "requiredChangeFields": ["path", "origin", "beforeHash", "afterHash", "changedBy", "checkedAt", "evidence"],
10
- "businessCodeChanged": {"value": "unknown", "evidence": []},
11
- "sensitiveScan": {"status": "not-checked", "matches": []},
12
- "createdAt": null,
13
- "updatedAt": null
14
- }
@@ -1,24 +0,0 @@
1
- {
2
- "schemaVersion": 2,
3
- "executionModel": "shared-project-multi-conversation-runtime",
4
- "recoveryId": "initialization-recovery-template",
5
- "taskId": null,
6
- "projectContextId": null,
7
- "conversationBindingId": null,
8
- "attempt": 1,
9
- "status": "not-started",
10
- "statusEnum": ["not-started", "ready-to-resume", "resuming", "completed", "blocked", "failed", "recovery-required"],
11
- "resumeFromStage": null,
12
- "stageIdEnum": ["preflight", "task-transaction", "project-context", "conversation-binding", "incremental-sync", "skills", "codegraph", "snapshot", "onboarding", "final-gate"],
13
- "reuseContract": {"reuseTaskId": true, "reuseProjectContextId": true, "reuseConversationBindingWhenIdentityMatches": true, "incrementAttempt": true, "createDuplicateTasks": false, "idempotencyKey": null, "keyAlgorithm": "RFC8785-JCS-SHA-256"},
14
- "transactionId": null,
15
- "beforeHash": null,
16
- "afterHash": null,
17
- "rollbackPaths": [],
18
- "blockedReason": null,
19
- "nextAction": null,
20
- "recoveryEvidence": [],
21
- "atomicWrite": {"tempFileRequired": true, "fsyncBeforeRename": true, "rename": true, "recoveryOnFailure": true},
22
- "createdAt": null,
23
- "updatedAt": null
24
- }
@@ -1,18 +0,0 @@
1
- {
2
- "schemaVersion": 2,
3
- "executionModel": "shared-project-multi-conversation-runtime",
4
- "initializationId": "initialization-template",
5
- "status": "initializing",
6
- "stageStatusEnum": ["pending", "running", "completed", "skipped", "partial", "blocked", "recovery-required"],
7
- "stages": [
8
- {"stageId": "preflight", "status": "pending", "attempt": 0, "startedAt": null, "finishedAt": null, "failureReason": null},
9
- {"stageId": "task-transaction", "status": "pending", "attempt": 0, "startedAt": null, "finishedAt": null, "failureReason": null},
10
- {"stageId": "main-session", "status": "pending", "attempt": 0, "startedAt": null, "finishedAt": null, "failureReason": null},
11
- {"stageId": "skill-registry", "status": "pending", "attempt": 0, "startedAt": null, "finishedAt": null, "failureReason": null},
12
- {"stageId": "codegraph", "status": "pending", "attempt": 0, "startedAt": null, "finishedAt": null, "failureReason": null},
13
- {"stageId": "legacy-migration", "status": "pending", "attempt": 0, "startedAt": null, "finishedAt": null, "failureReason": null},
14
- {"stageId": "onboarding", "status": "pending", "attempt": 0, "startedAt": null, "finishedAt": null, "failureReason": null},
15
- {"stageId": "final-gate", "status": "pending", "attempt": 0, "startedAt": null, "finishedAt": null, "failureReason": null}
16
- ],
17
- "updatedAt": null
18
- }
@@ -1,16 +0,0 @@
1
- {
2
- "schemaVersion": 1,
3
- "timingId": "initialization-timing-template",
4
- "taskId": null,
5
- "attempt": 1,
6
- "status": "not-started",
7
- "stageStatusEnum": ["pending", "running", "completed", "skipped", "partial", "blocked", "failed", "recovery-required"],
8
- "stages": [],
9
- "stageRequiredFields": ["stageId", "attempt", "status", "startedAt", "finishedAt", "durationMs", "cacheHit", "failureReason", "bottleneck", "recoveryAction"],
10
- "cacheSummary": {"hitCount": 0, "missCount": 0, "reusedSnapshot": false, "reusedCodeGraph": false, "reusedSessions": 0},
11
- "bottlenecks": [],
12
- "recoveryActions": [],
13
- "totalDurationMs": null,
14
- "createdAt": null,
15
- "updatedAt": null
16
- }
@@ -1,15 +0,0 @@
1
- {
2
- "schemaVersion": 1,
3
- "indexId": "local-query-index-template",
4
- "indexVersion": "2.0.0",
5
- "sourcePaths": [],
6
- "sourceHash": null,
7
- "builtAt": null,
8
- "coverage": {"percent": 0, "domains": [], "unverifiedScope": []},
9
- "stale": true,
10
- "factSourcePolicy": "JSON/Markdown control-plane files are authoritative",
11
- "sqlitePolicy": "optional-derived-cache-only",
12
- "entries": [],
13
- "rebuildPolicy": "rebuild-from-control-plane-files",
14
- "queryBudget": {"maxReads": null, "maxMs": null, "onExceeded": "partial-or-unknown"}
15
- }
@@ -1,17 +0,0 @@
1
- {
2
- "schemaVersion": 1,
3
- "hashAlgorithm": "sha256",
4
- "contentEncoding": "utf8-normalized",
5
- "managedBy": "@pm_zhousl/xinyun-ai-init",
6
- "lastAppliedVersion": "1.11.0",
7
- "files": [
8
- {
9
- "path": "xinyun-ai/rules/core-rules.md",
10
- "baselineHash": null,
11
- "templateHash": null,
12
- "lastAppliedVersion": "1.11.0",
13
- "managedBy": "@pm_zhousl/xinyun-ai-init",
14
- "status": "unknown"
15
- }
16
- ]
17
- }
@@ -1,45 +0,0 @@
1
- {
2
- "schemaVersion": 1,
3
- "bindingId": "manual-session-binding-template",
4
- "taskId": null,
5
- "roleTaskId": null,
6
- "roleId": null,
7
- "sessionId": null,
8
- "providerSessionId": null,
9
- "sessionBindingContract": "adapter-neutral-v1.15",
10
- "sessionRefType": "manual-reference",
11
- "sessionRef": null,
12
- "hostId": null,
13
- "adapterNeutralRequiredEvidence": ["create-or-reuse", "send", "receive", "query-status", "recover", "close", "control-file-read-write"],
14
- "projectRootHash": null,
15
- "workspaceScope": null,
16
- "title": null,
17
- "cwd": null,
18
- "sessionIdType": "legacy-project-compatibility-alias",
19
- "sessionIdSemantics": "legacy compatibility field; it cannot be bound from hostThreadId, hostSessionId, ordinary threadId, taskId, title or history summary",
20
- "canonicalSessionIdField": "providerSessionId",
21
- "canonicalSessionIdSource": "provider-supported-session-api-response",
22
- "hostIdentityFields": ["hostThreadId", "hostSessionId", "projectSessionId", "orchestratorSessionId"],
23
- "hostThreadId": null,
24
- "hostSessionId": null,
25
- "projectSessionId": null,
26
- "orchestratorSessionId": null,
27
- "provider": "codex",
28
- "bindingMode": "manual",
29
- "boundBy": null,
30
- "boundAt": null,
31
- "evidence": [],
32
- "evidenceRequiredFields": ["evidenceType", "source", "sessionId", "providerSessionId", "projectRootHash", "workspaceScope", "roleId", "taskId", "title", "cwd", "interactionHash", "beforeSnapshotHash", "afterSnapshotHash", "recordedAt"],
33
- "requiredHostEvidence": ["create-or-reuse", "send", "receive", "query-status", "recover", "close"],
34
- "identityMappingRule": "sessionId and projectSessionId remain null until providerSessionId and all requiredHostEvidence are verified; then sessionId=providerSessionId",
35
- "bindingStatus": "pending",
36
- "bindingStatusEnum": ["pending", "bound", "rejected", "blocked", "released"],
37
- "executionEligible": false,
38
- "eligibilityRule": "bound + verified providerSessionId + all requiredHostEvidence + identity evidence + interaction evidence + role onboarding ready",
39
- "v115EligibilityRule": "bound + operable sessionRef + project/role/task identity + seven evidence categories + role onboarding ready; providerSessionId is compatibility-only",
40
- "fakeSessionIdProhibited": true,
41
- "rejectionReason": null,
42
- "audit": [],
43
- "createdAt": null,
44
- "updatedAt": null
45
- }
@@ -1,53 +0,0 @@
1
- {
2
- "schemaVersion": 1,
3
- "recoveryId": "manual-session-recovery-template",
4
- "provider": "codex",
5
- "sessionBindingContract": "adapter-neutral-v1.15",
6
- "sessionRefTypeEnum": ["host-thread", "provider-session", "manual-reference", "local-session"],
7
- "requiredEvidenceCategories": ["create-or-reuse", "send", "receive", "query-status", "recover", "close", "control-file-read-write"],
8
- "status": "not-started",
9
- "statusEnum": ["not-started", "guided", "awaiting-user", "validating", "recovered", "blocked", "failed"],
10
- "userDecisionEnum": ["manual-create", "defer", "redetect"],
11
- "decisionStatusEnum": ["not-asked", "awaiting-user", "selected", "processing", "completed", "blocked"],
12
- "reuseContract": {"reuseTaskId": true, "reuseRoleTaskId": true, "incrementAttempt": true, "createDuplicateTasks": false, "replaceUnverifiedSession": false},
13
- "taskFirstSessionGate": {
14
- "mainTaskCreatedBeforeSession": true,
15
- "roleTasksCreatedBeforeSession": true,
16
- "sessionIdsRemainNullUntilDecision": true,
17
- "sessionCreationDecisionEnum": ["create-and-onboard", "defer"],
18
- "sessionCreationStatusEnum": ["not-asked", "awaiting-confirmation", "approved", "deferred", "processing", "completed", "blocked"],
19
- "sessionCreationDecision": null,
20
- "status": "awaiting-confirmation",
21
- "decisionId": null,
22
- "actor": null,
23
- "source": "user-confirmation",
24
- "decidedAt": null,
25
- "decisionEvidence": [],
26
- "nextAction": "ask-create-or-defer"
27
- },
28
- "roles": [
29
- {"roleId":"project-owner","sessionTitle":"项目负责人|项目接管|项目范围与授权","responsibility":"项目范围、授权边界和最终项目确认","firstTaskPrompt":"请只读确认项目身份、接管范围、禁止操作和当前阻断,不修改业务代码。","providerSessionId":null,"bindingStatus":"pending"},
30
- {"roleId":"project-product","sessionTitle":"产品负责人|项目接管|需求与验收","responsibility":"需求、验收标准和用户目标","firstTaskPrompt":"请只读整理项目目标、需求边界和验收条件,不修改业务代码。","providerSessionId":null,"bindingStatus":"pending"},
31
- {"roleId":"chief-engineer","sessionTitle":"总工程师|项目接管|技术全景与影响","responsibility":"技术全景、架构影响和风险门禁","firstTaskPrompt":"请只读检查技术栈、架构、CodeGraph 状态和影响范围,不修改业务代码。","providerSessionId":null,"bindingStatus":"pending"},
32
- {"roleId":"programmer","sessionTitle":"程序员|项目接管|实现准备","responsibility":"实现准备、文件责任和执行边界","firstTaskPrompt":"请只读确认实现范围、预计文件和禁止操作,不修改业务代码。","providerSessionId":null,"bindingStatus":"pending"},
33
- {"roleId":"test-reviewer","sessionTitle":"测试审查员|项目接管|验证与发布门禁","responsibility":"测试证据、回归范围和发布门禁","firstTaskPrompt":"请只读确认验证命令、行为证据要求和发布阻断,不修改业务代码。","providerSessionId":null,"bindingStatus":"pending"}
34
- ],
35
- "userDecision": null,
36
- "decisionId": null,
37
- "actor": null,
38
- "source": "user-confirmation",
39
- "requiredRoleCount": 5,
40
- "createdRoleCount": 0,
41
- "remainingRoleIds": ["project-owner", "project-product", "chief-engineer", "programmer", "test-reviewer"],
42
- "decisionStatus": "not-asked",
43
- "decidedAt": null,
44
- "nextAction": "present-choice-once",
45
- "decisionEvidence": [],
46
- "noChoicePolicy": "remain-blocked-without-repeat-prompt",
47
- "bindingRequiredFields": ["provider", "providerSessionId", "projectRootHash", "workspaceScope", "roleId", "taskId", "title", "cwd", "boundBy", "boundAt", "identityEvidence", "interactionEvidence"],
48
- "v115BindingRequiredFields": ["sessionId", "sessionRefType", "sessionRef", "hostId", "provider", "projectRootHash", "workspaceScope", "roleId", "taskId", "title", "cwd", "identityEvidence", "interactionEvidence", "bindingStatus", "bindingMode"],
49
- "decisionEvidenceSchema": ["decisionId", "userDecision", "actor", "source", "decidedAt", "inputHash", "evidenceHash"],
50
- "fakeProviderSessionIdProhibited": true,
51
- "createdAt": null,
52
- "updatedAt": null
53
- }
@@ -1,24 +0,0 @@
1
- {
2
- "schemaVersion": 1,
3
- "migrationId": null,
4
- "executionModelFrom": null,
5
- "executionModelTo": "shared-project-multi-conversation-runtime",
6
- "phase": "not-started",
7
- "phaseEnum": ["not-started", "inventory", "prepared", "converting", "validating", "committed", "partial", "blocked", "recovery-required", "manual-required"],
8
- "projectContextId": null,
9
- "idempotencyKey": null,
10
- "beforeHash": null,
11
- "afterHash": null,
12
- "legacyInventory": [],
13
- "preservedReadOnlyPaths": [],
14
- "convertedTaskIds": [],
15
- "createdConversationBindingIds": [],
16
- "createdStreamIds": [],
17
- "cursorInitialization": {},
18
- "rollbackPaths": [],
19
- "conflicts": [],
20
- "evidence": [],
21
- "startedAt": null,
22
- "updatedAt": null,
23
- "completedAt": null
24
- }
@@ -1,30 +0,0 @@
1
- {
2
- "schemaVersion": 2,
3
- "executionModel": "shared-project-multi-conversation-runtime",
4
- "projectRootHash": null,
5
- "status": "partial",
6
- "executionEligible": false,
7
- "contextStatus": "unknown",
8
- "understandingStatus": "unknown",
9
- "reTakeover": {
10
- "recordPath": "xinyun-ai/index/re-takeover-record.json",
11
- "snapshotPath": "xinyun-ai/index/bootstrap-snapshot.json",
12
- "status": "not-started",
13
- "takeoverId": null,
14
- "evidence": []
15
- },
16
- "projectIdentity": {"status": "pending", "evidence": []},
17
- "projectContext": {"status": "pending", "path": "xinyun-ai/project-context.json", "evidence": []},
18
- "conversationBinding": {"status": "pending", "registryPath": "xinyun-ai/conversations/registry.json", "evidence": []},
19
- "incrementalSync": {"status": "pending", "cursorPath": null, "evidence": []},
20
- "taskControlPlane": {"status": "pending", "taskIndex": "xinyun-ai/tasks/task-index.json", "taskGraph": "xinyun-ai/tasks/task-graph.json", "evidence": []},
21
- "skillRuntime": {"status": "pending", "registry": "xinyun-ai/skills/registry.json", "evidence": []},
22
- "legacyMigration": {"status": "not-required", "inventoryPath": null, "evidence": []},
23
- "authorization": {"changePlan": "required", "database": "not-requested", "gitWrite": "not-requested", "npmPublish": "not-requested"},
24
- "requiredGates": [],
25
- "blockedReasons": [],
26
- "unverifiedScope": [],
27
- "evidence": [],
28
- "createdAt": null,
29
- "updatedAt": null
30
- }
@@ -1,28 +0,0 @@
1
- {
2
- "schemaVersion": 2,
3
- "executionModel": "shared-project-multi-conversation-runtime",
4
- "orchestratorId": "shared-project-context-orchestrator",
5
- "projectContextId": null,
6
- "conversationBindingId": null,
7
- "projectRootHash": null,
8
- "workspaceScope": "xinyun-ai-control",
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",
23
- "identityEvidence": [],
24
- "interactionEvidence": [],
25
- "taskGraphPath": "xinyun-ai/tasks/task-graph.json",
26
- "createdAt": null,
27
- "updatedAt": null
28
- }
@@ -1,13 +0,0 @@
1
- {
2
- "schemaVersion": 1,
3
- "parallelismId": "parallelism-template",
4
- "requestedConcurrency": 3,
5
- "effectiveConcurrency": 0,
6
- "maxConcurrency": 3,
7
- "providerCapability": "unknown",
8
- "concurrencyFallback": null,
9
- "queueOrder": ["priority", "confirmedAt", "taskId"],
10
- "roleRuns": [],
11
- "startedAt": null,
12
- "finishedAt": null
13
- }
@@ -1,17 +0,0 @@
1
- {
2
- "schemaVersion": 1,
3
- "metricsId": "performance-metrics-template",
4
- "taskId": null,
5
- "attempt": 1,
6
- "baselineId": null,
7
- "status": "not-started",
8
- "stages": [],
9
- "stageRequiredFields": ["stageId", "durationMs", "reads", "cacheHit", "queueMs", "retries", "failureReason", "degradationReason"],
10
- "metrics": {"preflightMs": null, "controlPlaneReads": 0, "codeGraphCacheHit": false, "incrementalFiles": 0, "skillRouteMs": null, "queryIndexBuildMs": null, "queryMs": null, "roleConcurrency": 0, "queueMs": 0, "retryCount": 0, "cacheHitRate": 0},
11
- "relativeBaseline": {"compared": false, "result": "unknown", "reason": null},
12
- "fixedMaterializationTargetMs": 5000,
13
- "failures": [],
14
- "degradations": [],
15
- "createdAt": null,
16
- "updatedAt": null
17
- }
@@ -1,25 +0,0 @@
1
- {
2
- "schemaVersion": 2,
3
- "executionModel": "shared-project-multi-conversation-runtime",
4
- "projectRootHash": null,
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"
18
- },
19
- "requiredConversationEvidence": ["create-or-reuse", "send", "receive", "query-status", "recover", "close", "control-file-read-write"],
20
- "blockedReasons": [],
21
- "unverifiedScope": [],
22
- "evidence": [],
23
- "createdAt": null,
24
- "updatedAt": null
25
- }
@@ -1,56 +0,0 @@
1
- # 项目完整性检查
2
-
3
- ## 项目身份
4
-
5
- - `projectRootHash` 已验证:待填写
6
- - 工作区、仓库范围和 cwd 一致:待填写
7
- - 未复用其他项目对话、事件或任务:待填写
8
-
9
- ## 项目上下文与多对话
10
-
11
- - `projectContextId` 唯一且项目范围一致:待填写
12
- - 每个活动对话都有独立 `conversationBindingId`:待填写
13
- - 线程引用未被当作 `providerSessionId`:待填写
14
- - 每个对话只写自己的不可变事件流:待填写
15
- - 用户消息触发 head/cursor 检查且无变化时静默:待填写
16
- - 新事件能够被其他对话增量消费:待填写
17
- - 游标恢复、事件链和跨项目隔离通过:待填写
18
- - create/reuse、send、receive、query-status、recover、close、控制文件读写证据完整:待填写
19
-
20
- ## 任务控制面
21
-
22
- - 正式任务在 Skill 执行前已创建:待填写
23
- - 任务文件、任务索引、任务图和当前任务一致:待填写
24
- - 任务图无环且无孤立节点:待填写
25
- - 幂等键重复请求复用原任务:待填写
26
- - 事务 before/after hash、原子替换和失败恢复可验证:待填写
27
-
28
- ## Skill
29
-
30
- - 路由只使用任务事实,不使用固定角色:待填写
31
- - 已记录候选、选中、拒绝、降级和阻断原因:待填写
32
- - 每次运行有独立 `skillRunId` 和阶段证据:待填写
33
- - 同一对话测试只标记为 `self-check`:待填写
34
- - 缺失依赖或权限时未自动安装或伪造执行:待填写
35
-
36
- ## 写回与权限
37
-
38
- - 动态事实只写入目标项目 `xinyun-ai/`:待填写
39
- - 修改前计划与用户确认存在:待填写
40
- - 数据库、Git 和发布授权分别记录:待填写
41
- - 实际文件、API/字段/组件/流程影响和未完成事项已写回:待填写
42
-
43
- ## 旧项目迁移
44
-
45
- - 旧角色材料已列入只读清单:待填写
46
- - 活动旧任务已转换为普通任务:待填写
47
- - 原角色只保存在 `legacyRoleId`:待填写
48
- - 未删除旧目录或历史证据:待填写
49
- - 重复升级和中断恢复通过:待填写
50
-
51
- ## 结论
52
-
53
- - 状态:partial / blocked / manual-required / ready
54
- - 阻塞原因:待填写
55
- - 未验证范围:待填写
56
- - 下一动作:待填写