@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,780 +0,0 @@
1
- {
2
- "schemaVersion": 1,
3
- "version": "1.14.0",
4
- "evidenceType": "local-session",
5
- "executionMode": "local-degraded",
6
- "realAiSessionVerified": false,
7
- "publishBlocked": false,
8
- "providerSessionId": null,
9
- "fixture": "isolated package fixture only; no real business project mutation",
10
- "scenarioRange": [
11
- 186,
12
- 205
13
- ],
14
- "scenarioRequiredFields": [
15
- "scenarioId",
16
- "input",
17
- "expectedOutput",
18
- "actualOutput",
19
- "beforeSnapshotHash",
20
- "afterSnapshotHash",
21
- "changedFiles",
22
- "controlFilesChanged",
23
- "forbiddenOperations",
24
- "evidence",
25
- "sensitiveScan",
26
- "result",
27
- "recordHash",
28
- "recordedAt",
29
- "localSessionId"
30
- ],
31
- "requiredHostEvidence": [
32
- "local-session-allocation",
33
- "control-file-read-write"
34
- ],
35
- "scenarios": [
36
- {
37
- "scenarioId": 186,
38
- "sessionId": null,
39
- "providerSessionId": null,
40
- "input": "agent profile",
41
- "expectedOutput": "profile-recorded",
42
- "actualOutput": "local-degraded-verified",
43
- "beforeSnapshotHash": "not-recorded",
44
- "afterSnapshotHash": "not-recorded",
45
- "changedFiles": [],
46
- "controlFilesChanged": [],
47
- "forbiddenOperations": [],
48
- "evidence": [
49
- {
50
- "operation": "local-session-allocation",
51
- "source": "xinyun-ai control plane",
52
- "localSessionId": "local-v1.14.0-behavior-fixture",
53
- "recordedAt": "2026-07-31T07:46:03.480Z"
54
- },
55
- {
56
- "operation": "control-file-read-write",
57
- "source": "isolated package fixture",
58
- "summaryOrHash": "f3fdd17ecb8f7945dffaa4077088bb3f7eace202bd3d1b8caf4eefb529cd0fd9",
59
- "recordedAt": "2026-07-31T07:46:03.480Z"
60
- }
61
- ],
62
- "sensitiveScan": {
63
- "status": "pass",
64
- "matches": []
65
- },
66
- "result": "local-passed",
67
- "evidenceType": "local-session",
68
- "recordedAt": "2026-07-31T07:46:03.480Z",
69
- "localSessionId": "local-v1.14.0-behavior-fixture",
70
- "recordHash": "abf57a4efe774ed385b86727a712a66a603b9b72bfd95d6703f3a6a8f66dd8e4"
71
- },
72
- {
73
- "scenarioId": 187,
74
- "sessionId": null,
75
- "providerSessionId": null,
76
- "input": "capability aggregation",
77
- "expectedOutput": "conservative-status",
78
- "actualOutput": "local-degraded-verified",
79
- "beforeSnapshotHash": "not-recorded",
80
- "afterSnapshotHash": "not-recorded",
81
- "changedFiles": [],
82
- "controlFilesChanged": [],
83
- "forbiddenOperations": [],
84
- "evidence": [
85
- {
86
- "operation": "local-session-allocation",
87
- "source": "xinyun-ai control plane",
88
- "localSessionId": "local-v1.14.0-behavior-fixture",
89
- "recordedAt": "2026-07-31T07:46:03.480Z"
90
- },
91
- {
92
- "operation": "control-file-read-write",
93
- "source": "isolated package fixture",
94
- "summaryOrHash": "4b3ea0c669a628f9de48a74144b995eddf51d195fe1d329e7460efbbaec7195e",
95
- "recordedAt": "2026-07-31T07:46:03.480Z"
96
- }
97
- ],
98
- "sensitiveScan": {
99
- "status": "pass",
100
- "matches": []
101
- },
102
- "result": "local-passed",
103
- "evidenceType": "local-session",
104
- "recordedAt": "2026-07-31T07:46:03.480Z",
105
- "localSessionId": "local-v1.14.0-behavior-fixture",
106
- "recordHash": "6bf8106b9eb4ef8526523d96ba229ba4aafc8bb7deac6c0b39479c4652eef3ec"
107
- },
108
- {
109
- "scenarioId": 188,
110
- "sessionId": null,
111
- "providerSessionId": null,
112
- "input": "takeover gate completeness",
113
- "expectedOutput": "all-gates-checked",
114
- "actualOutput": "local-degraded-verified",
115
- "beforeSnapshotHash": "not-recorded",
116
- "afterSnapshotHash": "not-recorded",
117
- "changedFiles": [],
118
- "controlFilesChanged": [],
119
- "forbiddenOperations": [],
120
- "evidence": [
121
- {
122
- "operation": "local-session-allocation",
123
- "source": "xinyun-ai control plane",
124
- "localSessionId": "local-v1.14.0-behavior-fixture",
125
- "recordedAt": "2026-07-31T07:46:03.480Z"
126
- },
127
- {
128
- "operation": "control-file-read-write",
129
- "source": "isolated package fixture",
130
- "summaryOrHash": "a0c6e6fbbeb9d403f373a114ba8dfa5090efba4723355f8ff7cc549cc7e8d598",
131
- "recordedAt": "2026-07-31T07:46:03.480Z"
132
- }
133
- ],
134
- "sensitiveScan": {
135
- "status": "pass",
136
- "matches": []
137
- },
138
- "result": "local-passed",
139
- "evidenceType": "local-session",
140
- "recordedAt": "2026-07-31T07:46:03.480Z",
141
- "localSessionId": "local-v1.14.0-behavior-fixture",
142
- "recordHash": "41ca8241547558b525325dc2f09c6e646cf1da0c7a4b9efe6ed95646748da3b9"
143
- },
144
- {
145
- "scenarioId": 189,
146
- "sessionId": null,
147
- "providerSessionId": null,
148
- "input": "missing takeover evidence",
149
- "expectedOutput": "blocked-or-manual-required",
150
- "actualOutput": "local-degraded-verified",
151
- "beforeSnapshotHash": "not-recorded",
152
- "afterSnapshotHash": "not-recorded",
153
- "changedFiles": [],
154
- "controlFilesChanged": [],
155
- "forbiddenOperations": [],
156
- "evidence": [
157
- {
158
- "operation": "local-session-allocation",
159
- "source": "xinyun-ai control plane",
160
- "localSessionId": "local-v1.14.0-behavior-fixture",
161
- "recordedAt": "2026-07-31T07:46:03.480Z"
162
- },
163
- {
164
- "operation": "control-file-read-write",
165
- "source": "isolated package fixture",
166
- "summaryOrHash": "01f890636b7c6e997fb25f37a6bf1dbb9396984200f78c4c55a288b22234d078",
167
- "recordedAt": "2026-07-31T07:46:03.480Z"
168
- }
169
- ],
170
- "sensitiveScan": {
171
- "status": "pass",
172
- "matches": []
173
- },
174
- "result": "local-passed",
175
- "evidenceType": "local-session",
176
- "recordedAt": "2026-07-31T07:46:03.480Z",
177
- "localSessionId": "local-v1.14.0-behavior-fixture",
178
- "recordHash": "701fbe9bb190772c657713da4a81b90e7fa03140603169d20a8277efba72305b"
179
- },
180
- {
181
- "scenarioId": 190,
182
- "sessionId": null,
183
- "providerSessionId": null,
184
- "input": "orchestrator registration",
185
- "expectedOutput": "independent-orchestrator",
186
- "actualOutput": "local-degraded-verified",
187
- "beforeSnapshotHash": "not-recorded",
188
- "afterSnapshotHash": "not-recorded",
189
- "changedFiles": [],
190
- "controlFilesChanged": [],
191
- "forbiddenOperations": [],
192
- "evidence": [
193
- {
194
- "operation": "local-session-allocation",
195
- "source": "xinyun-ai control plane",
196
- "localSessionId": "local-v1.14.0-behavior-fixture",
197
- "recordedAt": "2026-07-31T07:46:03.480Z"
198
- },
199
- {
200
- "operation": "control-file-read-write",
201
- "source": "isolated package fixture",
202
- "summaryOrHash": "a7f9d56353b7d9c6fa09a3ad5aeeaeca1cd4535973d3b03186fef555e0557056",
203
- "recordedAt": "2026-07-31T07:46:03.480Z"
204
- }
205
- ],
206
- "sensitiveScan": {
207
- "status": "pass",
208
- "matches": []
209
- },
210
- "result": "local-passed",
211
- "evidenceType": "local-session",
212
- "recordedAt": "2026-07-31T07:46:03.480Z",
213
- "localSessionId": "local-v1.14.0-behavior-fixture",
214
- "recordHash": "bfa31b1990edd4eb90a553cb8412f56d36cc34ebd78725eabc441665e41ba7c5"
215
- },
216
- {
217
- "scenarioId": 191,
218
- "sessionId": null,
219
- "providerSessionId": null,
220
- "input": "task graph dependencies",
221
- "expectedOutput": "acyclic-and-gated",
222
- "actualOutput": "local-degraded-verified",
223
- "beforeSnapshotHash": "not-recorded",
224
- "afterSnapshotHash": "not-recorded",
225
- "changedFiles": [],
226
- "controlFilesChanged": [],
227
- "forbiddenOperations": [],
228
- "evidence": [
229
- {
230
- "operation": "local-session-allocation",
231
- "source": "xinyun-ai control plane",
232
- "localSessionId": "local-v1.14.0-behavior-fixture",
233
- "recordedAt": "2026-07-31T07:46:03.480Z"
234
- },
235
- {
236
- "operation": "control-file-read-write",
237
- "source": "isolated package fixture",
238
- "summaryOrHash": "4c9e3810407d600ecd2de353a0d898f24bb945e17c06dc128f3ae358158eff1d",
239
- "recordedAt": "2026-07-31T07:46:03.480Z"
240
- }
241
- ],
242
- "sensitiveScan": {
243
- "status": "pass",
244
- "matches": []
245
- },
246
- "result": "local-passed",
247
- "evidenceType": "local-session",
248
- "recordedAt": "2026-07-31T07:46:03.480Z",
249
- "localSessionId": "local-v1.14.0-behavior-fixture",
250
- "recordHash": "f15d0aeddd02630447c2e034e2646c178bae924846478bc877430f2efa98d37b"
251
- },
252
- {
253
- "scenarioId": 192,
254
- "sessionId": null,
255
- "providerSessionId": null,
256
- "input": "unified task status",
257
- "expectedOutput": "machine-and-label-compatible",
258
- "actualOutput": "local-degraded-verified",
259
- "beforeSnapshotHash": "not-recorded",
260
- "afterSnapshotHash": "not-recorded",
261
- "changedFiles": [],
262
- "controlFilesChanged": [],
263
- "forbiddenOperations": [],
264
- "evidence": [
265
- {
266
- "operation": "local-session-allocation",
267
- "source": "xinyun-ai control plane",
268
- "localSessionId": "local-v1.14.0-behavior-fixture",
269
- "recordedAt": "2026-07-31T07:46:03.480Z"
270
- },
271
- {
272
- "operation": "control-file-read-write",
273
- "source": "isolated package fixture",
274
- "summaryOrHash": "d75a591c4d3c12c3873fa04de856189f4aa85ed6a08dac492b463b833c88bceb",
275
- "recordedAt": "2026-07-31T07:46:03.480Z"
276
- }
277
- ],
278
- "sensitiveScan": {
279
- "status": "pass",
280
- "matches": []
281
- },
282
- "result": "local-passed",
283
- "evidenceType": "local-session",
284
- "recordedAt": "2026-07-31T07:46:03.480Z",
285
- "localSessionId": "local-v1.14.0-behavior-fixture",
286
- "recordHash": "c6292391bf58ea7b4a918099648c5cb49064c7da46158ba5a2343e2675f426c9"
287
- },
288
- {
289
- "scenarioId": 193,
290
- "sessionId": null,
291
- "providerSessionId": null,
292
- "input": "task completion gate",
293
- "expectedOutput": "evidence-and-review-required",
294
- "actualOutput": "local-degraded-verified",
295
- "beforeSnapshotHash": "not-recorded",
296
- "afterSnapshotHash": "not-recorded",
297
- "changedFiles": [],
298
- "controlFilesChanged": [],
299
- "forbiddenOperations": [],
300
- "evidence": [
301
- {
302
- "operation": "local-session-allocation",
303
- "source": "xinyun-ai control plane",
304
- "localSessionId": "local-v1.14.0-behavior-fixture",
305
- "recordedAt": "2026-07-31T07:46:03.480Z"
306
- },
307
- {
308
- "operation": "control-file-read-write",
309
- "source": "isolated package fixture",
310
- "summaryOrHash": "b62008febd46f9df3ef3f95d12d32cd3b9694bef8f55373e3faca52a48568aa7",
311
- "recordedAt": "2026-07-31T07:46:03.480Z"
312
- }
313
- ],
314
- "sensitiveScan": {
315
- "status": "pass",
316
- "matches": []
317
- },
318
- "result": "local-passed",
319
- "evidenceType": "local-session",
320
- "recordedAt": "2026-07-31T07:46:03.480Z",
321
- "localSessionId": "local-v1.14.0-behavior-fixture",
322
- "recordHash": "40cd2499ce934c563692db8191e8320a0cd74c5b0c6327b79a8c570f83c1c0fb"
323
- },
324
- {
325
- "scenarioId": 194,
326
- "sessionId": null,
327
- "providerSessionId": null,
328
- "input": "shared fact pre-read",
329
- "expectedOutput": "read-before-execution",
330
- "actualOutput": "local-degraded-verified",
331
- "beforeSnapshotHash": "not-recorded",
332
- "afterSnapshotHash": "not-recorded",
333
- "changedFiles": [],
334
- "controlFilesChanged": [],
335
- "forbiddenOperations": [],
336
- "evidence": [
337
- {
338
- "operation": "local-session-allocation",
339
- "source": "xinyun-ai control plane",
340
- "localSessionId": "local-v1.14.0-behavior-fixture",
341
- "recordedAt": "2026-07-31T07:46:03.480Z"
342
- },
343
- {
344
- "operation": "control-file-read-write",
345
- "source": "isolated package fixture",
346
- "summaryOrHash": "e0d3632e007fa0da45f4479bfce691605ca10a9160e8fa8beac463640bfa5a71",
347
- "recordedAt": "2026-07-31T07:46:03.480Z"
348
- }
349
- ],
350
- "sensitiveScan": {
351
- "status": "pass",
352
- "matches": []
353
- },
354
- "result": "local-passed",
355
- "evidenceType": "local-session",
356
- "recordedAt": "2026-07-31T07:46:03.480Z",
357
- "localSessionId": "local-v1.14.0-behavior-fixture",
358
- "recordHash": "70645ac8cd0b25299754b9f0836da9bea78a9f8a649d0bc1323eb25b7009fb39"
359
- },
360
- {
361
- "scenarioId": 195,
362
- "sessionId": null,
363
- "providerSessionId": null,
364
- "input": "shared fact write-back",
365
- "expectedOutput": "write-back-complete",
366
- "actualOutput": "local-degraded-verified",
367
- "beforeSnapshotHash": "not-recorded",
368
- "afterSnapshotHash": "not-recorded",
369
- "changedFiles": [],
370
- "controlFilesChanged": [],
371
- "forbiddenOperations": [],
372
- "evidence": [
373
- {
374
- "operation": "local-session-allocation",
375
- "source": "xinyun-ai control plane",
376
- "localSessionId": "local-v1.14.0-behavior-fixture",
377
- "recordedAt": "2026-07-31T07:46:03.480Z"
378
- },
379
- {
380
- "operation": "control-file-read-write",
381
- "source": "isolated package fixture",
382
- "summaryOrHash": "2fa4a63e7fc66b5a6d4d6edf81e3bf8dea902d002037884d1d1ab4024d16ef41",
383
- "recordedAt": "2026-07-31T07:46:03.480Z"
384
- }
385
- ],
386
- "sensitiveScan": {
387
- "status": "pass",
388
- "matches": []
389
- },
390
- "result": "local-passed",
391
- "evidenceType": "local-session",
392
- "recordedAt": "2026-07-31T07:46:03.480Z",
393
- "localSessionId": "local-v1.14.0-behavior-fixture",
394
- "recordHash": "cf47b8cc1a897b25c8eb4e2630a46a5998e0ffb0b13e9c2bf0d43d7967643f60"
395
- },
396
- {
397
- "scenarioId": 196,
398
- "sessionId": null,
399
- "providerSessionId": null,
400
- "input": "conflict pause",
401
- "expectedOutput": "conflict-pending-or-blocked",
402
- "actualOutput": "local-degraded-verified",
403
- "beforeSnapshotHash": "not-recorded",
404
- "afterSnapshotHash": "not-recorded",
405
- "changedFiles": [],
406
- "controlFilesChanged": [],
407
- "forbiddenOperations": [],
408
- "evidence": [
409
- {
410
- "operation": "local-session-allocation",
411
- "source": "xinyun-ai control plane",
412
- "localSessionId": "local-v1.14.0-behavior-fixture",
413
- "recordedAt": "2026-07-31T07:46:03.480Z"
414
- },
415
- {
416
- "operation": "control-file-read-write",
417
- "source": "isolated package fixture",
418
- "summaryOrHash": "d229be9c83b4b57297e34d3cbee270124f1bec1c85001ed44757dc5f010bab7f",
419
- "recordedAt": "2026-07-31T07:46:03.480Z"
420
- }
421
- ],
422
- "sensitiveScan": {
423
- "status": "pass",
424
- "matches": []
425
- },
426
- "result": "local-passed",
427
- "evidenceType": "local-session",
428
- "recordedAt": "2026-07-31T07:46:03.480Z",
429
- "localSessionId": "local-v1.14.0-behavior-fixture",
430
- "recordHash": "cae4e1eb30d066f58f5ce2f40b0fa3d98532264d416d3abf3040c6f5ce4cea6c"
431
- },
432
- {
433
- "scenarioId": 197,
434
- "sessionId": null,
435
- "providerSessionId": null,
436
- "input": "handoff continuity",
437
- "expectedOutput": "recoverable-handoff",
438
- "actualOutput": "local-degraded-verified",
439
- "beforeSnapshotHash": "not-recorded",
440
- "afterSnapshotHash": "not-recorded",
441
- "changedFiles": [],
442
- "controlFilesChanged": [],
443
- "forbiddenOperations": [],
444
- "evidence": [
445
- {
446
- "operation": "local-session-allocation",
447
- "source": "xinyun-ai control plane",
448
- "localSessionId": "local-v1.14.0-behavior-fixture",
449
- "recordedAt": "2026-07-31T07:46:03.480Z"
450
- },
451
- {
452
- "operation": "control-file-read-write",
453
- "source": "isolated package fixture",
454
- "summaryOrHash": "2d312a600de3c84ff53121f1a50346244a4e8baed235e543281834dd73291c36",
455
- "recordedAt": "2026-07-31T07:46:03.480Z"
456
- }
457
- ],
458
- "sensitiveScan": {
459
- "status": "pass",
460
- "matches": []
461
- },
462
- "result": "local-passed",
463
- "evidenceType": "local-session",
464
- "recordedAt": "2026-07-31T07:46:03.480Z",
465
- "localSessionId": "local-v1.14.0-behavior-fixture",
466
- "recordHash": "aa7af5ff5e6b4ea1bf196afc827aa56a4f4bbf626b6a08e97a92aceabeeb24ae"
467
- },
468
- {
469
- "scenarioId": 198,
470
- "sessionId": null,
471
- "providerSessionId": null,
472
- "input": "readable session naming",
473
- "expectedOutput": "role-workflow-title",
474
- "actualOutput": "local-degraded-verified",
475
- "beforeSnapshotHash": "not-recorded",
476
- "afterSnapshotHash": "not-recorded",
477
- "changedFiles": [],
478
- "controlFilesChanged": [],
479
- "forbiddenOperations": [],
480
- "evidence": [
481
- {
482
- "operation": "local-session-allocation",
483
- "source": "xinyun-ai control plane",
484
- "localSessionId": "local-v1.14.0-behavior-fixture",
485
- "recordedAt": "2026-07-31T07:46:03.480Z"
486
- },
487
- {
488
- "operation": "control-file-read-write",
489
- "source": "isolated package fixture",
490
- "summaryOrHash": "c60cf7b0d9c8e919605661dd960a7827dc9bf998bbf9f49e54b9c11603951175",
491
- "recordedAt": "2026-07-31T07:46:03.480Z"
492
- }
493
- ],
494
- "sensitiveScan": {
495
- "status": "pass",
496
- "matches": []
497
- },
498
- "result": "local-passed",
499
- "evidenceType": "local-session",
500
- "recordedAt": "2026-07-31T07:46:03.480Z",
501
- "localSessionId": "local-v1.14.0-behavior-fixture",
502
- "recordHash": "f9839ba4559817cc407b2dd95cfda182ea41cc50478c4ac4c0103e71317d393d"
503
- },
504
- {
505
- "scenarioId": 199,
506
- "sessionId": null,
507
- "providerSessionId": null,
508
- "input": "safe candidate reuse",
509
- "expectedOutput": "identity-and-evidence-gated",
510
- "actualOutput": "local-degraded-verified",
511
- "beforeSnapshotHash": "not-recorded",
512
- "afterSnapshotHash": "not-recorded",
513
- "changedFiles": [],
514
- "controlFilesChanged": [],
515
- "forbiddenOperations": [],
516
- "evidence": [
517
- {
518
- "operation": "local-session-allocation",
519
- "source": "xinyun-ai control plane",
520
- "localSessionId": "local-v1.14.0-behavior-fixture",
521
- "recordedAt": "2026-07-31T07:46:03.480Z"
522
- },
523
- {
524
- "operation": "control-file-read-write",
525
- "source": "isolated package fixture",
526
- "summaryOrHash": "dbddb56e3659e1006ace96fc9e89dcb08b1523eec1012dd261ebb0e7af21cfc5",
527
- "recordedAt": "2026-07-31T07:46:03.480Z"
528
- }
529
- ],
530
- "sensitiveScan": {
531
- "status": "pass",
532
- "matches": []
533
- },
534
- "result": "local-passed",
535
- "evidenceType": "local-session",
536
- "recordedAt": "2026-07-31T07:46:03.480Z",
537
- "localSessionId": "local-v1.14.0-behavior-fixture",
538
- "recordHash": "8cabfc29a23d060f87f4cbd6a961bd26356056aca0b96a973afe4ad4fc6d9b08"
539
- },
540
- {
541
- "scenarioId": 200,
542
- "sessionId": null,
543
- "providerSessionId": null,
544
- "input": "cross-project rejection",
545
- "expectedOutput": "reject-and-preserve-history",
546
- "actualOutput": "local-degraded-verified",
547
- "beforeSnapshotHash": "not-recorded",
548
- "afterSnapshotHash": "not-recorded",
549
- "changedFiles": [],
550
- "controlFilesChanged": [],
551
- "forbiddenOperations": [],
552
- "evidence": [
553
- {
554
- "operation": "local-session-allocation",
555
- "source": "xinyun-ai control plane",
556
- "localSessionId": "local-v1.14.0-behavior-fixture",
557
- "recordedAt": "2026-07-31T07:46:03.480Z"
558
- },
559
- {
560
- "operation": "control-file-read-write",
561
- "source": "isolated package fixture",
562
- "summaryOrHash": "04e1b0c6d97396cb9fd27bfa9e5b5e7d0032319fd644069fd77ff3dc441784d5",
563
- "recordedAt": "2026-07-31T07:46:03.480Z"
564
- }
565
- ],
566
- "sensitiveScan": {
567
- "status": "pass",
568
- "matches": []
569
- },
570
- "result": "local-passed",
571
- "evidenceType": "local-session",
572
- "recordedAt": "2026-07-31T07:46:03.480Z",
573
- "localSessionId": "local-v1.14.0-behavior-fixture",
574
- "recordHash": "a6ede1b95989c462962241432bea55c7f2ccd6e7477a01eee7ba3314ff1bb4e7"
575
- },
576
- {
577
- "scenarioId": 201,
578
- "sessionId": null,
579
- "providerSessionId": null,
580
- "input": "provider identity protection",
581
- "expectedOutput": "canonical-id-only",
582
- "actualOutput": "local-degraded-verified",
583
- "beforeSnapshotHash": "not-recorded",
584
- "afterSnapshotHash": "not-recorded",
585
- "changedFiles": [],
586
- "controlFilesChanged": [],
587
- "forbiddenOperations": [],
588
- "evidence": [
589
- {
590
- "operation": "local-session-allocation",
591
- "source": "xinyun-ai control plane",
592
- "localSessionId": "local-v1.14.0-behavior-fixture",
593
- "recordedAt": "2026-07-31T07:46:03.480Z"
594
- },
595
- {
596
- "operation": "control-file-read-write",
597
- "source": "isolated package fixture",
598
- "summaryOrHash": "b41565a313b692bd0606ec6016123ccd75449aa3bc62f1d5a4929efea439dae2",
599
- "recordedAt": "2026-07-31T07:46:03.480Z"
600
- }
601
- ],
602
- "sensitiveScan": {
603
- "status": "pass",
604
- "matches": []
605
- },
606
- "result": "local-passed",
607
- "evidenceType": "local-session",
608
- "recordedAt": "2026-07-31T07:46:03.480Z",
609
- "localSessionId": "local-v1.14.0-behavior-fixture",
610
- "recordHash": "45d755799e237a9270b4e31ed2c5f5ff09ae678265c5011e77b982b90ce884dd"
611
- },
612
- {
613
- "scenarioId": 202,
614
- "sessionId": null,
615
- "providerSessionId": null,
616
- "input": "final delivery completeness",
617
- "expectedOutput": "delivery-recorded",
618
- "actualOutput": "local-degraded-verified",
619
- "beforeSnapshotHash": "not-recorded",
620
- "afterSnapshotHash": "not-recorded",
621
- "changedFiles": [],
622
- "controlFilesChanged": [],
623
- "forbiddenOperations": [],
624
- "evidence": [
625
- {
626
- "operation": "local-session-allocation",
627
- "source": "xinyun-ai control plane",
628
- "localSessionId": "local-v1.14.0-behavior-fixture",
629
- "recordedAt": "2026-07-31T07:46:03.480Z"
630
- },
631
- {
632
- "operation": "control-file-read-write",
633
- "source": "isolated package fixture",
634
- "summaryOrHash": "830716b11da138470c6d678967827d2783e84abe74f5d4c3f8453f87ff6fb564",
635
- "recordedAt": "2026-07-31T07:46:03.480Z"
636
- }
637
- ],
638
- "sensitiveScan": {
639
- "status": "pass",
640
- "matches": []
641
- },
642
- "result": "local-passed",
643
- "evidenceType": "local-session",
644
- "recordedAt": "2026-07-31T07:46:03.480Z",
645
- "localSessionId": "local-v1.14.0-behavior-fixture",
646
- "recordHash": "ad9743236af1f10911705f2322b1084a1b4bc72bd23ee7252b38e7dedd742554"
647
- },
648
- {
649
- "scenarioId": 203,
650
- "sessionId": null,
651
- "providerSessionId": null,
652
- "input": "final ready gate",
653
- "expectedOutput": "blocked-until-all-pass",
654
- "actualOutput": "local-degraded-verified",
655
- "beforeSnapshotHash": "not-recorded",
656
- "afterSnapshotHash": "not-recorded",
657
- "changedFiles": [],
658
- "controlFilesChanged": [],
659
- "forbiddenOperations": [],
660
- "evidence": [
661
- {
662
- "operation": "local-session-allocation",
663
- "source": "xinyun-ai control plane",
664
- "localSessionId": "local-v1.14.0-behavior-fixture",
665
- "recordedAt": "2026-07-31T07:46:03.480Z"
666
- },
667
- {
668
- "operation": "control-file-read-write",
669
- "source": "isolated package fixture",
670
- "summaryOrHash": "ee372e97a47e88ce56575748073246d9e5f65f9eb25ee82dabfe892a376b003a",
671
- "recordedAt": "2026-07-31T07:46:03.480Z"
672
- }
673
- ],
674
- "sensitiveScan": {
675
- "status": "pass",
676
- "matches": []
677
- },
678
- "result": "local-passed",
679
- "evidenceType": "local-session",
680
- "recordedAt": "2026-07-31T07:46:03.480Z",
681
- "localSessionId": "local-v1.14.0-behavior-fixture",
682
- "recordHash": "fd0dfaab14c1b34a498799b1b276695de86d3f83b976bc469b8443c1c6959cb7"
683
- },
684
- {
685
- "scenarioId": 204,
686
- "sessionId": null,
687
- "providerSessionId": null,
688
- "input": "v1.13 compatibility regression",
689
- "expectedOutput": "compatibility-preserved",
690
- "actualOutput": "local-degraded-verified",
691
- "beforeSnapshotHash": "not-recorded",
692
- "afterSnapshotHash": "not-recorded",
693
- "changedFiles": [],
694
- "controlFilesChanged": [],
695
- "forbiddenOperations": [],
696
- "evidence": [
697
- {
698
- "operation": "local-session-allocation",
699
- "source": "xinyun-ai control plane",
700
- "localSessionId": "local-v1.14.0-behavior-fixture",
701
- "recordedAt": "2026-07-31T07:46:03.480Z"
702
- },
703
- {
704
- "operation": "control-file-read-write",
705
- "source": "isolated package fixture",
706
- "summaryOrHash": "60f3cb97562d9975117b67f308e124a2f252ed238c9e81510a7f8b0a40eaac30",
707
- "recordedAt": "2026-07-31T07:46:03.480Z"
708
- }
709
- ],
710
- "sensitiveScan": {
711
- "status": "pass",
712
- "matches": []
713
- },
714
- "result": "local-passed",
715
- "evidenceType": "local-session",
716
- "recordedAt": "2026-07-31T07:46:03.480Z",
717
- "localSessionId": "local-v1.14.0-behavior-fixture",
718
- "recordHash": "9205dd6d40fe499c0356ea1cef875a7bfc93a142f3e1c4688e096fabfd75e51b"
719
- },
720
- {
721
- "scenarioId": 205,
722
- "sessionId": null,
723
- "providerSessionId": null,
724
- "input": "package boundary and safety",
725
- "expectedOutput": "allowlist-and-safety-pass",
726
- "actualOutput": "local-degraded-verified",
727
- "beforeSnapshotHash": "not-recorded",
728
- "afterSnapshotHash": "not-recorded",
729
- "changedFiles": [],
730
- "controlFilesChanged": [],
731
- "forbiddenOperations": [],
732
- "evidence": [
733
- {
734
- "operation": "local-session-allocation",
735
- "source": "xinyun-ai control plane",
736
- "localSessionId": "local-v1.14.0-behavior-fixture",
737
- "recordedAt": "2026-07-31T07:46:03.480Z"
738
- },
739
- {
740
- "operation": "control-file-read-write",
741
- "source": "isolated package fixture",
742
- "summaryOrHash": "bb95321867371f925550331f2dc017de45d3ae18005a394e6ab6cbbf628573e8",
743
- "recordedAt": "2026-07-31T07:46:03.480Z"
744
- }
745
- ],
746
- "sensitiveScan": {
747
- "status": "pass",
748
- "matches": []
749
- },
750
- "result": "local-passed",
751
- "evidenceType": "local-session",
752
- "recordedAt": "2026-07-31T07:46:03.480Z",
753
- "localSessionId": "local-v1.14.0-behavior-fixture",
754
- "recordHash": "d7d549e34a6e5633affe74040933ead857b0ff0de7968d7c64429a05c6d5768c"
755
- }
756
- ],
757
- "defaultActualOutput": "not-verified",
758
- "defaultResult": "not-verified",
759
- "defaultSensitiveScan": {
760
- "status": "pass",
761
- "matches": []
762
- },
763
- "forbiddenOperations": [
764
- "provider-login",
765
- "provider-install",
766
- "database-connection",
767
- "sql",
768
- "business-file-write",
769
- "git-write",
770
- "dependency-install",
771
- "npm-publish"
772
- ],
773
- "recordedAt": "2026-07-31T07:46:03.480Z",
774
- "sessionIdentityMode": "local-degraded",
775
- "localSessionId": "local-v1.14.0-behavior-fixture",
776
- "readyEligible": false,
777
- "blockedReason": "real-provider-session-required-for-ready",
778
- "publishPolicy": "package-publish-allowed; project-ready-remains-blocked",
779
- "recordHash": "e8e9fc18db8858aa933feead05d081d9f560624c1814bef3f6f2eb3f8de04de8"
780
- }