openxiangda-devkit-core 2.0.0-alpha.12 → 2.0.0-alpha.121

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 (188) hide show
  1. package/README.md +3 -8
  2. package/dist/app-spec.d.ts +228 -0
  3. package/dist/app-spec.d.ts.map +1 -0
  4. package/dist/app-spec.js +1443 -0
  5. package/dist/app-spec.js.map +1 -0
  6. package/dist/application-services.d.ts +996 -49
  7. package/dist/application-services.d.ts.map +1 -1
  8. package/dist/application-services.js +1348 -197
  9. package/dist/application-services.js.map +1 -1
  10. package/dist/application-ui-contract.d.ts +5 -0
  11. package/dist/application-ui-contract.d.ts.map +1 -0
  12. package/dist/application-ui-contract.js +149 -0
  13. package/dist/application-ui-contract.js.map +1 -0
  14. package/dist/backend-image-build.d.ts +23 -0
  15. package/dist/backend-image-build.d.ts.map +1 -0
  16. package/dist/backend-image-build.js +204 -0
  17. package/dist/backend-image-build.js.map +1 -0
  18. package/dist/command-process.d.ts +14 -0
  19. package/dist/command-process.d.ts.map +1 -0
  20. package/dist/command-process.js +51 -0
  21. package/dist/command-process.js.map +1 -0
  22. package/dist/command-registry.d.ts +123 -366
  23. package/dist/command-registry.d.ts.map +1 -1
  24. package/dist/command-registry.js +26 -266
  25. package/dist/command-registry.js.map +1 -1
  26. package/dist/compiler/ai-catalog.d.ts +4 -0
  27. package/dist/compiler/ai-catalog.d.ts.map +1 -0
  28. package/dist/compiler/ai-catalog.js +354 -0
  29. package/dist/compiler/ai-catalog.js.map +1 -0
  30. package/dist/compiler/application-model.d.ts +60 -0
  31. package/dist/compiler/application-model.d.ts.map +1 -0
  32. package/dist/compiler/application-model.js +141 -0
  33. package/dist/compiler/application-model.js.map +1 -0
  34. package/dist/compiler/authorization-transition.d.ts +7 -0
  35. package/dist/compiler/authorization-transition.d.ts.map +1 -0
  36. package/dist/compiler/authorization-transition.js +27 -0
  37. package/dist/compiler/authorization-transition.js.map +1 -0
  38. package/dist/compiler/bundle.d.ts +34 -0
  39. package/dist/compiler/bundle.d.ts.map +1 -0
  40. package/dist/compiler/bundle.js +1910 -0
  41. package/dist/compiler/bundle.js.map +1 -0
  42. package/dist/compiler/config.d.ts +882 -0
  43. package/dist/compiler/config.d.ts.map +1 -0
  44. package/dist/compiler/config.js +4118 -0
  45. package/dist/compiler/config.js.map +1 -0
  46. package/dist/compiler/data-policy-expression.d.ts +12 -0
  47. package/dist/compiler/data-policy-expression.d.ts.map +1 -0
  48. package/dist/compiler/data-policy-expression.js +43 -0
  49. package/dist/compiler/data-policy-expression.js.map +1 -0
  50. package/dist/compiler/field-codec.d.ts +14 -0
  51. package/dist/compiler/field-codec.d.ts.map +1 -0
  52. package/dist/compiler/field-codec.js +131 -0
  53. package/dist/compiler/field-codec.js.map +1 -0
  54. package/dist/compiler/field-physical-plan.d.ts +10 -0
  55. package/dist/compiler/field-physical-plan.d.ts.map +1 -0
  56. package/dist/compiler/field-physical-plan.js +66 -0
  57. package/dist/compiler/field-physical-plan.js.map +1 -0
  58. package/dist/compiler/field-policy-path.d.ts +10 -0
  59. package/dist/compiler/field-policy-path.d.ts.map +1 -0
  60. package/dist/compiler/field-policy-path.js +283 -0
  61. package/dist/compiler/field-policy-path.js.map +1 -0
  62. package/dist/compiler/field-query-plan.d.ts +13 -0
  63. package/dist/compiler/field-query-plan.d.ts.map +1 -0
  64. package/dist/compiler/field-query-plan.js +122 -0
  65. package/dist/compiler/field-query-plan.js.map +1 -0
  66. package/dist/compiler/field-surface.d.ts +15 -0
  67. package/dist/compiler/field-surface.d.ts.map +1 -0
  68. package/dist/compiler/field-surface.js +51 -0
  69. package/dist/compiler/field-surface.js.map +1 -0
  70. package/dist/compiler/index.d.ts +6 -0
  71. package/dist/compiler/index.d.ts.map +1 -0
  72. package/dist/compiler/index.js +6 -0
  73. package/dist/compiler/index.js.map +1 -0
  74. package/dist/compiler/package-compiler.d.ts +22 -0
  75. package/dist/compiler/package-compiler.d.ts.map +1 -0
  76. package/dist/compiler/package-compiler.js +257 -0
  77. package/dist/compiler/package-compiler.js.map +1 -0
  78. package/dist/compiler/permission-review.d.ts +139 -0
  79. package/dist/compiler/permission-review.d.ts.map +1 -0
  80. package/dist/compiler/permission-review.js +131 -0
  81. package/dist/compiler/permission-review.js.map +1 -0
  82. package/dist/compiler/schema-composition.d.ts +21 -0
  83. package/dist/compiler/schema-composition.d.ts.map +1 -0
  84. package/dist/compiler/schema-composition.js +193 -0
  85. package/dist/compiler/schema-composition.js.map +1 -0
  86. package/dist/config.d.ts +1 -1
  87. package/dist/config.js +1 -1
  88. package/dist/configuration-preflight.d.ts +7 -0
  89. package/dist/configuration-preflight.d.ts.map +1 -0
  90. package/dist/configuration-preflight.js +13 -0
  91. package/dist/configuration-preflight.js.map +1 -0
  92. package/dist/connected-development.d.ts +62 -0
  93. package/dist/connected-development.d.ts.map +1 -0
  94. package/dist/connected-development.js +393 -0
  95. package/dist/connected-development.js.map +1 -0
  96. package/dist/control-plane-client.d.ts +353 -123
  97. package/dist/control-plane-client.d.ts.map +1 -1
  98. package/dist/control-plane-client.js +420 -141
  99. package/dist/control-plane-client.js.map +1 -1
  100. package/dist/delivery-cache.d.ts +34 -0
  101. package/dist/delivery-cache.d.ts.map +1 -0
  102. package/dist/delivery-cache.js +186 -0
  103. package/dist/delivery-cache.js.map +1 -0
  104. package/dist/delivery-source.d.ts +17 -0
  105. package/dist/delivery-source.d.ts.map +1 -0
  106. package/dist/delivery-source.js +85 -0
  107. package/dist/delivery-source.js.map +1 -0
  108. package/dist/deployment-observer.d.ts +14 -0
  109. package/dist/deployment-observer.d.ts.map +1 -0
  110. package/dist/deployment-observer.js +68 -0
  111. package/dist/deployment-observer.js.map +1 -0
  112. package/dist/deployment.d.ts +55 -3
  113. package/dist/deployment.d.ts.map +1 -1
  114. package/dist/deployment.js +182 -21
  115. package/dist/deployment.js.map +1 -1
  116. package/dist/design-readiness.d.ts +24 -0
  117. package/dist/design-readiness.d.ts.map +1 -0
  118. package/dist/design-readiness.js +102 -0
  119. package/dist/design-readiness.js.map +1 -0
  120. package/dist/developer-errors.d.ts +11 -0
  121. package/dist/developer-errors.d.ts.map +1 -0
  122. package/dist/developer-errors.js +16 -0
  123. package/dist/developer-errors.js.map +1 -0
  124. package/dist/developer-operations.d.ts +188 -0
  125. package/dist/developer-operations.d.ts.map +1 -0
  126. package/dist/developer-operations.js +58 -0
  127. package/dist/developer-operations.js.map +1 -0
  128. package/dist/development-lifecycle.d.ts +75 -0
  129. package/dist/development-lifecycle.d.ts.map +1 -0
  130. package/dist/development-lifecycle.js +189 -0
  131. package/dist/development-lifecycle.js.map +1 -0
  132. package/dist/documentation.d.ts +111 -0
  133. package/dist/documentation.d.ts.map +1 -0
  134. package/dist/documentation.js +112 -0
  135. package/dist/documentation.js.map +1 -0
  136. package/dist/index.d.ts +16 -0
  137. package/dist/index.d.ts.map +1 -1
  138. package/dist/index.js +16 -0
  139. package/dist/index.js.map +1 -1
  140. package/dist/internal/workflow.d.ts +83 -0
  141. package/dist/internal/workflow.d.ts.map +1 -0
  142. package/dist/internal/workflow.js +419 -0
  143. package/dist/internal/workflow.js.map +1 -0
  144. package/dist/nest-injection-contract.d.ts +4 -0
  145. package/dist/nest-injection-contract.d.ts.map +1 -0
  146. package/dist/nest-injection-contract.js +116 -0
  147. package/dist/nest-injection-contract.js.map +1 -0
  148. package/dist/operation-progress.d.ts +26 -0
  149. package/dist/operation-progress.d.ts.map +1 -0
  150. package/dist/operation-progress.js +92 -0
  151. package/dist/operation-progress.js.map +1 -0
  152. package/dist/optional-backend.d.ts +14 -0
  153. package/dist/optional-backend.d.ts.map +1 -0
  154. package/dist/optional-backend.js +145 -0
  155. package/dist/optional-backend.js.map +1 -0
  156. package/dist/package-compiler.d.ts +1 -1
  157. package/dist/package-compiler.d.ts.map +1 -1
  158. package/dist/package-compiler.js +1 -1
  159. package/dist/package-compiler.js.map +1 -1
  160. package/dist/session.d.ts +149 -4
  161. package/dist/session.d.ts.map +1 -1
  162. package/dist/session.js +362 -23
  163. package/dist/session.js.map +1 -1
  164. package/dist/testing.d.ts +77 -0
  165. package/dist/testing.d.ts.map +1 -0
  166. package/dist/testing.js +213 -0
  167. package/dist/testing.js.map +1 -0
  168. package/dist/toolchain-capsule.d.ts +45 -0
  169. package/dist/toolchain-capsule.d.ts.map +1 -0
  170. package/dist/toolchain-capsule.js +165 -0
  171. package/dist/toolchain-capsule.js.map +1 -0
  172. package/dist/workspace-loader.d.ts +1 -1
  173. package/dist/workspace-loader.d.ts.map +1 -1
  174. package/dist/workspace-loader.js +35 -3
  175. package/dist/workspace-loader.js.map +1 -1
  176. package/dist/workspace-operation.d.ts +3 -0
  177. package/dist/workspace-operation.d.ts.map +1 -0
  178. package/dist/workspace-operation.js +45 -0
  179. package/dist/workspace-operation.js.map +1 -0
  180. package/dist/workspace.d.ts.map +1 -1
  181. package/dist/workspace.js +37 -1
  182. package/dist/workspace.js.map +1 -1
  183. package/package.json +16 -4
  184. package/templates/backend/Dockerfile +20 -0
  185. package/templates/backend/package.json +27 -0
  186. package/templates/backend/src/app.module.ts +23 -0
  187. package/templates/backend/src/main.ts +5 -0
  188. package/templates/backend/tsconfig.json +9 -0
@@ -0,0 +1,111 @@
1
+ /** 使用指南的唯一主题目录;正文从同版本根包读取。 */
2
+ export declare const DOCUMENTATION_TOPICS: readonly [{
3
+ readonly id: "getting-started";
4
+ readonly title: "安装与开始开发";
5
+ readonly file: "getting-started.md";
6
+ }, {
7
+ readonly id: "product-design";
8
+ readonly title: "对话发现与详细产品设计";
9
+ readonly file: "product-design.md";
10
+ }, {
11
+ readonly id: "interaction-patterns";
12
+ readonly title: "页面交互模式与体验评审";
13
+ readonly file: "interaction-patterns.md";
14
+ }, {
15
+ readonly id: "development";
16
+ readonly title: "需求与开发流程";
17
+ readonly file: "development.md";
18
+ }, {
19
+ readonly id: "application-foundation";
20
+ readonly title: "业务模型与标准 CRUD";
21
+ readonly file: "application-foundation.md";
22
+ }, {
23
+ readonly id: "appspec";
24
+ readonly title: "需求、设计与交付记录";
25
+ readonly file: "appspec.md";
26
+ }, {
27
+ readonly id: "concepts";
28
+ readonly title: "架构与能力所有者";
29
+ readonly file: "concepts.md";
30
+ }, {
31
+ readonly id: "frontend";
32
+ readonly title: "页面与标准组件扩展";
33
+ readonly file: "frontend.md";
34
+ }, {
35
+ readonly id: "field-components";
36
+ readonly title: "字段、表单与移动控件";
37
+ readonly file: "field-components.md";
38
+ }, {
39
+ readonly id: "data-authz";
40
+ readonly title: "数据查询与权限";
41
+ readonly file: "data-authz.md";
42
+ }, {
43
+ readonly id: "public-access";
44
+ readonly title: "无账号的匿名公开访问";
45
+ readonly file: "public-access.md";
46
+ }, {
47
+ readonly id: "workflow-events";
48
+ readonly title: "审批、事件与通知";
49
+ readonly file: "workflow-events.md";
50
+ }, {
51
+ readonly id: "backend";
52
+ readonly title: "按需后端与业务动作";
53
+ readonly file: "backend.md";
54
+ }, {
55
+ readonly id: "administration";
56
+ readonly title: "应用管理与有效配置";
57
+ readonly file: "administration.md";
58
+ }, {
59
+ readonly id: "testing";
60
+ readonly title: "检查与真实业务验收";
61
+ readonly file: "testing.md";
62
+ }, {
63
+ readonly id: "delivery";
64
+ readonly title: "部署、生产晋级与恢复";
65
+ readonly file: "delivery.md";
66
+ }, {
67
+ readonly id: "upgrading";
68
+ readonly title: "版本升级与资料刷新";
69
+ readonly file: "upgrading.md";
70
+ }, {
71
+ readonly id: "cli";
72
+ readonly title: "CLI 命令参考";
73
+ readonly file: "reference/cli.md";
74
+ }, {
75
+ readonly id: "mcp";
76
+ readonly title: "MCP 配置与工具参考";
77
+ readonly file: "reference/mcp.md";
78
+ }];
79
+ /** Skill 参考文件名直接使用主题 ID,正文由同一中文主题生成。 */
80
+ export declare function documentationReferenceFile(id: string): string;
81
+ export declare function documentationRoot(): string;
82
+ export declare function documentationIndex(root?: string): {
83
+ schemaVersion: string;
84
+ topics: {
85
+ id: "appspec" | "delivery" | "frontend" | "backend" | "getting-started" | "product-design" | "interaction-patterns" | "development" | "application-foundation" | "concepts" | "field-components" | "data-authz" | "public-access" | "workflow-events" | "administration" | "testing" | "upgrading" | "cli" | "mcp";
86
+ title: "CLI 命令参考" | "安装与开始开发" | "对话发现与详细产品设计" | "页面交互模式与体验评审" | "需求与开发流程" | "业务模型与标准 CRUD" | "需求、设计与交付记录" | "架构与能力所有者" | "页面与标准组件扩展" | "字段、表单与移动控件" | "数据查询与权限" | "无账号的匿名公开访问" | "审批、事件与通知" | "按需后端与业务动作" | "应用管理与有效配置" | "检查与真实业务验收" | "部署、生产晋级与恢复" | "版本升级与资料刷新" | "MCP 配置与工具参考";
87
+ uri: string;
88
+ version: string;
89
+ sha256: string;
90
+ bytes: number;
91
+ sections: {
92
+ id: string;
93
+ title: string;
94
+ }[];
95
+ }[];
96
+ };
97
+ export declare function readDocumentation(id: string, section?: string, root?: string): {
98
+ schemaVersion: string;
99
+ topic: string;
100
+ title: "CLI 命令参考" | "安装与开始开发" | "对话发现与详细产品设计" | "页面交互模式与体验评审" | "需求与开发流程" | "业务模型与标准 CRUD" | "需求、设计与交付记录" | "架构与能力所有者" | "页面与标准组件扩展" | "字段、表单与移动控件" | "数据查询与权限" | "无账号的匿名公开访问" | "审批、事件与通知" | "按需后端与业务动作" | "应用管理与有效配置" | "检查与真实业务验收" | "部署、生产晋级与恢复" | "版本升级与资料刷新" | "MCP 配置与工具参考";
101
+ version: string;
102
+ sha256: string;
103
+ uri: string;
104
+ sections: {
105
+ id: string;
106
+ title: string;
107
+ }[];
108
+ content: string;
109
+ };
110
+ export declare function workspaceGuidanceTemplatePath(): string;
111
+ //# sourceMappingURL=documentation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentation.d.ts","sourceRoot":"","sources":["../src/documentation.ts"],"names":[],"mappings":"AAIA,8BAA8B;AAC9B,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoBvB,CAAC;AAEX,wCAAwC;AACxC,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,MAAM,UAEpD;AAID,wBAAgB,iBAAiB,WAEhC;AA4CD,wBAAgB,kBAAkB,CAAC,IAAI,SAAsB;;;;;;;;;;;;;;EAW5D;AAED,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,SAAsB;;;;;;;;;;;;EAWzF;AAED,wBAAgB,6BAA6B,WAI5C"}
@@ -0,0 +1,112 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { existsSync, readFileSync, realpathSync, statSync } from 'node:fs';
3
+ import { isAbsolute, relative, resolve } from 'node:path';
4
+ /** 使用指南的唯一主题目录;正文从同版本根包读取。 */
5
+ export const DOCUMENTATION_TOPICS = [
6
+ { id: 'getting-started', title: '安装与开始开发', file: 'getting-started.md' },
7
+ { id: 'product-design', title: '对话发现与详细产品设计', file: 'product-design.md' },
8
+ { id: 'interaction-patterns', title: '页面交互模式与体验评审', file: 'interaction-patterns.md' },
9
+ { id: 'development', title: '需求与开发流程', file: 'development.md' },
10
+ { id: 'application-foundation', title: '业务模型与标准 CRUD', file: 'application-foundation.md' },
11
+ { id: 'appspec', title: '需求、设计与交付记录', file: 'appspec.md' },
12
+ { id: 'concepts', title: '架构与能力所有者', file: 'concepts.md' },
13
+ { id: 'frontend', title: '页面与标准组件扩展', file: 'frontend.md' },
14
+ { id: 'field-components', title: '字段、表单与移动控件', file: 'field-components.md' },
15
+ { id: 'data-authz', title: '数据查询与权限', file: 'data-authz.md' },
16
+ { id: 'public-access', title: '无账号的匿名公开访问', file: 'public-access.md' },
17
+ { id: 'workflow-events', title: '审批、事件与通知', file: 'workflow-events.md' },
18
+ { id: 'backend', title: '按需后端与业务动作', file: 'backend.md' },
19
+ { id: 'administration', title: '应用管理与有效配置', file: 'administration.md' },
20
+ { id: 'testing', title: '检查与真实业务验收', file: 'testing.md' },
21
+ { id: 'delivery', title: '部署、生产晋级与恢复', file: 'delivery.md' },
22
+ { id: 'upgrading', title: '版本升级与资料刷新', file: 'upgrading.md' },
23
+ { id: 'cli', title: 'CLI 命令参考', file: 'reference/cli.md' },
24
+ { id: 'mcp', title: 'MCP 配置与工具参考', file: 'reference/mcp.md' },
25
+ ];
26
+ /** Skill 参考文件名直接使用主题 ID,正文由同一中文主题生成。 */
27
+ export function documentationReferenceFile(id) {
28
+ return `${id}.md`;
29
+ }
30
+ const MAX_TOPIC_BYTES = 128 * 1024;
31
+ export function documentationRoot() {
32
+ return resolve(process.env.OPENXIANGDA_DOCUMENTATION_ROOT || resolve(import.meta.dirname, '../../../docs'));
33
+ }
34
+ function topicSource(id, root) {
35
+ const topic = DOCUMENTATION_TOPICS.find(item => item.id === id);
36
+ if (!topic)
37
+ throw new Error(`DOCUMENTATION_TOPIC_NOT_FOUND: 未知主题 ${id}。CLI 运行 pnpm openxiangda docs,MCP 调用 docs_read 并省略 topic,按目录中的 id 读取正文`);
38
+ const path = resolve(root, topic.file);
39
+ if (!existsSync(path))
40
+ throw new Error(`DOCUMENTATION_NOT_INSTALLED: 当前安装缺少 ${id},请通过同版本 openxiangda 根包启动`);
41
+ const resolved = realpathSync(path);
42
+ const local = relative(realpathSync(root), resolved);
43
+ if (local.startsWith('..') || isAbsolute(local))
44
+ throw new Error('DOCUMENTATION_PATH_FORBIDDEN: 文档不能越过资料目录');
45
+ if (!statSync(resolved).isFile() || statSync(resolved).size > MAX_TOPIC_BYTES) {
46
+ throw new Error('DOCUMENTATION_SIZE_EXCEEDED: 单个主题必须是大小不超过 128 KiB 的文本文档');
47
+ }
48
+ const text = readFileSync(resolved, 'utf8');
49
+ const sha256 = createHash('sha256').update(text).digest('hex');
50
+ const manifestPath = resolve(root, 'manifest.json');
51
+ const manifest = existsSync(manifestPath)
52
+ ? JSON.parse(readFileSync(manifestPath, 'utf8'))
53
+ : undefined;
54
+ if (manifest && manifest.topics.find(item => item.id === id)?.sha256 !== sha256) {
55
+ throw new Error(`DOCUMENTATION_DIGEST_MISMATCH: ${id} 与当前根包资料摘要不一致,请重新安装该精确版本`);
56
+ }
57
+ return { ...topic, text, sha256, version: manifest?.version || 'development' };
58
+ }
59
+ function sections(text) {
60
+ const lines = text.split('\n');
61
+ const found = [];
62
+ let fenced = false;
63
+ const used = new Map();
64
+ lines.forEach((line, index) => {
65
+ if (/^\s*(```|~~~)/.test(line)) {
66
+ fenced = !fenced;
67
+ return;
68
+ }
69
+ const match = !fenced && line.match(/^##\s+(.+?)(?:\s+\{#([\w-]+)\})?\s*$/);
70
+ if (!match)
71
+ return;
72
+ const title = match[1];
73
+ const base = match[2] || title.toLowerCase().replace(/[^\p{L}\p{N}]+/gu, '-').replace(/^-|-$/g, '');
74
+ const count = used.get(base) || 0;
75
+ used.set(base, count + 1);
76
+ if (found.length)
77
+ found[found.length - 1].end = index;
78
+ found.push({ id: count ? `${base}-${count + 1}` : base, title, start: index, end: lines.length });
79
+ });
80
+ return { lines, found };
81
+ }
82
+ export function documentationIndex(root = documentationRoot()) {
83
+ const topics = DOCUMENTATION_TOPICS.map(({ id }) => {
84
+ const source = topicSource(id, root);
85
+ return {
86
+ id, title: source.title, uri: `openxiangda://docs/${id}`,
87
+ version: source.version, sha256: source.sha256,
88
+ bytes: Buffer.byteLength(source.text),
89
+ sections: sections(source.text).found.map(({ id, title }) => ({ id, title })),
90
+ };
91
+ });
92
+ return { schemaVersion: 'openxiangda.documentation/v1', topics };
93
+ }
94
+ export function readDocumentation(id, section, root = documentationRoot()) {
95
+ const source = topicSource(id, root);
96
+ const parsed = sections(source.text);
97
+ const selected = section ? parsed.found.find(item => item.id === section) : undefined;
98
+ if (section && !selected)
99
+ throw new Error(`DOCUMENTATION_SECTION_NOT_FOUND: ${id} 没有章节 ${section},先读取该主题的章节目录`);
100
+ return {
101
+ schemaVersion: 'openxiangda.documentation/v1', topic: id, title: source.title,
102
+ version: source.version, sha256: source.sha256, uri: `openxiangda://docs/${id}`,
103
+ sections: parsed.found.map(({ id, title }) => ({ id, title })),
104
+ content: selected ? parsed.lines.slice(selected.start, selected.end).join('\n') : source.text,
105
+ };
106
+ }
107
+ export function workspaceGuidanceTemplatePath() {
108
+ return process.env.OPENXIANGDA_DOCUMENTATION_ROOT
109
+ ? resolve(documentationRoot(), 'AGENTS.md')
110
+ : resolve(import.meta.dirname, '../../../templates/application/AGENTS.md');
111
+ }
112
+ //# sourceMappingURL=documentation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentation.js","sourceRoot":"","sources":["../src/documentation.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,11 +1,27 @@
1
1
  export * from './application-services.js';
2
+ export * from './app-spec.js';
3
+ export * from './connected-development.js';
4
+ export * from './compiler/bundle.js';
5
+ export * from './compiler/permission-review.js';
2
6
  export * from './command-registry.js';
3
7
  export * from './config.js';
4
8
  export * from './control-plane-client.js';
5
9
  export * from './deployment.js';
6
10
  export * from './package-compiler.js';
11
+ export * from './compiler/ai-catalog.js';
12
+ export * from './compiler/schema-composition.js';
13
+ export * from './compiler/application-model.js';
7
14
  export * from './workspace.js';
8
15
  export * from './workspace-loader.js';
9
16
  export * from './session.js';
10
17
  export * from './version.js';
18
+ export * from './toolchain-capsule.js';
19
+ export * from './application-ui-contract.js';
20
+ export * from './optional-backend.js';
21
+ export * from './developer-operations.js';
22
+ export * from './operation-progress.js';
23
+ export * from './deployment-observer.js';
24
+ export * from './documentation.js';
25
+ export { developerError } from './developer-errors.js';
26
+ export { withWorkspaceOperation } from './workspace-operation.js';
11
27
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,aAAa,CAAC;AAC5B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,eAAe,CAAC;AAC9B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,iCAAiC,CAAC;AAChD,cAAc,uBAAuB,CAAC;AACtC,cAAc,aAAa,CAAC;AAC5B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,wBAAwB,CAAC;AAEvC,cAAc,8BAA8B,CAAC;AAE7C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AAEnC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC"}
package/dist/index.js CHANGED
@@ -1,11 +1,27 @@
1
1
  export * from './application-services.js';
2
+ export * from './app-spec.js';
3
+ export * from './connected-development.js';
4
+ export * from './compiler/bundle.js';
5
+ export * from './compiler/permission-review.js';
2
6
  export * from './command-registry.js';
3
7
  export * from './config.js';
4
8
  export * from './control-plane-client.js';
5
9
  export * from './deployment.js';
6
10
  export * from './package-compiler.js';
11
+ export * from './compiler/ai-catalog.js';
12
+ export * from './compiler/schema-composition.js';
13
+ export * from './compiler/application-model.js';
7
14
  export * from './workspace.js';
8
15
  export * from './workspace-loader.js';
9
16
  export * from './session.js';
10
17
  export * from './version.js';
18
+ export * from './toolchain-capsule.js';
19
+ export * from './application-ui-contract.js';
20
+ export * from './optional-backend.js';
21
+ export * from './developer-operations.js';
22
+ export * from './operation-progress.js';
23
+ export * from './deployment-observer.js';
24
+ export * from './documentation.js';
25
+ export { developerError } from './developer-errors.js';
26
+ export { withWorkspaceOperation } from './workspace-operation.js';
11
27
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,aAAa,CAAC;AAC5B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,eAAe,CAAC;AAC9B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,iCAAiC,CAAC;AAChD,cAAc,uBAAuB,CAAC;AACtC,cAAc,aAAa,CAAC;AAC5B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,wBAAwB,CAAC;AAEvC,cAAc,8BAA8B,CAAC;AAE7C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AAEnC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1,83 @@
1
+ import { type WorkflowApprovalMode, type WorkflowBinding, type WorkflowDelegation, type WorkflowDefinition, type WorkflowExpression, type WorkflowNode } from 'openxiangda-contracts';
2
+ export declare const expr: {
3
+ literal: (value: unknown) => WorkflowExpression;
4
+ path: (path: string) => WorkflowExpression;
5
+ eq: (left: WorkflowExpression, right: WorkflowExpression) => WorkflowExpression;
6
+ neq: (left: WorkflowExpression, right: WorkflowExpression) => WorkflowExpression;
7
+ gt: (left: WorkflowExpression, right: WorkflowExpression) => WorkflowExpression;
8
+ gte: (left: WorkflowExpression, right: WorkflowExpression) => WorkflowExpression;
9
+ lt: (left: WorkflowExpression, right: WorkflowExpression) => WorkflowExpression;
10
+ lte: (left: WorkflowExpression, right: WorkflowExpression) => WorkflowExpression;
11
+ and: (...values: WorkflowExpression[]) => WorkflowExpression;
12
+ or: (...values: WorkflowExpression[]) => WorkflowExpression;
13
+ not: (value: WorkflowExpression) => WorkflowExpression;
14
+ exists: (value: WorkflowExpression) => WorkflowExpression;
15
+ };
16
+ export declare class WorkflowCompilationError extends Error {
17
+ readonly diagnostics: string[];
18
+ readonly code = "OPENXIANGDA_WORKFLOW_INVALID";
19
+ constructor(diagnostics: string[]);
20
+ }
21
+ /** Normalize source declarations without changing the workflow identity model. */
22
+ export declare function normalizeWorkflowDefinition(definition: WorkflowDefinition): WorkflowDefinition;
23
+ export declare function defineWorkflow(definition: WorkflowDefinition): WorkflowDefinition;
24
+ export declare function defineWorkflowBinding(binding: WorkflowBinding): WorkflowBinding;
25
+ export declare function compileWorkflow(definition: WorkflowDefinition, binding: WorkflowBinding): {
26
+ definition: WorkflowDefinition;
27
+ binding: WorkflowBinding;
28
+ definitionDigest: string;
29
+ bindingDigest: string;
30
+ };
31
+ export declare function validateWorkflowDefinition(definition: WorkflowDefinition): string[];
32
+ export declare function validateWorkflowBinding(definition: WorkflowDefinition, binding: WorkflowBinding): string[];
33
+ export interface WorkflowPlan {
34
+ steps: Array<{
35
+ nodeId: string;
36
+ kind: WorkflowNode['kind'];
37
+ result?: Record<string, unknown>;
38
+ }>;
39
+ activeNode?: Extract<WorkflowNode, {
40
+ kind: 'approval';
41
+ }>;
42
+ outcome?: string;
43
+ }
44
+ export declare function planWorkflow(definition: WorkflowDefinition, facts: Record<string, unknown>, startAt?: string): WorkflowPlan;
45
+ export declare function evaluateExpression(expression: WorkflowExpression, facts: Record<string, unknown>): unknown;
46
+ export interface ApprovalParticipantState {
47
+ id: string;
48
+ status: 'pending' | 'active' | 'approved' | 'rejected' | 'cancelled';
49
+ required?: boolean;
50
+ kind?: 'primary' | 'add_sign' | 'transfer' | 'delegate';
51
+ }
52
+ export declare function insertApprovalParticipant<T extends ApprovalParticipantState>(input: {
53
+ participants: T[];
54
+ relativeToId: string;
55
+ participant: T;
56
+ position: 'before' | 'after';
57
+ }): T[];
58
+ export declare function replaceApprovalParticipant<T extends ApprovalParticipantState>(input: {
59
+ participants: T[];
60
+ participantId: string;
61
+ replacement: T;
62
+ }): T[];
63
+ export declare function planApprovalDecision<T extends ApprovalParticipantState>(input: {
64
+ mode: WorkflowApprovalMode;
65
+ participants: T[];
66
+ participantId: string;
67
+ decision: 'approved' | 'rejected';
68
+ }): {
69
+ participants: T[];
70
+ completed: boolean;
71
+ rejected: boolean;
72
+ nextParticipantId: string | null;
73
+ };
74
+ type DelegationWindow = Pick<WorkflowDelegation, 'id' | 'workflowCode' | 'delegatorRoleSubjectKey' | 'validFrom' | 'validTo' | 'status' | 'createdAt'>;
75
+ export declare function workflowDelegationWindowsOverlap(left: Pick<DelegationWindow, 'workflowCode' | 'validFrom' | 'validTo'>, right: Pick<DelegationWindow, 'workflowCode' | 'validFrom' | 'validTo'>): boolean;
76
+ export declare function selectWorkflowDelegation<T extends DelegationWindow>(input: {
77
+ delegations: T[];
78
+ workflowCode: string;
79
+ delegatorRoleSubjectKey: string;
80
+ at: string;
81
+ }): T | null;
82
+ export {};
83
+ //# sourceMappingURL=workflow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../../src/internal/workflow.ts"],"names":[],"mappings":"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"}