openxiangda 2.59.3-http.0 → 2.60.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 (261) hide show
  1. package/dist/browser/admin-contributions.d.ts.map +1 -1
  2. package/dist/browser/admin-contributions.js +3 -4
  3. package/dist/browser/admin-contributions.js.map +1 -1
  4. package/dist/browser/application.d.ts +4 -2
  5. package/dist/browser/application.d.ts.map +1 -1
  6. package/dist/browser/application.js +2 -2
  7. package/dist/browser/application.js.map +1 -1
  8. package/dist/browser/components/platform-fields/AttachmentFileList.d.ts +5 -0
  9. package/dist/browser/components/platform-fields/AttachmentFileList.d.ts.map +1 -1
  10. package/dist/browser/components/platform-fields/AttachmentFileList.js +11 -0
  11. package/dist/browser/components/platform-fields/AttachmentFileList.js.map +1 -1
  12. package/dist/browser/components/platform-fields/DateTimeField.js +1 -1
  13. package/dist/browser/components/platform-fields/DateTimeField.js.map +1 -1
  14. package/dist/browser/components/platform-fields/MobileDateTimeField.js +1 -1
  15. package/dist/browser/components/platform-fields/MobileDateTimeField.js.map +1 -1
  16. package/dist/browser/components/platform-fields/MobileManagedFileField.d.ts +2 -1
  17. package/dist/browser/components/platform-fields/MobileManagedFileField.d.ts.map +1 -1
  18. package/dist/browser/components/platform-fields/MobileManagedFileField.js +4 -4
  19. package/dist/browser/components/platform-fields/MobileManagedFileField.js.map +1 -1
  20. package/dist/browser/components/platform-fields/MobileZonedDateTimeField.d.ts +1 -1
  21. package/dist/browser/components/platform-fields/MobileZonedDateTimeField.d.ts.map +1 -1
  22. package/dist/browser/components/platform-fields/MobileZonedDateTimeField.js +3 -3
  23. package/dist/browser/components/platform-fields/MobileZonedDateTimeField.js.map +1 -1
  24. package/dist/browser/components/platform-fields/SubtableField.d.ts +6 -0
  25. package/dist/browser/components/platform-fields/SubtableField.d.ts.map +1 -1
  26. package/dist/browser/components/platform-fields/SubtableField.js +17 -10
  27. package/dist/browser/components/platform-fields/SubtableField.js.map +1 -1
  28. package/dist/browser/components/platform-fields/ZonedDateTimeField.d.ts +1 -1
  29. package/dist/browser/components/platform-fields/ZonedDateTimeField.d.ts.map +1 -1
  30. package/dist/browser/components/platform-fields/ZonedDateTimeField.js +3 -2
  31. package/dist/browser/components/platform-fields/ZonedDateTimeField.js.map +1 -1
  32. package/dist/browser/components/platform-fields/zoned-date-time.d.ts +2 -0
  33. package/dist/browser/components/platform-fields/zoned-date-time.d.ts.map +1 -1
  34. package/dist/browser/components/platform-fields/zoned-date-time.js +6 -0
  35. package/dist/browser/components/platform-fields/zoned-date-time.js.map +1 -1
  36. package/dist/browser/components/resource/SurfaceFields.d.ts +5 -0
  37. package/dist/browser/components/resource/SurfaceFields.d.ts.map +1 -1
  38. package/dist/browser/components/resource/SurfaceFields.js +9 -9
  39. package/dist/browser/components/resource/SurfaceFields.js.map +1 -1
  40. package/dist/browser/components/workflow/StandardWorkflowPages.d.ts +15 -2
  41. package/dist/browser/components/workflow/StandardWorkflowPages.d.ts.map +1 -1
  42. package/dist/browser/components/workflow/StandardWorkflowPages.js +115 -45
  43. package/dist/browser/components/workflow/StandardWorkflowPages.js.map +1 -1
  44. package/dist/browser/components/workflow/WorkflowDiagram.d.ts.map +1 -1
  45. package/dist/browser/components/workflow/WorkflowDiagram.js +12 -5
  46. package/dist/browser/components/workflow/WorkflowDiagram.js.map +1 -1
  47. package/dist/browser/components/workflow/WorkflowFlowCanvas.d.ts.map +1 -1
  48. package/dist/browser/components/workflow/WorkflowFlowCanvas.js +14 -7
  49. package/dist/browser/components/workflow/WorkflowFlowCanvas.js.map +1 -1
  50. package/dist/browser/components/workflow/WorkflowNodeConfigurationEditor.d.ts.map +1 -1
  51. package/dist/browser/components/workflow/WorkflowNodeConfigurationEditor.js +4 -2
  52. package/dist/browser/components/workflow/WorkflowNodeConfigurationEditor.js.map +1 -1
  53. package/dist/browser/components/workflow/WorkflowTaskForm.d.ts +9 -1
  54. package/dist/browser/components/workflow/WorkflowTaskForm.d.ts.map +1 -1
  55. package/dist/browser/components/workflow/WorkflowTaskForm.js +32 -3
  56. package/dist/browser/components/workflow/WorkflowTaskForm.js.map +1 -1
  57. package/dist/browser/components/workflow/standard-process-values.d.ts +2 -2
  58. package/dist/browser/components/workflow/standard-process-values.d.ts.map +1 -1
  59. package/dist/browser/components/workflow/standard-process-values.js +18 -3
  60. package/dist/browser/components/workflow/standard-process-values.js.map +1 -1
  61. package/dist/browser/components/workflow/workflow-graph-presentation.d.ts +1 -1
  62. package/dist/browser/components/workflow/workflow-graph-presentation.d.ts.map +1 -1
  63. package/dist/browser/components/workflow/workflow-graph-presentation.js +4 -3
  64. package/dist/browser/components/workflow/workflow-graph-presentation.js.map +1 -1
  65. package/dist/browser/components/workflow/workflow-submission-form.d.ts +9 -0
  66. package/dist/browser/components/workflow/workflow-submission-form.d.ts.map +1 -1
  67. package/dist/browser/components/workflow/workflow-submission-form.js +34 -1
  68. package/dist/browser/components/workflow/workflow-submission-form.js.map +1 -1
  69. package/dist/browser/navigation-guard.d.ts +4 -1
  70. package/dist/browser/navigation-guard.d.ts.map +1 -1
  71. package/dist/browser/navigation-guard.js +39 -10
  72. package/dist/browser/navigation-guard.js.map +1 -1
  73. package/dist/browser/styles.css +19 -0
  74. package/dist/browser/workflow-definitions.d.ts +14 -1
  75. package/dist/browser/workflow-definitions.d.ts.map +1 -1
  76. package/dist/browser/workflow-definitions.js +8 -3
  77. package/dist/browser/workflow-definitions.js.map +1 -1
  78. package/documentation/AGENTS.md +1 -0
  79. package/documentation/administration.md +5 -2
  80. package/documentation/application-operations.md +150 -0
  81. package/documentation/appspec.md +1 -1
  82. package/documentation/backend.md +21 -0
  83. package/documentation/delivery.md +31 -2
  84. package/documentation/getting-started.md +7 -7
  85. package/documentation/manifest.json +15 -9
  86. package/documentation/reference/cli.md +1 -1
  87. package/documentation/reference/mcp.md +1120 -0
  88. package/documentation/workflow-events.md +73 -5
  89. package/package.json +32 -23
  90. package/releases/2.20.2.json +30 -0
  91. package/releases/2.20.3.json +29 -0
  92. package/releases/2.60.0.json +38 -0
  93. package/skills/manifest.json +1 -1
  94. package/skills/openxiangda-v2/SKILL.md +5 -4
  95. package/skills/openxiangda-v2/references/administration.md +5 -2
  96. package/skills/openxiangda-v2/references/application-operations.md +150 -0
  97. package/skills/openxiangda-v2/references/appspec.md +1 -1
  98. package/skills/openxiangda-v2/references/backend.md +21 -0
  99. package/skills/openxiangda-v2/references/cli.md +1 -1
  100. package/skills/openxiangda-v2/references/delivery.md +31 -2
  101. package/skills/openxiangda-v2/references/getting-started.md +7 -7
  102. package/skills/openxiangda-v2/references/mcp.md +1120 -0
  103. package/skills/openxiangda-v2/references/workflow-events.md +73 -5
  104. package/releases/2.0.0.json +0 -50
  105. package/releases/2.0.1.json +0 -39
  106. package/releases/2.1.0.json +0 -44
  107. package/releases/2.1.1.json +0 -48
  108. package/releases/2.10.0.json +0 -42
  109. package/releases/2.11.0.json +0 -41
  110. package/releases/2.12.0.json +0 -38
  111. package/releases/2.13.0.json +0 -41
  112. package/releases/2.13.1.json +0 -33
  113. package/releases/2.13.2.json +0 -31
  114. package/releases/2.14.0.json +0 -41
  115. package/releases/2.15.0.json +0 -40
  116. package/releases/2.16.0.json +0 -41
  117. package/releases/2.17.0.json +0 -39
  118. package/releases/2.17.1.json +0 -34
  119. package/releases/2.18.0.json +0 -37
  120. package/releases/2.18.1.json +0 -31
  121. package/releases/2.18.10.json +0 -29
  122. package/releases/2.18.2.json +0 -30
  123. package/releases/2.18.3.json +0 -30
  124. package/releases/2.18.9.json +0 -37
  125. package/releases/2.19.0.json +0 -38
  126. package/releases/2.2.0.json +0 -48
  127. package/releases/2.2.1.json +0 -35
  128. package/releases/2.2.2.json +0 -34
  129. package/releases/2.20.0.json +0 -36
  130. package/releases/2.21.0.json +0 -35
  131. package/releases/2.21.1.json +0 -36
  132. package/releases/2.21.2.json +0 -34
  133. package/releases/2.21.3.json +0 -31
  134. package/releases/2.21.4.json +0 -31
  135. package/releases/2.22.0.json +0 -35
  136. package/releases/2.22.1.json +0 -32
  137. package/releases/2.22.2.json +0 -35
  138. package/releases/2.22.3.json +0 -32
  139. package/releases/2.22.4.json +0 -33
  140. package/releases/2.22.5.json +0 -31
  141. package/releases/2.22.6.json +0 -29
  142. package/releases/2.22.7.json +0 -29
  143. package/releases/2.23.0.json +0 -34
  144. package/releases/2.24.0.json +0 -33
  145. package/releases/2.24.1.json +0 -33
  146. package/releases/2.24.2.json +0 -31
  147. package/releases/2.24.3.json +0 -33
  148. package/releases/2.25.0.json +0 -31
  149. package/releases/2.25.1.json +0 -33
  150. package/releases/2.25.2.json +0 -32
  151. package/releases/2.25.3.json +0 -32
  152. package/releases/2.26.0.json +0 -41
  153. package/releases/2.27.0.json +0 -38
  154. package/releases/2.28.0.json +0 -37
  155. package/releases/2.28.1.json +0 -34
  156. package/releases/2.29.0.json +0 -37
  157. package/releases/2.29.1.json +0 -34
  158. package/releases/2.29.2.json +0 -32
  159. package/releases/2.3.0.json +0 -37
  160. package/releases/2.30.0.json +0 -34
  161. package/releases/2.31.0.json +0 -39
  162. package/releases/2.31.1.json +0 -38
  163. package/releases/2.31.2.json +0 -34
  164. package/releases/2.31.3.json +0 -32
  165. package/releases/2.31.4.json +0 -33
  166. package/releases/2.31.6.json +0 -29
  167. package/releases/2.31.7.json +0 -29
  168. package/releases/2.31.8.json +0 -33
  169. package/releases/2.31.9.json +0 -33
  170. package/releases/2.32.0.json +0 -38
  171. package/releases/2.33.0.json +0 -33
  172. package/releases/2.34.0.json +0 -38
  173. package/releases/2.34.1.json +0 -34
  174. package/releases/2.34.2.json +0 -36
  175. package/releases/2.34.3.json +0 -35
  176. package/releases/2.35.0.json +0 -42
  177. package/releases/2.35.1.json +0 -43
  178. package/releases/2.35.2.json +0 -45
  179. package/releases/2.35.3.json +0 -46
  180. package/releases/2.36.0.json +0 -38
  181. package/releases/2.36.1.json +0 -33
  182. package/releases/2.37.0.json +0 -39
  183. package/releases/2.37.1.json +0 -33
  184. package/releases/2.37.2.json +0 -31
  185. package/releases/2.38.0.json +0 -40
  186. package/releases/2.39.0.json +0 -37
  187. package/releases/2.39.1.json +0 -32
  188. package/releases/2.4.0.json +0 -37
  189. package/releases/2.4.1.json +0 -35
  190. package/releases/2.40.0.json +0 -38
  191. package/releases/2.40.1.json +0 -30
  192. package/releases/2.41.0.json +0 -39
  193. package/releases/2.41.1.json +0 -33
  194. package/releases/2.41.2.json +0 -34
  195. package/releases/2.42.0.json +0 -36
  196. package/releases/2.43.0.json +0 -38
  197. package/releases/2.44.0.json +0 -36
  198. package/releases/2.44.1.json +0 -33
  199. package/releases/2.45.0.json +0 -35
  200. package/releases/2.46.0.json +0 -35
  201. package/releases/2.46.1.json +0 -30
  202. package/releases/2.46.2.json +0 -29
  203. package/releases/2.46.3.json +0 -30
  204. package/releases/2.47.0.json +0 -34
  205. package/releases/2.47.1.json +0 -31
  206. package/releases/2.47.2.json +0 -28
  207. package/releases/2.47.3.json +0 -29
  208. package/releases/2.47.4.json +0 -29
  209. package/releases/2.47.5.json +0 -29
  210. package/releases/2.48.0.json +0 -33
  211. package/releases/2.48.1.json +0 -30
  212. package/releases/2.48.2.json +0 -29
  213. package/releases/2.48.3.json +0 -32
  214. package/releases/2.48.4.json +0 -31
  215. package/releases/2.49.0.json +0 -35
  216. package/releases/2.49.1.json +0 -32
  217. package/releases/2.49.10.json +0 -34
  218. package/releases/2.49.11.json +0 -30
  219. package/releases/2.49.12.json +0 -30
  220. package/releases/2.49.13.json +0 -29
  221. package/releases/2.49.14.json +0 -30
  222. package/releases/2.49.2.json +0 -31
  223. package/releases/2.49.3.json +0 -31
  224. package/releases/2.49.4.json +0 -30
  225. package/releases/2.49.5.json +0 -31
  226. package/releases/2.49.6.json +0 -30
  227. package/releases/2.49.8.json +0 -33
  228. package/releases/2.49.9.json +0 -35
  229. package/releases/2.5.0.json +0 -37
  230. package/releases/2.50.0.json +0 -32
  231. package/releases/2.51.0.json +0 -32
  232. package/releases/2.52.0.json +0 -34
  233. package/releases/2.53.0.json +0 -34
  234. package/releases/2.54.0.json +0 -35
  235. package/releases/2.54.1.json +0 -29
  236. package/releases/2.54.4.json +0 -30
  237. package/releases/2.54.6.json +0 -30
  238. package/releases/2.55.0.json +0 -34
  239. package/releases/2.55.2.json +0 -31
  240. package/releases/2.55.3.json +0 -32
  241. package/releases/2.55.4.json +0 -30
  242. package/releases/2.55.5.json +0 -30
  243. package/releases/2.56.0.json +0 -32
  244. package/releases/2.57.0.json +0 -35
  245. package/releases/2.58.0.json +0 -37
  246. package/releases/2.58.1.json +0 -31
  247. package/releases/2.59.2.json +0 -33
  248. package/releases/2.59.4.json +0 -38
  249. package/releases/2.59.5.json +0 -40
  250. package/releases/2.59.6.json +0 -30
  251. package/releases/2.59.7.json +0 -32
  252. package/releases/2.6.0.json +0 -37
  253. package/releases/2.7.0.json +0 -37
  254. package/releases/2.7.1.json +0 -31
  255. package/releases/2.8.0.json +0 -32
  256. package/releases/2.8.1.json +0 -30
  257. package/releases/2.9.0.json +0 -33
  258. package/releases/2.9.1.json +0 -31
  259. package/releases/2.9.2.json +0 -33
  260. package/releases/2.9.3.json +0 -31
  261. package/releases/2.9.4.json +0 -37
@@ -1,40 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.15.0",
4
- "status": "reviewed",
5
- "title": "OpenXiangda 2.15.0:CRUD 复用 Data API 引导与 Nest 路由门禁",
6
- "summary": "为普通 CRUD 补齐浏览器端 Data API 正面路径文档与 Nest 启用决策表,并在 check/dev 拒绝未绑定已声明 operation 的应用 controller 路由,使数据增删改查默认回到平台统一接口。",
7
- "newFeatures": [
8
- "开发资料新增「自定义页面消费平台数据」:createNativeResourceClient 的列表/详情/写入/删除/上传用法、expectedRevision 乐观锁、transactNativeData 幂等事务与 batchAggregateNativeResources 服务端聚合。",
9
- "需求与开发流程新增「判定是否真的需要 Nest 后端」决策表,工作区 AGENTS 模板与按需后端资料同步指向;只有真实外部副作用或无法声明的跨资源不变量才启用 Nest。",
10
- "devkit check/dev 新增应用 controller operation 门禁:未以 `@OpenXiangdaOperation(appOperations.具名操作)` 绑定已声明 operation 的路由返回 `OPENXIANGDA_NEST_CONTROLLER_OPERATION_REQUIRED`,手写契约字面量返回 `OPENXIANGDA_NEST_OPERATION_CONTRACT_MUST_BE_DECLARED`。"
11
- ],
12
- "fixes": [
13
- "修复交付流程简化后 CLI 黑盒仍期望已删除的 DELIVERY_GIT_COMMIT_REQUIRED 的问题;黑盒改为断言 AppSpec 章节门禁,verify:affected 恢复可用。"
14
- ],
15
- "affectedUsers": [
16
- "所有 OpenXiangda 2.0 应用开发者和 AI 辅助开发会话;新指引让列表、表单、详情、删除优先复用平台 Data API 与事务守卫。",
17
- "维护含自写 Nest controller 的既有应用:升级后 check 会要求绑定已声明 operation 或移除该路由。"
18
- ],
19
- "upgradeSteps": [
20
- "将应用精确依赖升级到 openxiangda 2.15.0,刷新项目 Skill 与工作区指引后运行 check。",
21
- "对报 `OPENXIANGDA_NEST_CONTROLLER_OPERATION_REQUIRED` 的路由:普通 CRUD 改用 createNativeResourceClient 或标准 CRUD 页面;真实业务动作先在 openxiangda.config.ts 声明 operation(capability kind: 'backend'),再绑定 `@OpenXiangdaOperation(appOperations.具名操作)`。",
22
- "按 development#backend-decision 决策表复查既有后端使用面,完成 check、test、build 后按常规测试发布流程验证。"
23
- ],
24
- "knownLimitations": [
25
- "门禁是静态判定:已声明 operation 但方法体仍只转发普通 CRUD 的 controller 不会被拒绝;该层由设计评审与后续 AppSpec 能力复用清单兜底。",
26
- "类级别 @OpenXiangdaOperation 绑定不被接受,需要逐路由方法绑定同一生成契约。",
27
- "文档与门禁不替代目标环境的真实角色、浏览器和性能验收。"
28
- ],
29
- "compatibility": {
30
- "node": ">=24",
31
- "workspaceGenerations": [
32
- "v2"
33
- ],
34
- "platform": "不要求平台服务端变更;已有应用升级后 check 行为变化见升级步骤。",
35
- "v1": "不改变 V1 运行时或应用。"
36
- },
37
- "issues": [],
38
- "sha256": "45fe1d3ad3b0a04d8ec4b3f657a201dee14823576fe8b48a369a92f7d0c9e029",
39
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.15.0"
40
- }
@@ -1,41 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.16.0",
4
- "status": "reviewed",
5
- "title": "OpenXiangda 2.16.0:相机图片直传与声明一次写对",
6
- "summary": "浏览器托管上传按 maxPixels 契约预检并自动降采样超限图片,声明校验放宽可推导默认值、报错附带可复制片段,新增声明速查主题与事务快照/幂等冲突助手。",
7
- "newFeatures": [
8
- "资源与匿名托管上传通道读取上传计划发布的 maxPixels,超限图片本地降采样后重新发起上传;旧平台无契约时回退 40MP 保护阈值。",
9
- "openxiangda/nest 新增 optionSnapshot、userSnapshot、departmentSnapshot、resourceSnapshot 快照值助手与 isIdempotencyConflict 冲突判定,事务写快照字段不再手工拼形状。",
10
- "新增 declarations-cheatsheet 中文主题(入口 Skill 已路由):按错误码到规则到正确片段组织全部隐式声明规则,并附两模型起步骨架。"
11
- ],
12
- "fixes": [
13
- "number.integer 允许可选 precision 位数并拒绝 scale 小数位;number.decimal 精度报错附带合法示例,resource-ref 缺 source、平台保留能力与 AI 写操作副作用报错的补救文本直接携带正确片段。",
14
- "audit.read 支持 true 声明糖自动绑定资源读能力;CRUD 视图 list/form/detail 省略 model 时继承视图模型。",
15
- "业务验收报告性能条目的报错逐字段定位,指出缺失字段名与最少实义字符要求。"
16
- ],
17
- "affectedUsers": [
18
- "所有在表单中上传手机照片或长截图的 OpenXiangda 2.0 应用用户与开发者。",
19
- "首次编写 openxiangda.config.ts 声明、在 Nest 事务中写 option/user/resource-ref 字段的开发者与 AI 工作流。"
20
- ],
21
- "upgradeSteps": [
22
- "应用精确依赖升级到 openxiangda 2.16.0 并刷新项目 Skill;普通 CRUD 与既有声明无需修改。",
23
- "新的图片字段上传自动获得像素预检;配合已修复 maxPixels 契约的平台(100MP 上限)效果最佳,旧平台自动回退压缩保护。",
24
- "后端事务代码可选用新的快照值助手与 isIdempotencyConflict 复核模式,参见 backend 文档快照写入与幂等冲突两节。"
25
- ],
26
- "knownLimitations": [
27
- "前端压缩依赖浏览器 createImageBitmap;极旧的浏览器跳过预检,由服务端明确错误兜底。",
28
- "操作通道(operation-managed)上传不自动改写业务文件内容,超限时返回带尺寸的 PIXEL_LIMIT_EXCEEDED,由调用方自行压缩。"
29
- ],
30
- "compatibility": {
31
- "node": ">=24",
32
- "workspaceGenerations": [
33
- "v2"
34
- ],
35
- "platform": "maxPixels 契约与 100MP 处理上限需要配套平台版本;旧平台通过 40MP 回退阈值继续工作。V1 引擎保持独立。",
36
- "v1": "不改变 V1 运行时或应用。"
37
- },
38
- "issues": [],
39
- "sha256": "55687eb0915b5a1d2743f4b3c5aa54d7a3dbfad91b467cc9f80be10995aa83f5",
40
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.16.0"
41
- }
@@ -1,39 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.17.0",
4
- "status": "reviewed",
5
- "title": "OpenXiangda 2.17.0:一行声明生成用户端标准面",
6
- "summary": "CRUD 视图声明 user: true 即可为普通用户生成“我的记录 + 提交”标准页面(桌面与移动双端),自动接线能力与登录落地,简单 CRUD 应用开箱即有完整用户端闭环。",
7
- "newFeatures": [
8
- "resource-records / resource-submit 两种用户标准路由:`/my/<资源代码>` 列表与 `/my/<资源代码>/submit` 提交(移动端 `/m/` 前缀),能力分别绑定资源 read / create。",
9
- "“我的记录”标准组件:默认仅展示当前登录用户创建的记录(created_by 过滤)、分页、行详情抽屉与提交入口;提交页复用标准生成表单。",
10
- "首个启用资源自动成为登录落地页与根路径;多资源用 user: { home: true } 显式指定;声明式 /home 占位仍可覆盖。"
11
- ],
12
- "fixes": [
13
- "GenericResourceQuery 新增显式 createdBy 过滤映射 created_by 系统字段,不放宽其他系统字段查询。"
14
- ],
15
- "affectedUsers": [
16
- "为普通登录用户提供提交与查询的简单 CRUD 应用开发者。",
17
- "使用 openxiangda 2.16 及以下的应用升级后行为零变化(未声明 user 面不受影响)。"
18
- ],
19
- "upgradeSteps": [
20
- "应用精确依赖升级到 openxiangda 2.17.0 并刷新项目 Skill。",
21
- "在需要用户端的 CRUD 视图上追加 user: true;如需自定义用户端体验,继续用自定义页面覆盖即可。",
22
- "行级强隔离仍按数据与权限文档声明 dataPolicies;“仅本人”列表是展示过滤。"
23
- ],
24
- "knownLimitations": [
25
- "“我的记录”的本人过滤是查询层展示过滤,非服务端授权边界。",
26
- "详情抽屉按声明字段只读渲染,暂不支持在用户端编辑已有记录(可继续用自定义页面)。"
27
- ],
28
- "compatibility": {
29
- "node": ">=24",
30
- "workspaceGenerations": [
31
- "v2"
32
- ],
33
- "platform": "无需平台配合变更;路由与能力契约向后兼容。V1 引擎保持独立。",
34
- "v1": "不改变 V1 运行时或应用。"
35
- },
36
- "issues": [],
37
- "sha256": "5656c1f523a25d37770bed992d352dc372f3e08f5ce8ca25394443d448d25870",
38
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.17.0"
39
- }
@@ -1,34 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.17.1",
4
- "status": "reviewed",
5
- "title": "OpenXiangda 2.17.1:用户标准面共享契约闭合修复",
6
- "summary": "共享编译器接受并校验生成式用户标准面的路由契约,2.17.0 声明 user 面的应用可完整通过本地校验与部署;生成码分隔符统一为点号。",
7
- "newFeatures": [
8
- "生成码分隔符统一为点号(user.资源码.records / user.资源码.submit),与设备路由码一致。"
9
- ],
10
- "fixes": [
11
- "修复 2.17.0 中 user 声明触发 NATIVE_CODE_INVALID / NATIVE_CONTRACT_CLOSURE_MISMATCH:共享校验器按配置事实(资源存在、能力等于 read/create、码与路径形状)校验并并入用户标准路由,配置 bundle 不变,旧平台无需升级。",
12
- "生成码统一为 user.资源码.records / user.资源码.submit,符合稳定码模式。"
13
- ],
14
- "affectedUsers": [
15
- "使用 openxiangda 2.17.0 并声明 user 用户面的应用开发者。"
16
- ],
17
- "upgradeSteps": [
18
- "应用精确依赖升级到 openxiangda 2.17.1 后重新运行 check 与部署。"
19
- ],
20
- "knownLimitations": [
21
- "“我的记录”的本人过滤仍是查询层展示过滤,非服务端授权边界。"
22
- ],
23
- "compatibility": {
24
- "node": ">=24",
25
- "workspaceGenerations": [
26
- "v2"
27
- ],
28
- "platform": "无平台配合要求;配置与契约 bundle 对既有平台保持可部署。",
29
- "v1": "不改变 V1 运行时或应用。"
30
- },
31
- "issues": [],
32
- "sha256": "365186221004ce60f596db55dca2b53bf9d2d89695956b80daa7b3b4cd028af2",
33
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.17.1"
34
- }
@@ -1,37 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.18.0",
4
- "status": "reviewed",
5
- "title": "OpenXiangda 2.18.0:用户标准面闭合修复、列表可排序声明与发布提效",
6
- "summary": "共享编译器完成用户标准面契约闭合校验;模块列表视图新增 sortableFields 排序声明(GAP-MODULE-001);发布验证按浏览器字节分级并收窄浏览器证据指纹,纯工具链补丁不再触发浏览器矩阵。",
7
- "newFeatures": [
8
- "列表视图新增 sortableFields:与 filterFields/searchableFields 同构声明可排序列;defaultSort.field 保持隐式可排序,重复容忍;引用未声明字段报编译错误;低层 data.resources 语义不变。",
9
- "发布提效:验证计划按“浏览器应用实际加载的字节”分级(根包前端入口/contracts 浏览器入口),共享校验器等 Node 侧改动不再触发浏览器矩阵;浏览器阶段缓存指纹只包含浏览器捆绑包,devkit-core 等候选的字节变化不再使浏览器证据失效(候选版本仍由规范化锁覆盖)。"
10
- ],
11
- "fixes": [
12
- "修复 2.17.0 中 user 声明触发 NATIVE_CODE_INVALID / NATIVE_CONTRACT_CLOSURE_MISMATCH:共享校验器按配置事实校验并并入用户标准路由,配置 bundle 不变,旧平台无需升级。",
13
- "生成码统一为 user.资源码.records / user.资源码.submit,符合稳定码模式。"
14
- ],
15
- "affectedUsers": [
16
- "使用 openxiangda 2.17.0 并声明 user 用户面的应用开发者。",
17
- "从 data.resources 迁移到模块化声明、需要列表列头排序能力的应用(如数智工会 szgh-v2)。"
18
- ],
19
- "upgradeSteps": [
20
- "应用精确依赖升级到 openxiangda 2.18.0 后重新运行 check 与部署。",
21
- "模块化迁移的列表排序用 sortableFields 声明,与既有低层声明逐字段对齐。"
22
- ],
23
- "knownLimitations": [
24
- "“我的记录”的本人过滤仍是查询层展示过滤,非服务端授权边界。"
25
- ],
26
- "compatibility": {
27
- "node": ">=24",
28
- "workspaceGenerations": [
29
- "v2"
30
- ],
31
- "platform": "无平台配合要求;配置与契约 bundle 对既有平台保持可部署。",
32
- "v1": "不改变 V1 运行时或应用。"
33
- },
34
- "issues": [],
35
- "sha256": "c5744c1cdd46e8922615d1b3bff521e072108906882a25c4d0f75f93f869c4af",
36
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.18.0"
37
- }
@@ -1,31 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.18.1",
4
- "status": "reviewed",
5
- "title": "OpenXiangda 2.18.1:用户标准面落地页渲染修复",
6
- "summary": "修复 2.18.0 中声明 user 用户面的应用整页渲染为空白的问题:运行时清单校验器把“根入口别名资源 records 路由”的编译器形状误判为路径冲突。本版让运行时接受该形状并新增浏览器验收覆盖。",
7
- "newFeatures": [],
8
- "fixes": [
9
- "修复 OPENXIANGDA_ROUTE_MANIFEST_INVALID 导致用户标准面应用空白:rootEntry 直接别名资源 records 路由(登录落地即“我的记录”)时,校验器现在允许根入口别名恰好一条标准路由对;认证路径与其它任何落地路径冲突仍然拒绝。",
10
- "修复别名落地页的双端切换失效:根入口别名路由对时,设备协商由该路由对承担投影,不再与静态根对产生等特异性双匹配。",
11
- "浏览器验收新增 user-surface.e2e:覆盖别名清单挂载、本人过滤列表、提交表单与双端切换;为验收 mock 平台补齐单条记录读取端点(native/data/{code}/records/{id})。"
12
- ],
13
- "affectedUsers": [
14
- "使用 openxiangda 2.18.0 并在 CRUD 视图声明 user 用户面的应用开发者(应用此前表现为登录后整页空白)。"
15
- ],
16
- "upgradeSteps": [
17
- "应用精确依赖升级到 openxiangda 2.18.1 后重新运行 check 与部署;无需平台配合升级。"
18
- ],
19
- "knownLimitations": [
20
- "“我的记录”的本人过滤仍是查询层展示过滤,非服务端授权边界(与 2.18.0 相同)。"
21
- ],
22
- "issues": [],
23
- "compatibility": {
24
- "node": ">=24",
25
- "workspaceGenerations": "v2",
26
- "platform": "无平台配合要求;契约与配置 bundle 字节不变。",
27
- "v1": "不改变 V1 运行时或应用。"
28
- },
29
- "sha256": "80e7d6fe82cf1b0475e15509aa9fda386cc03764fc69a352cef6bc9ea461bb9f",
30
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.18.1"
31
- }
@@ -1,29 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.18.10",
4
- "status": "reviewed",
5
- "title": "OpenXiangda 2.18.10:随包技能/文档同步自建中心指南",
6
- "summary": "openxiangda-skill-kit 随包技能与文档与源文档再同步:携带「自建待办与消息中心 UI」指南与 2.18.9 标准中心视觉重构说明;无代码行为变化。",
7
- "newFeatures": [],
8
- "fixes": [
9
- "openxiangda-skill-kit 打包内容与源文档再同步:修复随包技能/文档滞后于「自建待办与消息中心 UI」指南与 2.18.9 标准中心视觉重构说明的问题。"
10
- ],
11
- "affectedUsers": [
12
- "通过 skill-kit 安装随包技能与文档的应用开发者与 AI 会话。"
13
- ],
14
- "upgradeSteps": [
15
- "随 2.18.10 列车一起发布;应用无需单独升级,引用 openxiangda 2.18.9 及配套版本即可。"
16
- ],
17
- "knownLimitations": [
18
- "本列车无独立代码变更;功能变更记录见 2.18.9 发布说明,两列车一并发布。"
19
- ],
20
- "issues": [],
21
- "compatibility": {
22
- "node": ">=24",
23
- "workspaceGenerations": "v2",
24
- "platform": "无平台配合要求。",
25
- "v1": "V1 工作区不受影响。"
26
- },
27
- "sha256": "62fba20895d127dc14f81ddac0445eac22957a0e8dadca1556957bb65834869c",
28
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.18.10"
29
- }
@@ -1,30 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.18.2",
4
- "status": "reviewed",
5
- "title": "OpenXiangda 2.18.2:模块模型级详情路由声明(GAP-MODULE-002)",
6
- "summary": "模块化声明支持资源级详情路由绑定(detailRouteCode),模型声明未知属性 fail-closed;devkit-core 2.15.0 携带投影实现,根包为依赖传播版本。",
7
- "newFeatures": [
8
- "AppDataModelDeclaration 新增 detailRouteCode(desktop/mobile route code):模块化声明可表达 Workflow 详情接管消费的资源级详情路由绑定,materializeApplicationModules 完整透传到输出资源;低层 data.resources[].detailRouteCode 语义与既有校验(user surface、单动态参数、read capability 对齐)不变。",
9
- "模型声明上的未知属性不再被静默丢弃:投影输出 APP_MODEL_KEY_UNKNOWN 错误 diagnostic(指向 `modules[i].models[j].<key>`)并使编译失败。"
10
- ],
11
- "fixes": [],
12
- "affectedUsers": [
13
- "从 data.resources 迁移到模块化声明、需要资源详情路由由 Workflow 详情接管的应用(如数智工会 szgh-v2)。"
14
- ],
15
- "upgradeSteps": [
16
- "应用精确依赖升级到 openxiangda 2.18.2(openxiangda-devkit-core 2.15.0)后重新运行 check 与部署。"
17
- ],
18
- "knownLimitations": [
19
- "detailRouteCode 校验沿用既有资源级规则;本次不改变共享纯校验器字节,configuration-compatibility/v2 的 validatorDigest 不变。"
20
- ],
21
- "issues": [],
22
- "compatibility": {
23
- "node": ">=24",
24
- "workspaceGenerations": "v2",
25
- "platform": "无平台配合要求;contracts 共享校验器字节不变。",
26
- "v1": "不改变 V1 运行时或应用。"
27
- },
28
- "sha256": "029cced498e869e301d49a73a900beffb80a3b5c3183c34c8fb341f81853539a",
29
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.18.2"
30
- }
@@ -1,30 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.18.3",
4
- "status": "reviewed",
5
- "title": "OpenXiangda 2.18.3:xlsx 依赖镜像化,去除 SheetJS CDN 单点",
6
- "summary": "openxiangda 包的 xlsx 依赖从 cdn.sheetjs.com 直链 tarball 迁移到本仓库 GitHub Release 的 vendor-mirror 镜像资产;字节与上游一致(sha256 相同)并继续由锁文件 integrity 钉住。",
7
- "newFeatures": [],
8
- "fixes": [
9
- "消除 SheetJS 官方 CDN 单点:该直链曾在发布验证中造成 ECONNRESET 整轮报废;GitHub Release 资产端点对 CI runner 与一般网络更稳定。",
10
- "依赖字节不变:镜像 tarball 与 cdn.sheetjs.com 原件 sha256 一致(8dc73fc3b00203e72d176e85b50938627c7b086e607c682e8d3c22c02bb99fe8),锁文件 integrity 保持内容可验证。"
11
- ],
12
- "affectedUsers": [
13
- "所有安装 openxiangda 2.18.x 的应用(安装链路不再依赖 cdn.sheetjs.com 的可用性)。"
14
- ],
15
- "upgradeSteps": [
16
- "应用精确依赖升级到 openxiangda 2.18.3 后重新安装并运行 check。"
17
- ],
18
- "knownLimitations": [
19
- "镜像资产托管在本仓库 GitHub Release(vendor-mirror tag),仓库可用性成为新的安装依赖面。"
20
- ],
21
- "issues": [],
22
- "compatibility": {
23
- "node": ">=24",
24
- "workspaceGenerations": "v2",
25
- "platform": "无平台配合要求。",
26
- "v1": "不改变 V1 运行时或应用。"
27
- },
28
- "sha256": "331ccad039c2fcfcca561364592d869f0cdeb749874b8ab77396b548b1984baf",
29
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.18.3"
30
- }
@@ -1,37 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.18.9",
4
- "status": "reviewed",
5
- "title": "OpenXiangda 2.18.9:标准待办/消息中心视觉重构与自建中心合同收尾",
6
- "summary": "修复运行时缺失基础字体导致的裸元素衬线渲染;待办中心与消息中心按统一页型重构(PC + 移动端);nest 客户端补齐 work-center view 参数并新增应用自建待办/消息 UI 指南。",
7
- "newFeatures": [
8
- "OpenXiangdaPlatformClient.workflowWorkCenter 新增可选 view 参数(created/pending/handled/cc),与浏览器端合同对齐;未传时保持 status 兼容行为。",
9
- "docs/frontend.md 新增「自建待办与消息中心 UI」:openxiangda/core 客户端用法、回执语义与标准路由不可接管等边界。"
10
- ],
11
- "fixes": [
12
- "运行时在 .oxa-ui-root 补基础字体/字号/行高兜底(读取 --ant-font-family/font-size/line-height),裸元素不再继承浏览器衬线默认值,应用品牌字体自动流入标准页。",
13
- "待办中心改为 layout 底 + 内容卡层次:Typography 页头、Tabs 计数徽标、middle 密度表格、移动端吸顶页头与卡片精修。",
14
- "消息中心控制区单行对齐(搜索/查询/仅看未读右对齐),摘要卡图标与数字层级、未读圆点显式主色、移动卡片未读左缘条。",
15
- "verify-design-workbench 改用探测的空闲临时端口,修复本机存在其他 Vite dev server(占用 5173)时设计门必失败的问题。"
16
- ],
17
- "affectedUsers": [
18
- "使用标准待办中心/消息中心的应用及其最终用户(视觉与可读性)。",
19
- "需要服务端取 created/cc 待办视图或自建中心 UI 的应用开发者。"
20
- ],
21
- "upgradeSteps": [
22
- "应用精确依赖升级到 openxiangda 2.18.9(及配套 openxiangda-cli/openxiangda-nest)后重新 build、check 与部署。",
23
- "希望标准页跟随品牌字体/字号的应用在 ui.theme 中配置 token 即可,无需其他迁移。"
24
- ],
25
- "knownLimitations": [
26
- "Workflow 待办中心暂无渲染器替换钩子;需要完全不同呈现时按文档使用自有路由 + openxiangda/core 客户端自建。"
27
- ],
28
- "issues": [],
29
- "compatibility": {
30
- "node": ">=24",
31
- "workspaceGenerations": "v2",
32
- "platform": "无平台配合要求。",
33
- "v1": "V1 工作区不读取该运行时,不受影响。"
34
- },
35
- "sha256": "7cc67dfe0aa1b7ccdd28a85fea5e149715edc03321ffc3771cd62a4356cb431a",
36
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.18.9"
37
- }
@@ -1,38 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.19.0",
4
- "status": "reviewed",
5
- "title": "OpenXiangda 2.19.0:平台探针实测修复——编译期拦截三大易错声明与错误透明化",
6
- "summary": "来自平台能力探针(platform-capability-probe)全流程实测的修复批:工作流 launch 缺失、快照字段标量投影、数据策略基线角色 unrestricted 三类错误从\"部署后白屏/无限重试/策略静默失效\"提前到编译期拦截;匿名公开策略校验拆分为带指针的独立诊断;发起页防白屏并透出流程命令 lastError;CLI create 支持会话向上继承;同步平台审计列排序与部署 Workflow Head 预检。",
7
- "newFeatures": [
8
- "编译器新增三项编译期拦截:workflow definition 必须显式声明 launch;unrestrictedRoleCodes 含基线角色(authenticatedUserRoleCode)直接报错(角色并集必命中,策略会静默失效);option/user/department/resource-ref/cascade 快照字段投影到标量 inputSchema 属性直接报错并给出对象形状与 `<fact>.value` 比较片段。",
9
- "匿名公开策略校验拆分为带独立错误码与指针的分组诊断(route 绑定/operations/fields/requiredFields/ownRecordFields 子集/draft 规则/public 投影等),不再聚合为一条无指针报错。",
10
- "工作流发起页:definition.launch 渲染期访问改为可选链,缺失时显示可诊断的 404 而不是白屏;提交后轮询透出 process command 的 lastError(不再无提示转圈)。",
11
- "平台审计列排序(contracts DATA_SYSTEM_SORT_FIELD_CODES):列表 defaultSort/sortableFields 支持 created_at/updated_at/created_by/updated_by/id/revision,标准 Admin 列表内置创建/更新时间列可点击排序。",
12
- "deploy 构建前只读比对 workflows.activations 与环境 Head:版本回退拒绝部署(DEPLOY_WORKFLOW_ACTIVATION_VERSION_REGRESSION),源码缺失已激活流程告警,防止盲部署停用流程。"
13
- ],
14
- "fixes": [
15
- "openxiangda-cli create 在目标目录无登录态时按工作区发现规则向上继承会话(.git 边界停住),不再要求在不存在的目标目录里先登录。",
16
- "openxiangda-skill-kit 打包技能/文档同步:声明速查表补数据策略白名单语义与基线角色陷阱、匿名公开字段子集约束、workflow launch 必填、快照对象事实、cascade 数组路径形状;workflow-events 补发起页与事实投影说明。"
17
- ],
18
- "affectedUsers": [
19
- "所有 OpenXiangda 2.0 应用开发者与 AI 开发会话;使用数据策略、工作流、匿名公开访问的应用需要关注新的编译期校验。"
20
- ],
21
- "upgradeSteps": [
22
- "应用把 openxiangda 精确钉扎到 2.19.0 并重跑 pnpm openxiangda check;此前能通过 check 的声明无需改动,此前靠运行时报错暴露的写法会在编译期给出带修复片段的明确报错。",
23
- "工作流 definition 若未声明 launch,会在编译期被拒绝:按报错提示补 `launch: { mode: 'standalone' }` 等声明后重新部署。"
24
- ],
25
- "knownLimitations": [
26
- "快照字段投影仅支持对象形状事实,标量投影不支持是契约决定而非缺陷;条件表达式需使用 `<fact>.value` 路径。",
27
- "平台侧配套修复(auth 落地路由兼容、不变量 NULL 语义、匿名错误透传、验收票据时效、token TTL)在平台服务端发布列车中交付,本工具链列车不含。"
28
- ],
29
- "issues": [],
30
- "compatibility": {
31
- "node": ">=24",
32
- "workspaceGenerations": "v2",
33
- "platform": "平台服务端需随下一平台列车更新到匹配的 openxiangda-contracts;未更新前 check 的目标平台预检会报校验器版本不一致(fail-closed,属预期)。",
34
- "v1": "V1 工作区不受影响。"
35
- },
36
- "sha256": "89940c302299258200c67215c2ddadbcee505642cc586eda90434541b3f81468",
37
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.19.0"
38
- }
@@ -1,48 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.2.0",
4
- "title": "OpenXiangda 内部支持协作接入",
5
- "status": "reviewed",
6
- "summary": "统一入口为 V1/V2 应用开发提供内部支持协作接入,检查官方 DWS 与技能,复用精确账号,并提供授权、打开群邀请和持续案例跟进入口。",
7
- "newFeatures": [
8
- "新增 support status、bootstrap、login、join,应用创建和技能刷新后检查支持通道接入状态。",
9
- "缺少 DWS 时安装官方稳定版 1.0.61,并安装官方完整 multi 技能;已有可用稳定版本可以复用。",
10
- "增加跨 V1/V2 支持技能,涵盖平台契约咨询、源码诊断上下文、产品架构评审和已授权案例的引用跟进。",
11
- "使用外置支持通道配置,按原始邀请链接打开钉钉,由用户完成加入。"
12
- ],
13
- "fixes": [
14
- "支持接入失败或等待用户操作时保留独立状态,不改变应用创建成功结果;进度写入 stderr,保持引擎 JSON 输出。",
15
- "使用保存的精确 DWS profile,不按显示姓名或列表顺序猜测账号,不切换平台或 DWS 全局登录身份。",
16
- "命令发现由统一分发层维护,技能校验显式接收分发命令,保持 V2 核心与两代引擎边界。"
17
- ],
18
- "affectedUsers": [
19
- "通过统一入口创建应用、初始化工作区或刷新技能的 V1/V2 开发者。",
20
- "在内部支持通道中继续已授权平台咨询和故障排查的开发 AI。"
21
- ],
22
- "compatibility": {
23
- "node": ">=24",
24
- "workspaceGenerations": [
25
- "v1",
26
- "v2"
27
- ],
28
- "v1Policy": "V1 项目保持原代际、版本锁定与登录绑定;支持接入由统一分发入口提供。",
29
- "platformPolicy": "本次工具发布不要求更新平台镜像;源码诊断仍需目标平台已启用正式源码托管并授予当前账号访问权限。",
30
- "dws": "最低稳定版 1.0.61;OAuth 与加入群需要用户在官方流程中完成。",
31
- "releaseChannels": "latest / stable-v2:V2 正式版;legacy-v1:V1 维护版;alpha:预发布。"
32
- },
33
- "upgradeSteps": [
34
- "在 Node.js 24 环境安装统一入口:npm install -g openxiangda@2.2.0。",
35
- "运行 openxiangda support bootstrap 检查安装与完整技能;离线或 CI 初始化可使用 --skip-support,之后再恢复。",
36
- "运行 openxiangda support status --json 查看实际状态;需要时执行 support login,SSH 可使用 --device。",
37
- "尚不能访问支持群时运行 support join,在钉钉完成加入后重新检查状态;已有授权案例继续引用原消息跟进。"
38
- ],
39
- "knownLimitations": [
40
- "可读取群仅证明当前账号的访问能力,不能单独证明群成员身份或组织限制;命令返回独立验证状态。",
41
- "技能不会唤醒已经结束的开发任务,后台继续需要宿主实际监听或定时任务。",
42
- "安装、授权和群访问依赖网络及组织配置;新的真实用户入群与双方协作须单独现场验收,替身测试不构成真人验收。",
43
- "本包提供接入与协作指导,常驻支持服务及知识库由各自私有服务独立部署。"
44
- ],
45
- "issues": [],
46
- "sha256": "638817e7e1d8c9cb99de6b9d41716828d241e31905c9bd0565cb94e43b9ee991",
47
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.2.0"
48
- }
@@ -1,35 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.2.1",
4
- "title": "原生数据事件接收契约修复",
5
- "status": "reviewed",
6
- "summary": "修复当前平台原生数据事件在 Nest 自动化接收端的 Schema 不匹配,保持签名验证和幂等回执边界。",
7
- "newFeatures": [
8
- "本次为事件契约修复,不新增业务能力。"
9
- ],
10
- "fixes": [
11
- "移除事件数据体已经退役的 capturePlanRevision 必填要求;捕获身份继续由平台不可变事件账本持有。",
12
- "接收当前用户角色并集 user_union 操作人的签名事件,并同步类型与开发测试夹具。"
13
- ],
14
- "affectedUsers": [
15
- "使用当前原生 Data API 并通过 Nest 消费数据事件的 OpenXiangda 2.0 应用。"
16
- ],
17
- "compatibility": {
18
- "node": ">=24",
19
- "workspaceGenerations": [
20
- "v1",
21
- "v2"
22
- ],
23
- "v1Policy": "V1 引擎与应用契约不变。",
24
- "platformPolicy": "适用于由不可变捕获计划驱动的当前 V2 原生事件;应用需重新部署接收端。"
25
- },
26
- "upgradeSteps": [
27
- "将 V2 应用的 openxiangda 精确依赖升级为 2.2.1,更新锁文件并通过标准测试部署后验证事件回执。"
28
- ],
29
- "knownLimitations": [
30
- "升级不会自动重放历史失败事件;按原事件和应用幂等标识使用平台运维操作恢复。"
31
- ],
32
- "issues": [],
33
- "sha256": "e56c78fce73cb156731028349b67a784f3aa1bae5073fb16d0b84fafd3b4011f",
34
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.2.1"
35
- }
@@ -1,34 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.2.2",
4
- "title": "源码托管能力发现契约修复",
5
- "status": "reviewed",
6
- "summary": "补齐平台已提供的可选 sourceHosting 字段,修复严格预检拒绝平台能力响应的问题。",
7
- "newFeatures": [
8
- "本次修复已有能力声明,不要求应用使用托管仓库。"
9
- ],
10
- "fixes": [
11
- "闭合 Schema 接受 Forgejo provider 和布尔 enabled,同时拒绝未知字段和无效类型。"
12
- ],
13
- "affectedUsers": [
14
- "连接已提供 sourceHosting 能力字段的平台的 V2 应用开发者。"
15
- ],
16
- "compatibility": {
17
- "node": ">=24",
18
- "workspaceGenerations": [
19
- "v1",
20
- "v2"
21
- ],
22
- "v1Policy": "V1 引擎与应用契约不变。",
23
- "platformPolicy": "兼容包含或未包含可选源码托管能力的平台。"
24
- },
25
- "upgradeSteps": [
26
- "将应用 openxiangda 精确依赖升级为 2.2.2,更新锁文件并重新执行正式部署预检。"
27
- ],
28
- "knownLimitations": [
29
- "其他未知平台字段仍按闭合契约拒绝。"
30
- ],
31
- "issues": [],
32
- "sha256": "e45a418150e90adc8658db171afe3bbfef27bb53f6521b7d3cb237decc6dca94",
33
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.2.2"
34
- }
@@ -1,36 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.20.0",
4
- "status": "reviewed",
5
- "title": "OpenXiangda 2.20.0:行级策略语义防护与匿名表单体验完善",
6
- "summary": "把平台能力探针实测踩到的行级策略语义陷阱提前到编译期:matchMode AND 配多条不同角色规则会全拒(角色并集取最宽),编译器现在直接警告;匿名策略 requiredFields 比模型必填更严格时报错(标准控件将不带必填校验);放开 created_by/updated_by 审计列作为 current_user 行规则(\"用户只看自己创建\"的基线收窄手段);移除生产环境常驻数据警示横幅。",
7
- "newFeatures": [
8
- "created_by/updated_by 审计列支持 current_user 行规则:基线角色(无业务归属字段可用时)也能做\"只看自己创建\"的行级收窄;其余规则主体不支持审计列,编译期明确报错。",
9
- "编译器新增 AND 多角色规则告警:matchMode AND 且多条规则面向不同角色时警告(规则对非目标角色恒为 false,AND 聚合会拒绝所有身份),提示改用 OR。",
10
- "匿名公开策略 requiredFields 比模型必填更严格时编译报错:标准表单控件不会为它们生成必填校验,空值提交将被服务端拒绝——报错给出两条修复路径。",
11
- "移除生产环境\"正在使用正式数据\"常驻警示横幅,生产页面回归正常视觉。"
12
- ],
13
- "fixes": [
14
- "声明速查表补行级策略三坑:角色并集取最宽原则、AND/OR 多角色规则选择、created_by 审计列规则写法。"
15
- ],
16
- "affectedUsers": [
17
- "所有使用数据策略、行级权限、匿名公开访问的 OpenXiangda 2.0 应用开发者与 AI 开发会话。"
18
- ],
19
- "upgradeSteps": [
20
- "应用把 openxiangda 精确钉扎到 2.20.0 并重跑 pnpm openxiangda check;出现新告警/报错时按提示调整策略声明。",
21
- "使用 created_by 行规则需平台服务端配套版本;升级前请确认平台列车已包含该修复。"
22
- ],
23
- "knownLimitations": [
24
- "created_by 行规则的运行时 WITH CHECK 正向匹配在当前平台版本仍会拒绝(平台开放缺陷),编译通过不代表运行时生效,待平台列车修复后放开使用。",
25
- "行级策略按角色并集取最宽是平台语义:基线角色与限制性规则并存时限制会失效,无法通过声明规避。"
26
- ],
27
- "issues": [],
28
- "compatibility": {
29
- "node": ">=24",
30
- "workspaceGenerations": "v2",
31
- "platform": "无强制平台配合要求;created_by 行规则的运行时生效需平台列车跟进。",
32
- "v1": "V1 工作区不受影响。"
33
- },
34
- "sha256": "7d381f9f33bcb0c2f14197b94a0bfe542c66dc1c859b83ae97117f9eddceaa86",
35
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.20.0"
36
- }
@@ -1,35 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.21.0",
4
- "status": "reviewed",
5
- "title": "OpenXiangda 2.21.0:Agent 原生视觉开发流程",
6
- "summary": "移除效果和维护成本不匹配的 OpenDesign 运行时、命令与桥接层,把界面设计收敛为同一 AI Agent 内完成的闭环:按需使用 Image 2.5 等图片能力生成少量视觉参考,直接实现真实 React 页面,并以浏览器交互证据完成修正和验收。",
7
- "newFeatures": [
8
- "提供 Agent 原生设计工作流:视觉方向、React 实现、浏览器修正和 AppSpec 记录在同一个 OpenXiangda 工作区内完成。",
9
- "支持把 Image 2.5 或当前可用的图片生成能力作为可选视觉参考;图片不可用或质量不足时可直接基于设计约束、成熟组件和浏览器迭代继续开发。"
10
- ],
11
- "fixes": [
12
- "移除 openxiangda design 命令、OpenDesign CLI/桌面/MCP 桥接、环境变量、内置方法资源和上游同步流程,避免 AI 自动开发依赖额外设计项目。",
13
- "统一文档、Skill 和工作区模板中的界面开发指导,同时保留 AppSpec 设计资产、平台 Shell、Field Kit、权限、Data API、主题边界和真实角色验收契约。"
14
- ],
15
- "affectedUsers": [
16
- "使用 OpenXiangda 2.0 创建或改版管理后台、PC 用户页和移动端页面的 AI 开发会话与维护者。"
17
- ],
18
- "upgradeSteps": [
19
- "将应用精确依赖升级到 openxiangda 2.21.0,按锁文件安装,并执行 pnpm openxiangda skill install --force 刷新本地 Skill。",
20
- "删除自动化脚本中对 openxiangda design 的调用;改为按 Agent 原生设计工作流直接实现真实页面并运行项目检查与浏览器验收。"
21
- ],
22
- "knownLimitations": [
23
- "Image 2.5 等图片能力只生成参考,不定义交互、权限、业务数据或验收结论;最终结果仍以真实 React 页面和浏览器证据为准。",
24
- "本版本不会自动迁移或删除应用工作区中既有的 AppSpec 设计资产。"
25
- ],
26
- "issues": [],
27
- "compatibility": {
28
- "node": ">=24",
29
- "workspaceGenerations": "v2",
30
- "platform": "无需服务端、数据库或平台容器升级。",
31
- "v1": "V1 工作区与维护引擎不受影响。"
32
- },
33
- "sha256": "18c7d0d0c508dec38ab1685d649103dcd820c75203d4a67eddd9c17aabc7651d",
34
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.21.0"
35
- }