openxiangda 2.18.0 → 2.18.2

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 (47) hide show
  1. package/dist/browser/route-manifest.d.ts.map +1 -1
  2. package/dist/browser/route-manifest.js +36 -10
  3. package/dist/browser/route-manifest.js.map +1 -1
  4. package/documentation/application-foundation.md +17 -0
  5. package/documentation/declarations-cheatsheet.md +1 -0
  6. package/documentation/getting-started.md +7 -7
  7. package/documentation/manifest.json +4 -4
  8. package/package.json +19 -26
  9. package/releases/2.18.2.json +30 -0
  10. package/skills/manifest.json +1 -1
  11. package/skills/openxiangda-v2/SKILL.md +4 -4
  12. package/skills/openxiangda-v2/references/application-foundation.md +17 -0
  13. package/skills/openxiangda-v2/references/declarations-cheatsheet.md +1 -0
  14. package/skills/openxiangda-v2/references/getting-started.md +7 -7
  15. package/releases/2.0.0.json +0 -50
  16. package/releases/2.0.1.json +0 -39
  17. package/releases/2.1.0.json +0 -44
  18. package/releases/2.1.1.json +0 -48
  19. package/releases/2.10.0.json +0 -42
  20. package/releases/2.11.0.json +0 -41
  21. package/releases/2.12.0.json +0 -38
  22. package/releases/2.13.0.json +0 -41
  23. package/releases/2.13.1.json +0 -33
  24. package/releases/2.13.2.json +0 -31
  25. package/releases/2.14.0.json +0 -41
  26. package/releases/2.15.0.json +0 -40
  27. package/releases/2.16.0.json +0 -41
  28. package/releases/2.17.0.json +0 -39
  29. package/releases/2.17.1.json +0 -34
  30. package/releases/2.18.0.json +0 -37
  31. package/releases/2.2.0.json +0 -48
  32. package/releases/2.2.1.json +0 -35
  33. package/releases/2.2.2.json +0 -34
  34. package/releases/2.3.0.json +0 -37
  35. package/releases/2.4.0.json +0 -37
  36. package/releases/2.4.1.json +0 -35
  37. package/releases/2.5.0.json +0 -37
  38. package/releases/2.6.0.json +0 -37
  39. package/releases/2.7.0.json +0 -37
  40. package/releases/2.7.1.json +0 -31
  41. package/releases/2.8.0.json +0 -32
  42. package/releases/2.8.1.json +0 -30
  43. package/releases/2.9.0.json +0 -33
  44. package/releases/2.9.1.json +0 -31
  45. package/releases/2.9.2.json +0 -33
  46. package/releases/2.9.3.json +0 -31
  47. package/releases/2.9.4.json +0 -37
@@ -1 +1 @@
1
- {"version":3,"file":"route-manifest.d.ts","sourceRoot":"","sources":["../../src/browser/route-manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,uBAAuB,EACvB,kBAAkB,EAClB,8BAA8B,EAC/B,MAAM,+BAA+B,CAAC;AAGvC,MAAM,MAAM,2BAA2B,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE/D,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gCAAgC;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,2BAA2B,CAAC;IAClC,EAAE,EAAE,2BAA2B,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IACvC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAChE,MAAM,EAAE,SAAS,QAAQ,CAAC,uBAAuB,CAAC,EAAE,CAAC;CACtD;AAkGD;;;;GAIG;AACH,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,EAAE,MAAM,GACd,0BAA0B,CA8G5B;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,0BAA0B,EACjC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,2BAA2B,sBAGpC;AAED;;;;GAIG;AACH,wBAAgB,sCAAsC,CACpD,MAAM,EAAE,8BAA8B,EACtC,KAAK,EAAE,MAAM,GACZ,2BAA2B,CAI7B;AAyID;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,0BAA0B,EACjC,QAAQ,EAAE,6BAA6B,EACvC,YAAY,EAAE,2BAA2B,GACxC,gCAAgC,GAAG,SAAS,CAmG9C"}
1
+ {"version":3,"file":"route-manifest.d.ts","sourceRoot":"","sources":["../../src/browser/route-manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,uBAAuB,EACvB,kBAAkB,EAClB,8BAA8B,EAC/B,MAAM,+BAA+B,CAAC;AAGvC,MAAM,MAAM,2BAA2B,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE/D,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gCAAgC;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,2BAA2B,CAAC;IAClC,EAAE,EAAE,2BAA2B,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IACvC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAChE,MAAM,EAAE,SAAS,QAAQ,CAAC,uBAAuB,CAAC,EAAE,CAAC;CACtD;AAkGD;;;;GAIG;AACH,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,EAAE,MAAM,GACd,0BAA0B,CAmI5B;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,0BAA0B,EACjC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,2BAA2B,sBAGpC;AAED;;;;GAIG;AACH,wBAAgB,sCAAsC,CACpD,MAAM,EAAE,8BAA8B,EACtC,KAAK,EAAE,MAAM,GACZ,2BAA2B,CAI7B;AAyID;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,0BAA0B,EACjC,QAAQ,EAAE,6BAA6B,EACvC,YAAY,EAAE,2BAA2B,GACxC,gCAAgC,GAAG,SAAS,CA0G9C"}
@@ -142,16 +142,35 @@ export function createStandardRouteManifestIndex(manifest, appCode) {
142
142
  }
143
143
  entries.set(entry.code, entry);
144
144
  }
145
- const reservedStaticPaths = [
146
- manifest.rootEntry.desktop,
147
- manifest.rootEntry.mobile,
145
+ // The root entry may alias exactly one manifest route pair: a user-surface
146
+ // landing whose records route IS the post-login destination. The compiler
147
+ // emits that shape (rootEntry.code === an entry code); authentication paths
148
+ // and every other landing-path collision stay ambiguous and invalid.
149
+ const rootEntryRoute = entries.get(manifest.rootEntry.code);
150
+ const authenticationPaths = [
148
151
  manifest.authentication.desktop.path,
149
152
  manifest.authentication.mobile.path,
150
153
  ];
151
- if (new Set(reservedStaticPaths).size !== reservedStaticPaths.length ||
154
+ if (new Set([
155
+ manifest.rootEntry.desktop,
156
+ manifest.rootEntry.mobile,
157
+ ...authenticationPaths,
158
+ ]).size !== 4 ||
152
159
  manifest.authentication.desktop.routeCode ===
153
160
  manifest.authentication.mobile.routeCode ||
154
- routes.some(route => validStaticPath(route.path) && reservedStaticPaths.includes(route.path))) {
161
+ routes.some(route => {
162
+ if (!validStaticPath(route.path))
163
+ return false;
164
+ if (authenticationPaths.includes(route.path))
165
+ return true;
166
+ if (route.path !== manifest.rootEntry.desktop &&
167
+ route.path !== manifest.rootEntry.mobile) {
168
+ return false;
169
+ }
170
+ return !(rootEntryRoute &&
171
+ (route.routeCode === rootEntryRoute.desktop.routeCode ||
172
+ route.routeCode === rootEntryRoute.mobile.routeCode));
173
+ })) {
155
174
  throw new Error('OPENXIANGDA_ROUTE_MANIFEST_INVALID');
156
175
  }
157
176
  return Object.freeze({
@@ -306,12 +325,19 @@ export function negotiateStandardRoute(index, location, targetDevice) {
306
325
  return { ...candidate, match, pathname };
307
326
  })
308
327
  .filter((candidate) => Boolean(candidate));
328
+ // When the root entry aliases a manifest route pair, that pair already
329
+ // projects the landing path; keeping the static pair too would create two
330
+ // equally specific matches and stall the negotiation.
309
331
  const staticPairs = [
310
- {
311
- entryCode: index.manifest.rootEntry.code,
312
- desktop: index.manifest.rootEntry.desktop,
313
- mobile: index.manifest.rootEntry.mobile,
314
- },
332
+ ...(index.entries.has(index.manifest.rootEntry.code)
333
+ ? []
334
+ : [
335
+ {
336
+ entryCode: index.manifest.rootEntry.code,
337
+ desktop: index.manifest.rootEntry.desktop,
338
+ mobile: index.manifest.rootEntry.mobile,
339
+ },
340
+ ]),
315
341
  {
316
342
  entryCode: index.manifest.authentication.desktop.routeCode,
317
343
  desktop: index.manifest.authentication.desktop.path,
@@ -1 +1 @@
1
- {"version":3,"file":"route-manifest.js","sourceRoot":"","sources":["../../src/browser/route-manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"route-manifest.js","sourceRoot":"","sources":["../../src/browser/route-manifest.ts"],"names":[],"mappings":"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"}
@@ -195,3 +195,20 @@ crud: [{
195
195
  ```
196
196
 
197
197
  引用未声明字段按编译错误处理;低层 `data.resources[].fields[].sortable` 语义不变。
198
+
199
+ ## 资源详情路由声明 {#detail-route-code}
200
+
201
+ Workflow 详情接管的资源侧绑定用模型级 `detailRouteCode` 表达,desktop/mobile 各引用一条
202
+ 前端路由;投影完整透传到 `data.resources[].detailRouteCode`,低层声明语义不变:
203
+
204
+ ```ts
205
+ defineDataModel({
206
+ code: 'venue-reservations', name: '场地预约',
207
+ detailRouteCode: { desktop: 'reservation-detail', mobile: 'reservation-detail-mobile' },
208
+ fields: [/* ... */],
209
+ })
210
+ ```
211
+
212
+ 两条路由必须已声明为 user surface、只带一个有界动态记录参数,且路由 capability 覆盖资源
213
+ read 能力;桌面路由不位于 `/m/`,移动路由必须位于 `/m/`。模型声明出现未知属性时报
214
+ `APP_MODEL_KEY_UNKNOWN` 编译错误——声明层的拼写错误不允许被静默丢弃。
@@ -11,6 +11,7 @@
11
11
  | 视图 `list`/`form`/`detail` 的 `model` 可省略(继承视图模型);显式声明时必须与 `crud[].model` 一致 | `list: { fields: [...] }` 即可,不必写 `model` |
12
12
  | 每个模型最多 20 个命名视图;命名视图需要稳定 `code` + `name` | `crud: [{ model: 'x', code: 'x-active', name: '进行中', ... }]` |
13
13
  | 新建视图的 `form.fields` 必须覆盖全部无默认必填字段,或显式 `generated.create: false` | 检查器会列出缺失字段 |
14
+ | Workflow 详情接管的资源路由用模型级 `detailRouteCode` 表达(desktop/mobile 各引用一条 user surface 路由) | `defineDataModel({ code: 'x', detailRouteCode: { desktop: 'x-detail', mobile: 'x-detail-mobile' }, ... })` |
14
15
 
15
16
  ## 字段声明
16
17
 
@@ -66,10 +66,10 @@ MCP 服务随项目根包一起安装,AI 客户端的 stdio 连接仍需配置
66
66
  以下命令的版本占位符由随包资料替换为该根包的精确版本。网站源码阅读者应先确认要使用的发行版本。
67
67
 
68
68
  ```bash
69
- pnpm dlx openxiangda@2.18.0 skill install --force
70
- pnpm dlx openxiangda@2.18.0 auth status --base-url <平台地址> --json
71
- pnpm dlx openxiangda@2.18.0 login --cwd my-app --base-url https://platform.example.com
72
- pnpm dlx openxiangda@2.18.0 create my-app --base-url https://platform.example.com
69
+ pnpm dlx openxiangda@2.18.2 skill install --force
70
+ pnpm dlx openxiangda@2.18.2 auth status --base-url <平台地址> --json
71
+ pnpm dlx openxiangda@2.18.2 login --cwd my-app --base-url https://platform.example.com
72
+ pnpm dlx openxiangda@2.18.2 create my-app --base-url https://platform.example.com
73
73
  cd my-app
74
74
  pnpm openxiangda context --json
75
75
  pnpm openxiangda dev
@@ -171,9 +171,9 @@ MCP 的 `docs_read` 可以读取本说明,当前没有独立的源码操作 MC
171
171
  无需本地工作区,使用本 Skill 随包精确版本或已安装的对应 CLI:
172
172
 
173
173
  ```bash
174
- pnpm dlx openxiangda@2.18.0 auth status --base-url <平台> --json
175
- pnpm dlx openxiangda@2.18.0 source resolve <仓库URL> --base-url <平台> --json
176
- pnpm dlx openxiangda@2.18.0 source clone <仓库URL> <新目录> --base-url <平台> --json
174
+ pnpm dlx openxiangda@2.18.2 auth status --base-url <平台> --json
175
+ pnpm dlx openxiangda@2.18.2 source resolve <仓库URL> --base-url <平台> --json
176
+ pnpm dlx openxiangda@2.18.2 source clone <仓库URL> <新目录> --base-url <平台> --json
177
177
  ```
178
178
 
179
179
  登录缺失或站点不匹配时,先按该平台执行 login。resolve 根据平台已经登记的绑定返回
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "schemaVersion": "openxiangda.documentation/v1",
3
- "version": "2.18.0",
3
+ "version": "2.18.2",
4
4
  "topics": [
5
5
  {
6
6
  "id": "getting-started",
7
7
  "title": "安装与开始开发",
8
8
  "file": "getting-started.md",
9
- "sha256": "20d2d9f373baec112bcd1238298a6e2d2c1a251c3c42910f81f174f7e774122a"
9
+ "sha256": "e37b86058ad684660ee8849db02cc23a222d80fd0bb4a9794692eb19384cb5d4"
10
10
  },
11
11
  {
12
12
  "id": "product-design",
@@ -48,13 +48,13 @@
48
48
  "id": "declarations-cheatsheet",
49
49
  "title": "声明速查:一次写对 config",
50
50
  "file": "declarations-cheatsheet.md",
51
- "sha256": "cceae7c98fff0bfb5823979b4b7116614917a55647313d931074770b3b2a8c4c"
51
+ "sha256": "82ba34ccb40e1e8f9163f22bb92c3ea2925a28020682f266921b22a88d9faaff"
52
52
  },
53
53
  {
54
54
  "id": "application-foundation",
55
55
  "title": "业务模型与标准 CRUD",
56
56
  "file": "application-foundation.md",
57
- "sha256": "28a4d727d773800e59e348287cd38ed011498b4ecab8a5ba0d21a4efade7d64e"
57
+ "sha256": "dd28e08c6ebbcb2651a216649182c8c46b1ab62a2853a4cece9f041f5da2cd15"
58
58
  },
59
59
  {
60
60
  "id": "appspec",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openxiangda",
3
- "version": "2.18.0",
3
+ "version": "2.18.2",
4
4
  "description": "OpenXiangda 2.0 的统一命令、应用 SDK、MCP 与中文 AI 技能资料。",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -60,13 +60,13 @@
60
60
  "antd-mobile": "5.42.3",
61
61
  "dayjs": "1.11.18",
62
62
  "docx-preview": "0.3.7",
63
- "openxiangda-cli": "2.4.8",
63
+ "openxiangda-cli": "2.4.10",
64
64
  "openxiangda-contracts": "2.14.1",
65
- "openxiangda-devkit-core": "2.14.0",
65
+ "openxiangda-devkit-core": "2.15.0",
66
66
  "openxiangda-legacy": "npm:openxiangda@1.0.269",
67
- "openxiangda-mcp": "2.0.23",
67
+ "openxiangda-mcp": "2.0.24",
68
68
  "openxiangda-nest": "2.4.2",
69
- "openxiangda-skill-kit": "2.1.7",
69
+ "openxiangda-skill-kit": "2.1.8",
70
70
  "xlsx": "https://cdn.sheetjs.com/xlsx-0.20.3/xlsx-0.20.3.tgz"
71
71
  },
72
72
  "peerDependencies": {
@@ -132,40 +132,33 @@
132
132
  },
133
133
  "openxiangdaRelease": {
134
134
  "schemaVersion": "openxiangda.release-notes/v1",
135
- "version": "2.18.0",
135
+ "version": "2.18.2",
136
136
  "status": "reviewed",
137
- "title": "OpenXiangda 2.18.0:用户标准面闭合修复、列表可排序声明与发布提效",
138
- "summary": "共享编译器完成用户标准面契约闭合校验;模块列表视图新增 sortableFields 排序声明(GAP-MODULE-001);发布验证按浏览器字节分级并收窄浏览器证据指纹,纯工具链补丁不再触发浏览器矩阵。",
137
+ "title": "OpenXiangda 2.18.2:模块模型级详情路由声明(GAP-MODULE-002)",
138
+ "summary": "模块化声明支持资源级详情路由绑定(detailRouteCode),模型声明未知属性 fail-closed;devkit-core 2.15.0 携带投影实现,根包为依赖传播版本。",
139
139
  "newFeatures": [
140
- "列表视图新增 sortableFields:与 filterFields/searchableFields 同构声明可排序列;defaultSort.field 保持隐式可排序,重复容忍;引用未声明字段报编译错误;低层 data.resources 语义不变。",
141
- "发布提效:验证计划按“浏览器应用实际加载的字节”分级(根包前端入口/contracts 浏览器入口),共享校验器等 Node 侧改动不再触发浏览器矩阵;浏览器阶段缓存指纹只包含浏览器捆绑包,devkit-core 等候选的字节变化不再使浏览器证据失效(候选版本仍由规范化锁覆盖)。"
142
- ],
143
- "fixes": [
144
- "修复 2.17.0 中 user 声明触发 NATIVE_CODE_INVALID / NATIVE_CONTRACT_CLOSURE_MISMATCH:共享校验器按配置事实校验并并入用户标准路由,配置 bundle 不变,旧平台无需升级。",
145
- "生成码统一为 user.资源码.records / user.资源码.submit,符合稳定码模式。"
140
+ "AppDataModelDeclaration 新增 detailRouteCode(desktop/mobile route code):模块化声明可表达 Workflow 详情接管消费的资源级详情路由绑定,materializeApplicationModules 完整透传到输出资源;低层 data.resources[].detailRouteCode 语义与既有校验(user surface、单动态参数、read capability 对齐)不变。",
141
+ "模型声明上的未知属性不再被静默丢弃:投影输出 APP_MODEL_KEY_UNKNOWN 错误 diagnostic(指向 `modules[i].models[j].<key>`)并使编译失败。"
146
142
  ],
143
+ "fixes": [],
147
144
  "affectedUsers": [
148
- "使用 openxiangda 2.17.0 并声明 user 用户面的应用开发者。",
149
- "从 data.resources 迁移到模块化声明、需要列表列头排序能力的应用(如数智工会 szgh-v2)。"
145
+ " data.resources 迁移到模块化声明、需要资源详情路由由 Workflow 详情接管的应用(如数智工会 szgh-v2)。"
150
146
  ],
151
147
  "upgradeSteps": [
152
- "应用精确依赖升级到 openxiangda 2.18.0 后重新运行 check 与部署。",
153
- "模块化迁移的列表排序用 sortableFields 声明,与既有低层声明逐字段对齐。"
148
+ "应用精确依赖升级到 openxiangda 2.18.2(openxiangda-devkit-core 2.15.0)后重新运行 check 与部署。"
154
149
  ],
155
150
  "knownLimitations": [
156
- "“我的记录”的本人过滤仍是查询层展示过滤,非服务端授权边界。"
151
+ "detailRouteCode 校验沿用既有资源级规则;本次不改变共享纯校验器字节,configuration-compatibility/v2 的 validatorDigest 不变。"
157
152
  ],
153
+ "issues": [],
158
154
  "compatibility": {
159
155
  "node": ">=24",
160
- "workspaceGenerations": [
161
- "v2"
162
- ],
163
- "platform": "无平台配合要求;配置与契约 bundle 对既有平台保持可部署。",
156
+ "workspaceGenerations": "v2",
157
+ "platform": "无平台配合要求;contracts 共享校验器字节不变。",
164
158
  "v1": "不改变 V1 运行时或应用。"
165
159
  },
166
- "issues": [],
167
- "sha256": "c5744c1cdd46e8922615d1b3bff521e072108906882a25c4d0f75f93f869c4af",
168
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.18.0"
160
+ "sha256": "029cced498e869e301d49a73a900beffb80a3b5c3183c34c8fb341f81853539a",
161
+ "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.18.2"
169
162
  },
170
163
  "scripts": {
171
164
  "build": "node ../../scripts/prune-package-dist.mjs && tsc -p tsconfig.json && node scripts/copy-assets.mjs",
@@ -0,0 +1,30 @@
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
+ }
@@ -4,7 +4,7 @@
4
4
  {
5
5
  "name": "openxiangda-v2",
6
6
  "description": "使用 OpenXiangda 2.0 从模糊业务想法、已有资料或具体变更出发,通过对话发现模块、完成详细产品设计,由 AI 在工作区内调用 OpenDesign 原版 CLI/Skill/MCP 形成整体视觉与可运行原型,再开发、检查和交付应用。OpenDesign 客户端只作为可选预览器;维护 1.x 应用时使用对应的 1.x 技能。",
7
- "sha256": "6f9d3c2d8d8260a9dd82c277fae8567598a3d4a1b8905ac2eaf679aa9c2085c5"
7
+ "sha256": "2a463b5f8d6341de76dabe93b92b31100d5770a6be4bd66753f2e166b631aece"
8
8
  }
9
9
  ]
10
10
  }
@@ -40,10 +40,10 @@ AI 接到新应用、页面或改版任务时,在同一个 OpenXiangda 工作
40
40
  未创建工作区时使用本 Skill 随根包发布的精确版本:
41
41
 
42
42
  ```bash
43
- pnpm dlx openxiangda@2.18.0 auth status --cwd <应用目录> --base-url <平台地址> --json
44
- pnpm dlx openxiangda@2.18.0 login --cwd <应用目录> --base-url <平台地址>
45
- pnpm dlx openxiangda@2.18.0 create <应用目录> --base-url <同一平台地址>
46
- pnpm dlx openxiangda@2.18.0 skill install --force
43
+ pnpm dlx openxiangda@2.18.2 auth status --cwd <应用目录> --base-url <平台地址> --json
44
+ pnpm dlx openxiangda@2.18.2 login --cwd <应用目录> --base-url <平台地址>
45
+ pnpm dlx openxiangda@2.18.2 create <应用目录> --base-url <同一平台地址>
46
+ pnpm dlx openxiangda@2.18.2 skill install --force
47
47
  ```
48
48
 
49
49
  创建前把产品要求的目标平台明确带入命令,不从旧登录态推断站点。已有工作区从原绑定恢复,平台不一致时先解决登录与目标,不改 link 文件跨站创建。
@@ -195,3 +195,20 @@ crud: [{
195
195
  ```
196
196
 
197
197
  引用未声明字段按编译错误处理;低层 `data.resources[].fields[].sortable` 语义不变。
198
+
199
+ ## 资源详情路由声明 {#detail-route-code}
200
+
201
+ Workflow 详情接管的资源侧绑定用模型级 `detailRouteCode` 表达,desktop/mobile 各引用一条
202
+ 前端路由;投影完整透传到 `data.resources[].detailRouteCode`,低层声明语义不变:
203
+
204
+ ```ts
205
+ defineDataModel({
206
+ code: 'venue-reservations', name: '场地预约',
207
+ detailRouteCode: { desktop: 'reservation-detail', mobile: 'reservation-detail-mobile' },
208
+ fields: [/* ... */],
209
+ })
210
+ ```
211
+
212
+ 两条路由必须已声明为 user surface、只带一个有界动态记录参数,且路由 capability 覆盖资源
213
+ read 能力;桌面路由不位于 `/m/`,移动路由必须位于 `/m/`。模型声明出现未知属性时报
214
+ `APP_MODEL_KEY_UNKNOWN` 编译错误——声明层的拼写错误不允许被静默丢弃。
@@ -11,6 +11,7 @@
11
11
  | 视图 `list`/`form`/`detail` 的 `model` 可省略(继承视图模型);显式声明时必须与 `crud[].model` 一致 | `list: { fields: [...] }` 即可,不必写 `model` |
12
12
  | 每个模型最多 20 个命名视图;命名视图需要稳定 `code` + `name` | `crud: [{ model: 'x', code: 'x-active', name: '进行中', ... }]` |
13
13
  | 新建视图的 `form.fields` 必须覆盖全部无默认必填字段,或显式 `generated.create: false` | 检查器会列出缺失字段 |
14
+ | Workflow 详情接管的资源路由用模型级 `detailRouteCode` 表达(desktop/mobile 各引用一条 user surface 路由) | `defineDataModel({ code: 'x', detailRouteCode: { desktop: 'x-detail', mobile: 'x-detail-mobile' }, ... })` |
14
15
 
15
16
  ## 字段声明
16
17
 
@@ -66,10 +66,10 @@ MCP 服务随项目根包一起安装,AI 客户端的 stdio 连接仍需配置
66
66
  以下命令的版本占位符由随包资料替换为该根包的精确版本。网站源码阅读者应先确认要使用的发行版本。
67
67
 
68
68
  ```bash
69
- pnpm dlx openxiangda@2.18.0 skill install --force
70
- pnpm dlx openxiangda@2.18.0 auth status --base-url <平台地址> --json
71
- pnpm dlx openxiangda@2.18.0 login --cwd my-app --base-url https://platform.example.com
72
- pnpm dlx openxiangda@2.18.0 create my-app --base-url https://platform.example.com
69
+ pnpm dlx openxiangda@2.18.2 skill install --force
70
+ pnpm dlx openxiangda@2.18.2 auth status --base-url <平台地址> --json
71
+ pnpm dlx openxiangda@2.18.2 login --cwd my-app --base-url https://platform.example.com
72
+ pnpm dlx openxiangda@2.18.2 create my-app --base-url https://platform.example.com
73
73
  cd my-app
74
74
  pnpm openxiangda context --json
75
75
  pnpm openxiangda dev
@@ -171,9 +171,9 @@ MCP 的 `docs_read` 可以读取本说明,当前没有独立的源码操作 MC
171
171
  无需本地工作区,使用本 Skill 随包精确版本或已安装的对应 CLI:
172
172
 
173
173
  ```bash
174
- pnpm dlx openxiangda@2.18.0 auth status --base-url <平台> --json
175
- pnpm dlx openxiangda@2.18.0 source resolve <仓库URL> --base-url <平台> --json
176
- pnpm dlx openxiangda@2.18.0 source clone <仓库URL> <新目录> --base-url <平台> --json
174
+ pnpm dlx openxiangda@2.18.2 auth status --base-url <平台> --json
175
+ pnpm dlx openxiangda@2.18.2 source resolve <仓库URL> --base-url <平台> --json
176
+ pnpm dlx openxiangda@2.18.2 source clone <仓库URL> <新目录> --base-url <平台> --json
177
177
  ```
178
178
 
179
179
  登录缺失或站点不匹配时,先按该平台执行 login。resolve 根据平台已经登记的绑定返回
@@ -1,50 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.0.0",
4
- "title": "OpenXiangda 2.0 正式版",
5
- "status": "reviewed",
6
- "summary": "以统一入口使用两代工作区,新应用默认采用 V2。V2 提供从需求设计到 React 应用、平台数据权限和应用交付的完整工具链。",
7
- "newFeatures": [
8
- "统一入口识别最近的 V1/V2 工作区,优先使用项目已安装的锁定引擎;无本地 V1 引擎的旧工作区使用随入口固定的 V1 维护引擎。",
9
- "新应用默认 V2:自然语言澄清产品需求,形成产品、页面、权限和架构设计基线,确认后再制定开发计划。",
10
- "V2 提供标准 PC/移动端 CRUD、字段组件、Data API 权限、流程与协作能力;默认本地 React 连接平台测试环境,Nest 后端按需使用。",
11
- "提供版本识别、分代更新、随包更新说明和 V1 到 V2 的只读迁移评估。"
12
- ],
13
- "fixes": [
14
- "全局入口切换到 V2 后,旧 V1 工作区仍由 V1 执行,不再因同名命令使用错误代际。",
15
- "项目工具链升级与全局入口升级明确分开;V1 维护渠道不再改写 latest。",
16
- "两代 Skill 使用独立入口,V1 安装不再覆盖统一入口或清理 V2 Skill。"
17
- ],
18
- "affectedUsers": [
19
- "新建应用的开发者",
20
- "需要继续维护 V1 工作区的开发者",
21
- "从 V2 alpha 升级的现有用户"
22
- ],
23
- "compatibility": {
24
- "node": ">=24",
25
- "workspaceGenerations": [
26
- "v1",
27
- "v2"
28
- ],
29
- "v1Policy": "保持现有配置、数据、流程、登录绑定与项目工具链代际;原 V1 CLI 可继续使用其原运行环境。",
30
- "platformPolicy": "V2 应用部署前按平台 capabilities 和配置验证器预检;工具版本不能代替平台实际部署版本。",
31
- "backendBuild": "Nest 镜像由开发者电脑上的 Docker 构建;普通 React/Nest 连接开发不要求本地平台或数据库。",
32
- "releaseChannels": "latest / stable-v2:V2 正式版;legacy-v1:V1 维护版;alpha:预发布。npm 不允许把 v1/v2 作为标签。"
33
- },
34
- "upgradeSteps": [
35
- "在 Node.js 24 环境安装统一入口:npm install -g openxiangda@2.0.0。",
36
- "进入已有项目运行 openxiangda version --json,核对工作区代际、实际引擎和解析来源。",
37
- "运行 openxiangda update check 查看本项目更新;需要升级时执行 openxiangda update install --target workspace。",
38
- "检查依赖与锁文件差异,刷新本项目 Skill,并完成项目检查、测试环境和真实角色业务验收后再晋级生产。",
39
- "V2 能力满足、项目仍在测试阶段且迁移成本可控时,优先建议 V1 项目采用 V2;先完成项目评估、设计确认和迁移验收。"
40
- ],
41
- "knownLimitations": [
42
- "V1 到 V2 首期仅提供本地源码迁移评估,不读取远端业务数据,也不自动迁移应用。",
43
- "源码扫描不会证明远端权限、流程和数据完整性;迁移须按项目制定映射、演练和回滚方案。",
44
- "内网或离线环境可读取随包说明;联网检查失败时保留当前工具与项目。",
45
- "内部支持 Agent 独立交付和验收,不随此 npm 版本自动部署。"
46
- ],
47
- "issues": [],
48
- "sha256": "a6100370946d253328c924c19f6577bac383c4633e3650d69b7ad378486ae880",
49
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.0.0"
50
- }
@@ -1,39 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.0.1",
4
- "title": "OpenXiangda pnpm 工作区识别修复",
5
- "status": "reviewed",
6
- "summary": "修复独立安装的统一入口进入 pnpm 工作区时无法找到项目 CLI 的问题,继续严格使用该项目锁定的同代引擎。",
7
- "newFeatures": [
8
- "本次为 2.0.0 的修复发布,没有新增应用能力。"
9
- ],
10
- "fixes": [
11
- "从 pnpm 符号链接指向的真实包目录解析 openxiangda-cli,避免 WORKSPACE_ENGINE_DEPENDENCY_MISSING。"
12
- ],
13
- "affectedUsers": [
14
- "使用全局或独立安装的统一入口维护 pnpm 工作区的开发者。"
15
- ],
16
- "compatibility": {
17
- "node": ">=24",
18
- "workspaceGenerations": [
19
- "v1",
20
- "v2"
21
- ],
22
- "v1Policy": "V1 应用保持原代际、版本锁定与登录绑定。",
23
- "platformPolicy": "没有新增平台能力要求,部署仍执行目标平台预检。",
24
- "backendBuild": "Nest 镜像继续由开发者电脑上的 Docker 构建。",
25
- "releaseChannels": "latest / stable-v2:V2 正式版;legacy-v1:V1 维护版;alpha:预发布。"
26
- },
27
- "upgradeSteps": [
28
- "在 Node.js 24 环境安装统一入口:npm install -g openxiangda@2.0.1。",
29
- "在项目及其子目录运行 openxiangda version --json,核对工作区代际、项目引擎版本和解析来源。",
30
- "需要更新 V2 项目依赖时运行 openxiangda update install --target workspace,检查锁文件并完成项目验收。"
31
- ],
32
- "knownLimitations": [
33
- "独立入口更新不会自动升级项目锁定的工具链,也不会迁移 V1 应用。",
34
- "已发布的 2.0.0 保持不可变;本修复不代表平台部署或业务验收已完成。"
35
- ],
36
- "issues": [],
37
- "sha256": "6bba13f70a956b58412da587fc9d7b50dd279fea809eae2461dd3515321a83dd",
38
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.0.1"
39
- }
@@ -1,44 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.1.0",
4
- "title": "OpenXiangda 平台托管应用镜像上传",
5
- "status": "reviewed",
6
- "summary": "应用 Nest 后端在本机构建为 OCI 镜像后,通过平台登录态分片上传。平台负责应用归属校验、镜像存储和运行时拉取,开发者无需取得平台维护者个人镜像仓库的推送权限。",
7
- "newFeatures": [
8
- "发现并优先使用平台 backendImageUpload 能力,导出 linux/amd64 OCI 镜像并上传有界分片。",
9
- "上传前校验本地镜像大小和摘要,复用已完成的镜像回执,并恢复分片传输中断。"
10
- ],
11
- "fixes": [
12
- "启用平台上传后,应用部署不再依赖开发者对平台维护者镜像仓库的推送权限。",
13
- "Docker classic image store 不支持 OCI 导出时,返回明确的 builder 配置指引。"
14
- ],
15
- "affectedUsers": [
16
- "声明可选 Nest 后端并通过 CLI 或 MCP 部署的 OpenXiangda 2.0 应用开发者。",
17
- "维护共享应用运行时及平台镜像存储的平台管理员。"
18
- ],
19
- "compatibility": {
20
- "node": ">=24",
21
- "workspaceGenerations": [
22
- "v1",
23
- "v2"
24
- ],
25
- "v1Policy": "V1 应用保持原代际、版本锁定与登录绑定。",
26
- "platformPolicy": "平台托管上传需要匹配的后端、Registry 和网关发布,并启用 backendImageUpload;旧平台继续使用既有构建合同。",
27
- "backendBuild": "可选 Nest 后端仍在开发者电脑上使用 Docker Buildx 构建,需要支持 OCI exporter 的 builder。",
28
- "releaseChannels": "latest / stable-v2:V2 正式版;legacy-v1:V1 维护版;alpha:预发布。"
29
- },
30
- "upgradeSteps": [
31
- "平台管理员先按部署运行手册准备镜像存储与凭据,再部署匹配的后端和网关。",
32
- "在 Node.js 24 环境安装统一入口:npm install -g openxiangda@2.1.0。",
33
- "更新 V2 项目锁定的工具链并刷新项目资料,核对平台上传能力后运行项目的 openxiangda deploy。"
34
- ],
35
- "knownLimitations": [
36
- "当前仅支持 linux/amd64 单平台 OCI 镜像;默认单镜像上限为 1Gi,由平台配置控制。",
37
- "已声明但未启用的平台上传能力会阻止部署,避免回退到个人镜像仓库推送。",
38
- "镜像保留与垃圾回收由平台运维单独管理;现有版本仍可能需要历史镜像进行部署或回滚。",
39
- "托管镜像开始使用后,后端回滚必须保留 Registry、持久卷、凭据和网关读取路由。"
40
- ],
41
- "issues": [],
42
- "sha256": "d7f6a21ddc37b3d2439350bf17f5f4575192168944dc33efb15460f7d1854aff",
43
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.1.0"
44
- }
@@ -1,48 +0,0 @@
1
- {
2
- "schemaVersion": "openxiangda.release-notes/v1",
3
- "version": "2.1.1",
4
- "title": "OpenXiangda 应用源码托管",
5
- "status": "reviewed",
6
- "summary": "私有化平台通过共享 Forgejo 管理应用源码。创建应用时自动初始化私有仓库并推送代码,应用管理员自动获得仓库管理权限,开发者使用长期 Git 凭据。",
7
- "newFeatures": [
8
- "既有 PLATFORM_ADMIN 自动获得共享 Git 服务全部已有和新建仓库的管理权限。",
9
- "source resolve/clone 支持仅凭平台与仓库 URL、使用当前登录态读取源码,不安装或执行应用脚本。",
10
- "新增 source status、source setup 和 source push 命令,支持初始化恢复和已有工作区接入。",
11
- "创建应用后自动提交并推送初始源码,通过系统凭据管理器保存个人 Git 凭据。",
12
- "配套平台支持首次部署前浏览源码及最近提交,并核验部署关联的提交已经推送。"
13
- ],
14
- "fixes": [
15
- "应用源码可直接保留在平台托管仓库中,减少对开发者个人 Git 服务的依赖。",
16
- "显式导入保留原 origin 为 external-source,初始化重试保留已有未提交修改,冲突推送不覆盖远端提交。"
17
- ],
18
- "affectedUsers": [
19
- "使用 OpenXiangda 2.0 创建应用或接入平台源码仓库的开发者。",
20
- "维护内部私有化平台和应用管理员权限的平台管理员。"
21
- ],
22
- "compatibility": {
23
- "node": ">=24",
24
- "workspaceGenerations": [
25
- "v1",
26
- "v2"
27
- ],
28
- "v1Policy": "V1 应用保持原代际、版本锁定与登录绑定。",
29
- "platformPolicy": "自动源码托管需要匹配的平台后端、管理前端和网关,并配置 OPENXIANGDA_SOURCE_*;未启用的站点保持原创建行为。",
30
- "gitCredential": "支持 macOS Keychain、Windows Git Credential Manager,以及 Linux 已安装的 Git Credential Manager 或 libsecret。",
31
- "releaseChannels": "latest / stable-v2:V2 正式版;legacy-v1:V1 维护版;alpha:预发布。"
32
- },
33
- "upgradeSteps": [
34
- "平台管理员配置共享 Forgejo、源码入口和专用凭据派生密钥,部署匹配的平台版本;长期保留密钥及 Git 数据。",
35
- "在 Node.js 24 环境安装统一入口:npm install -g openxiangda@2.1.1。",
36
- "更新 V2 工作区工具链;新应用自动接入,已有应用运行 openxiangda source setup --import 接入。",
37
- "完成修改后运行 openxiangda source push -m 描述,再按现有检查和部署流程交付。"
38
- ],
39
- "knownLimitations": [
40
- "当前仅同步应用管理员新增授权,不同步撤销或删除。",
41
- "导入推送当前分支,不自动迁移全部历史分支、标签及 LFS 对象。",
42
- "制品仍在本地构建;提交存在性核验不构成服务端构建证明。",
43
- "新源码功能不依赖 Studio;Studio 旧代码移除属于独立后续工作。"
44
- ],
45
- "issues": [],
46
- "sha256": "f7341eb21e1489c684ee03eed31568063dfad01bfe345f914552bd51b7357f84",
47
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.1.1"
48
- }