openxiangda 2.67.3 → 2.68.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.
- package/dist/browser/components/resource/useResourceFormDrafts.d.ts.map +1 -1
- package/dist/browser/components/workflow/WorkflowConditionEditor.d.ts +3 -1
- package/dist/browser/components/workflow/WorkflowConditionEditor.d.ts.map +1 -1
- package/dist/browser/components/workflow/WorkflowConditionEditor.js +10 -7
- package/dist/browser/components/workflow/WorkflowConditionEditor.js.map +1 -1
- package/dist/browser/components/workflow/WorkflowConditionalAssignmentEditor.d.ts +11 -0
- package/dist/browser/components/workflow/WorkflowConditionalAssignmentEditor.d.ts.map +1 -0
- package/dist/browser/components/workflow/WorkflowConditionalAssignmentEditor.js +35 -0
- package/dist/browser/components/workflow/WorkflowConditionalAssignmentEditor.js.map +1 -0
- package/dist/browser/components/workflow/WorkflowDesigner.d.ts.map +1 -1
- package/dist/browser/components/workflow/WorkflowDesigner.js +159 -35
- package/dist/browser/components/workflow/WorkflowDesigner.js.map +1 -1
- package/dist/browser/components/workflow/WorkflowDesignerAssistant.d.ts +2 -1
- package/dist/browser/components/workflow/WorkflowDesignerAssistant.d.ts.map +1 -1
- package/dist/browser/components/workflow/WorkflowDesignerAssistant.js +50 -13
- package/dist/browser/components/workflow/WorkflowDesignerAssistant.js.map +1 -1
- package/dist/browser/components/workflow/WorkflowDraftHandlingEditor.d.ts +3 -1
- package/dist/browser/components/workflow/WorkflowDraftHandlingEditor.d.ts.map +1 -1
- package/dist/browser/components/workflow/WorkflowDraftHandlingEditor.js +3 -2
- package/dist/browser/components/workflow/WorkflowDraftHandlingEditor.js.map +1 -1
- package/dist/browser/components/workflow/WorkflowNodeConfigurationEditor.d.ts +7 -1
- package/dist/browser/components/workflow/WorkflowNodeConfigurationEditor.d.ts.map +1 -1
- package/dist/browser/components/workflow/WorkflowNodeConfigurationEditor.js +70 -13
- package/dist/browser/components/workflow/WorkflowNodeConfigurationEditor.js.map +1 -1
- package/dist/browser/components/workflow/WorkflowPeopleSourceEditor.d.ts +5 -1
- package/dist/browser/components/workflow/WorkflowPeopleSourceEditor.d.ts.map +1 -1
- package/dist/browser/components/workflow/WorkflowPeopleSourceEditor.js +17 -8
- package/dist/browser/components/workflow/WorkflowPeopleSourceEditor.js.map +1 -1
- package/dist/browser/components/workflow/workflow-designer-authority.d.ts +10 -0
- package/dist/browser/components/workflow/workflow-designer-authority.d.ts.map +1 -0
- package/dist/browser/components/workflow/workflow-designer-authority.js +23 -0
- package/dist/browser/components/workflow/workflow-designer-authority.js.map +1 -0
- package/dist/browser/platform-client.d.ts +4 -1
- package/dist/browser/platform-client.d.ts.map +1 -1
- package/dist/browser/platform-client.js +20 -9
- package/dist/browser/platform-client.js.map +1 -1
- package/dist/browser/styles.css +11 -0
- package/documentation/administration.md +21 -1
- package/documentation/development.md +8 -0
- package/documentation/getting-started.md +22 -7
- package/documentation/manifest.json +7 -7
- package/documentation/reference/mcp.md +2 -2
- package/documentation/upgrading.md +25 -0
- package/documentation/workflow-events.md +11 -0
- package/package.json +29 -28
- package/releases/2.68.0.json +40 -0
- package/skills/manifest.json +1 -1
- package/skills/openxiangda-v2/SKILL.md +4 -4
- package/skills/openxiangda-v2/references/administration.md +21 -1
- package/skills/openxiangda-v2/references/development.md +8 -0
- package/skills/openxiangda-v2/references/getting-started.md +22 -7
- package/skills/openxiangda-v2/references/mcp.md +2 -2
- package/skills/openxiangda-v2/references/upgrading.md +25 -0
- package/skills/openxiangda-v2/references/workflow-events.md +11 -0
- package/releases/2.67.3.json +0 -39
|
@@ -68,10 +68,10 @@ MCP 服务随项目根包一起安装,AI 客户端的 stdio 连接仍需配置
|
|
|
68
68
|
以下命令的版本占位符由随包资料替换为该根包的精确版本。网站源码阅读者应先确认要使用的发行版本。
|
|
69
69
|
|
|
70
70
|
```bash
|
|
71
|
-
pnpm dlx openxiangda@2.
|
|
72
|
-
pnpm dlx openxiangda@2.
|
|
73
|
-
pnpm dlx openxiangda@2.
|
|
74
|
-
pnpm dlx openxiangda@2.
|
|
71
|
+
pnpm dlx openxiangda@2.68.0 skill install --force
|
|
72
|
+
pnpm dlx openxiangda@2.68.0 auth status --base-url <平台地址> --json
|
|
73
|
+
pnpm dlx openxiangda@2.68.0 login --cwd my-app --base-url https://platform.example.com
|
|
74
|
+
pnpm dlx openxiangda@2.68.0 create my-app --base-url https://platform.example.com
|
|
75
75
|
cd my-app
|
|
76
76
|
pnpm openxiangda context --json
|
|
77
77
|
pnpm openxiangda dev
|
|
@@ -137,6 +137,21 @@ AppSpec 随开发持续维护:测试发布前补齐总纲、关联变更与验
|
|
|
137
137
|
不兼容声明会明确报错,不能把旧流程偷偷当作本地新流程。共享测试数据的真实写入仍会影响同一数据集,
|
|
138
138
|
配置隔离不等于数据隔离。
|
|
139
139
|
|
|
140
|
+
按改动选择开发路径:
|
|
141
|
+
|
|
142
|
+
| 改动 | 当前支持路径 |
|
|
143
|
+
| --- | --- |
|
|
144
|
+
| React 页面与本地 Nest 实现 | 继续本地源码联调;是否启用 Nest 由业务需要决定 |
|
|
145
|
+
| 已有模型新增字段、页面声明、具名操作配置 | 由平台校验后投影到开发会话;不切换已发布 TEST Head |
|
|
146
|
+
| 新模型、已有字段类型/约束、数据策略、角色和流程定义 | 先核对差异,在 TEST 正式部署后再创建开发会话 |
|
|
147
|
+
| 后台事件、Timer、DateTrigger、浏览器文件流 | 通过已部署 TEST 制品验收;本地会话不接管线上后台执行 |
|
|
148
|
+
| 显式连接生产环境 | 使用已发布配置和真实生产数据;本地配置不投影,持续显示生产提示 |
|
|
149
|
+
|
|
150
|
+
支持新反馈的配套平台会给出 `developmentFeedback`:需要修改配置、重建会话、核对原运行或安排 TEST 发布。
|
|
151
|
+
CLI 保留字段 `pointer`、原 `configurationRunId`、`causeCode` 与 `requestId`;字段位置与HTTP端点分开显示。
|
|
152
|
+
进行中或结果不明时先核对原运行,不换随机键重建。下一步中的命令是固定建议,不会自动执行发布或重试;
|
|
153
|
+
未知反馈只提供排查指引,不推定原输入可以直接重试。
|
|
154
|
+
|
|
140
155
|
本地 Nest 使用开发会话自身的短期 OAuth 凭证,凭证只进入 Nest 环境。
|
|
141
156
|
它不会读取、旋转或撤销已部署后端的凭证。普通浏览器联调保留实际登录人的身份与角色;
|
|
142
157
|
loopback 代理仅注入配置选择证明,平台和 Nest 将该证明与签名调用中的 sessionId 核对。
|
|
@@ -206,9 +221,9 @@ MCP 的 `docs_read` 可以读取本说明,当前没有独立的源码操作 MC
|
|
|
206
221
|
无需本地工作区,使用本 Skill 随包精确版本或已安装的对应 CLI:
|
|
207
222
|
|
|
208
223
|
```bash
|
|
209
|
-
pnpm dlx openxiangda@2.
|
|
210
|
-
pnpm dlx openxiangda@2.
|
|
211
|
-
pnpm dlx openxiangda@2.
|
|
224
|
+
pnpm dlx openxiangda@2.68.0 auth status --base-url <平台> --json
|
|
225
|
+
pnpm dlx openxiangda@2.68.0 source resolve <仓库URL> --base-url <平台> --json
|
|
226
|
+
pnpm dlx openxiangda@2.68.0 source clone <仓库URL> <新目录> --base-url <平台> --json
|
|
212
227
|
```
|
|
213
228
|
|
|
214
229
|
登录缺失或站点不匹配时,先按该平台执行 login。resolve 根据平台已经登记的绑定返回
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": "openxiangda.documentation/v1",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.68.0",
|
|
4
4
|
"topics": [
|
|
5
5
|
{
|
|
6
6
|
"id": "getting-started",
|
|
7
7
|
"title": "安装与开始开发",
|
|
8
8
|
"file": "getting-started.md",
|
|
9
|
-
"sha256": "
|
|
9
|
+
"sha256": "d69a5d6badc21e9786fe2a496d699112de6a76eaf2fc44c9c9e76fb85ba71fc8"
|
|
10
10
|
},
|
|
11
11
|
{
|
|
12
12
|
"id": "product-design",
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"id": "development",
|
|
31
31
|
"title": "需求与开发流程",
|
|
32
32
|
"file": "development.md",
|
|
33
|
-
"sha256": "
|
|
33
|
+
"sha256": "a5b9cfda6a3f0effa201d4e7a3bb1c0518e99f09fae946be1d5d3e61c236573a"
|
|
34
34
|
},
|
|
35
35
|
{
|
|
36
36
|
"id": "declarations-cheatsheet",
|
|
@@ -96,7 +96,7 @@
|
|
|
96
96
|
"id": "workflow-events",
|
|
97
97
|
"title": "审批、事件与通知",
|
|
98
98
|
"file": "workflow-events.md",
|
|
99
|
-
"sha256": "
|
|
99
|
+
"sha256": "0950e53e14652922e10983137565dacd95c04fb324720abbdb5f7676cd24c431"
|
|
100
100
|
},
|
|
101
101
|
{
|
|
102
102
|
"id": "backend",
|
|
@@ -138,7 +138,7 @@
|
|
|
138
138
|
"id": "administration",
|
|
139
139
|
"title": "应用管理与有效配置",
|
|
140
140
|
"file": "administration.md",
|
|
141
|
-
"sha256": "
|
|
141
|
+
"sha256": "387ff090c89f7743b06e01a30ffbc8209dd83fe42672629c785027688f3d25fb"
|
|
142
142
|
},
|
|
143
143
|
{
|
|
144
144
|
"id": "application-operations",
|
|
@@ -162,7 +162,7 @@
|
|
|
162
162
|
"id": "upgrading",
|
|
163
163
|
"title": "版本升级与资料刷新",
|
|
164
164
|
"file": "upgrading.md",
|
|
165
|
-
"sha256": "
|
|
165
|
+
"sha256": "0fb3cb04b05427887193242758d901277be491263b51c8879bc0f80f26e28280"
|
|
166
166
|
},
|
|
167
167
|
{
|
|
168
168
|
"id": "cli",
|
|
@@ -174,7 +174,7 @@
|
|
|
174
174
|
"id": "mcp",
|
|
175
175
|
"title": "MCP 配置与工具参考",
|
|
176
176
|
"file": "reference/mcp.md",
|
|
177
|
-
"sha256": "
|
|
177
|
+
"sha256": "88c421628b635cc8b4b9ee5a6cd3cedfa9d7c73a9228867c2b6c7f3bc5e833b2"
|
|
178
178
|
}
|
|
179
179
|
]
|
|
180
180
|
}
|
|
@@ -98,7 +98,7 @@ MCP 使用项目锁定的根包;在客户端配置下列 stdio 启动参数,
|
|
|
98
98
|
|
|
99
99
|
## contract_describe
|
|
100
100
|
|
|
101
|
-
查看应用契约。默认返回有界索引;用 selector 读取模型、流程、能力,或 navigation/permissions
|
|
101
|
+
查看应用契约。默认返回有界索引;用 selector 读取模型、流程、能力,或 navigation/permissions/prerequisites。任务前提来自原编译器,不代表目标或角色可用。菜单建议只复制一次,运行时不自动应用。
|
|
102
102
|
|
|
103
103
|
- 只读:是
|
|
104
104
|
- 可替换文件或改变远端状态:否
|
|
@@ -112,7 +112,7 @@ MCP 使用项目锁定的根包;在客户端配置下列 stdio 启动参数,
|
|
|
112
112
|
"type": "object",
|
|
113
113
|
"properties": {
|
|
114
114
|
"selector": {
|
|
115
|
-
"description": "index、navigation、permissions、all 或索引给出的选择器",
|
|
115
|
+
"description": "index、navigation、permissions、prerequisites、all 或索引给出的选择器",
|
|
116
116
|
"type": "string",
|
|
117
117
|
"maxLength": 200
|
|
118
118
|
},
|
|
@@ -49,3 +49,28 @@
|
|
|
49
49
|
保留失败指针和变更差异。资料缺失或摘要不符时重新安装该精确版本,不能复制其他版本的文档掩盖问题。应用版本回滚、依赖降级和数据/迁移恢复分别处理;降级 npm 包不等于撤回已经发生的业务写入。
|
|
50
50
|
|
|
51
51
|
平台能力不足时交由平台维护者升级,不通过删除字段、改生成契约或退回 1.x 接口绕过。开发者无需执行工具链 npm 发包或平台数据库迁移。
|
|
52
|
+
|
|
53
|
+
## 从 1.x 迁移业务到 2.0 {#business-migration}
|
|
54
|
+
|
|
55
|
+
迁移按用户任务验收,不能只以“字段已搬过来、CRUD 页面能打开”为完成。1.x 继续使用独立维护工具;在原业务尚未完成切换时保留它的入口、数据和恢复路径,不让 V2 编译器兼容或发布 V1 工作区。
|
|
56
|
+
|
|
57
|
+
先在 AppSpec 的当前迁移变更中保存下列矩阵,引用原资料/页面/流程的精确来源及现行版本;Schema、Head、部署状态仍从原平台读取,不复制为另一份权威。已有确认可引用,不重新编造用户确认。
|
|
58
|
+
|
|
59
|
+
| 核对维度 | 必须记录 | 完成证据 |
|
|
60
|
+
| --- | --- | --- |
|
|
61
|
+
| 用户任务与入口 | 谁、何时、从哪个入口完成什么;原入口与新入口映射 | 对应角色走通完整任务,结果读回 |
|
|
62
|
+
| 页面与设备 | 列表、详情、编辑、自定义报表及必要设备范围 | 真实平台入口交互;未要求移动的管理页面不额外扩范围 |
|
|
63
|
+
| 角色与数据范围 | 角色并集、组织/部门/本人范围、字段读写与越权拒绝 | 至少允许和拒绝各一条;超管不能代验普通角色 |
|
|
64
|
+
| 模型与历史数据 | 原字段含义、精度、空值、子表、关系、状态及历史记录归属 | 原样本与新结果逐项对照;原ID映射和不可迁移项明确 |
|
|
65
|
+
| 流程与状态分支 | 发起、办理、转交、退回、撤回、补正、抄送及终态 | 必要正常/异常分支、实际办理人、待办和业务状态一致 |
|
|
66
|
+
| 文件与附件 | fileId、记录绑定、原存储位置、下载权限、引用关系 | 历史样本可授权读取;不能按当前存储默认值猜归属 |
|
|
67
|
+
| 后台与外部集成 | 事件、Timer、通知、外部订单/账务等效果及原键 | 原操作回执、外部读回、失败和未知结果恢复路径 |
|
|
68
|
+
| 并发和恢复 | 重复提交、版本冲突、网络丢响应、处理中退出 | 沿原键查询和恢复;无重复副作用、不丢已确认结果 |
|
|
69
|
+
| 发布与切换 | TEST版本、验收人、停写/流量切换、旧系统职责、回退边界 | TEST成功版本原样晋级,关键数据与任务再读回 |
|
|
70
|
+
| 测试收尾 | 新测试记录来源、允许清理的域、保留证据和未知效果 | 原owner核对并清理;不支持的域标为未回收,历史数据不批量删除 |
|
|
71
|
+
|
|
72
|
+
每一行绑定验收用例ID、来源、目标TEST版本/包摘要、实际角色、结果和证据。使用“通过、失败、未覆盖、不适用(附原因)”区分状态,不能把未实现分支写成通过。临时脚本或模拟接口只证明其覆盖的行为;真实角色、原文件与外部效果另行验收。
|
|
73
|
+
|
|
74
|
+
建议先选代表任务覆盖公共边界,再批量迁移相同能力;无需为每条流程重复平台完整数据库/队列矩阵。存在未知外部写入时,先按原请求键与业务编号读回,不切换身份、换键重发或回放整个流程。数据库/外部业务效果已提交后,回滚代码不等于撤销效果;按原恢复方案处理。
|
|
75
|
+
|
|
76
|
+
迁移方案和实施记录属于应用项目,通用规则从本专题引用。最后按[验收](./testing.md)和[交付](./delivery.md)关闭原TEST版本;不能用新构建替换已验收候选。
|
|
@@ -1250,3 +1250,14 @@ pnpm openxiangda workflow sync request-review --from production --to test \
|
|
|
1250
1250
|
`--copy-handling-defaults` 可复制办理模式、按钮和角色覆盖;两边的指定人员覆盖都保持环境所有。源环境不被修改。同步后的目标画布草稿若基线已经过时,需要重读或合并,不能覆盖新的 Head。请求不确定时,保留相同操作标识、两个修订号和完整参数重试;不要换标识重做。CLI 与 MCP 共用这些权限、校验、幂等和发布入口。
|
|
1251
1251
|
|
|
1252
1252
|
部署前记录目标流程修订号,激活前再次核对。期间若有人发布了画布,激活返回 `WORKFLOW_SOURCE_HEAD_CHANGED`,应用 Head 与流程 Head 在同一事务回滚;已准备的不可变登记保留。同步成功、源码检查成功、包发布与真实审批验收分别核对。
|
|
1253
|
+
|
|
1254
|
+
|
|
1255
|
+
## 条件人员规则的 PC 编辑 {#conditional-people-editor}
|
|
1256
|
+
|
|
1257
|
+
配套平台返回已发布的条件人员上下文,且当前目录声明 `conditionalAssignments: true` 时,PC流程编辑器可维护审批/办理节点的有序条件规则与必选“否则”。缺少上下文或能力提示时保留只读/原范围,不把条件规则拆成平铺人员来源。共享草稿的读写权限遵循[流程管理委派](./administration.md#workflow-management)。
|
|
1258
|
+
|
|
1259
|
+
标准人员/角色来源只能在原上限内修改,复杂来源使用精确发布或冻结引用;连续主管叶子要求sequence。抄送、嵌套条件、发起自选与应用provider不在该编辑范围。变量必须在进入节点的所有路径上可用;可选事实只用于存在性判断。条件数、表达式与输入字节预算沿原契约执行。
|
|
1260
|
+
|
|
1261
|
+
新节点尚未填完标准成员/角色时可以保存草稿;正式发布与办理覆盖仍完整校验。服务端重新读取实际上下文,不信任浏览器自报目录或已校验标志。AI提案同样经过原binding/canvas门禁;不能把草稿可保存解释为可发布。
|
|
1262
|
+
|
|
1263
|
+
冲突、失权或结果未知时保留整个assignment及原operationId,不自动合并分支、不静默丢失条件。已进入流程的任务仍使用原冻结快照,新的规则不回写历史任务。源码同步、配置与发布分别核对原Head/版本和操作回执。
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "openxiangda",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.68.0",
|
|
4
4
|
"description": "OpenXiangda 2.0 的统一命令、应用 SDK、MCP 与中文 AI 技能资料。",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -95,13 +95,13 @@
|
|
|
95
95
|
"dayjs": "1.11.18",
|
|
96
96
|
"docx-preview": "0.3.7",
|
|
97
97
|
"elkjs": "0.12.0",
|
|
98
|
-
"openxiangda-cli": "2.10.
|
|
99
|
-
"openxiangda-contracts": "2.
|
|
100
|
-
"openxiangda-devkit-core": "2.
|
|
98
|
+
"openxiangda-cli": "2.10.8",
|
|
99
|
+
"openxiangda-contracts": "2.88.0",
|
|
100
|
+
"openxiangda-devkit-core": "2.66.0",
|
|
101
101
|
"openxiangda-legacy": "npm:openxiangda@1.0.269",
|
|
102
|
-
"openxiangda-mcp": "2.2.
|
|
103
|
-
"openxiangda-nest": "2.19.
|
|
104
|
-
"openxiangda-skill-kit": "2.3.
|
|
102
|
+
"openxiangda-mcp": "2.2.12",
|
|
103
|
+
"openxiangda-nest": "2.19.5",
|
|
104
|
+
"openxiangda-skill-kit": "2.3.114",
|
|
105
105
|
"xlsx": "https://github.com/1377385356/openxiangda/releases/download/vendor-mirror/xlsx-0.20.3.tgz"
|
|
106
106
|
},
|
|
107
107
|
"peerDependencies": {
|
|
@@ -167,42 +167,43 @@
|
|
|
167
167
|
},
|
|
168
168
|
"openxiangdaRelease": {
|
|
169
169
|
"schemaVersion": "openxiangda.release-notes/v1",
|
|
170
|
-
"version": "2.
|
|
170
|
+
"version": "2.68.0",
|
|
171
171
|
"status": "reviewed",
|
|
172
|
-
"title": "
|
|
173
|
-
"summary": "
|
|
172
|
+
"title": "PC流程管理、条件人员编辑与开发反馈整合",
|
|
173
|
+
"summary": "统一交付按动作授权的PC流程管理、条件人员规则编辑、Connected Dev原运行诊断与编译器任务前提投影,并同步业务迁移和发布指导。平台能力需配套服务端及管理前端后按明确环境启用。",
|
|
174
174
|
"newFeatures": [
|
|
175
|
-
"
|
|
176
|
-
"
|
|
177
|
-
"
|
|
178
|
-
"增加多组织、成员、会话与家校目录中文资料的同源发现和技能指引。"
|
|
175
|
+
"PC流程设计器按查看、编辑、发布和办理配置四种动作呈现已发布/草稿读面,失权或结果未知时保留输入和原操作查询。",
|
|
176
|
+
"条件人员规则支持有序条件与否则、完整assignment保留和发布上下文校验;新节点允许保存受限不完整草稿,正式发布仍严格。",
|
|
177
|
+
"MCP契约上下文增加分页prerequisites选择器,直接投影sealed compiler的能力与任务声明,不代替目标或角色验收。"
|
|
179
178
|
],
|
|
180
179
|
"fixes": [
|
|
181
|
-
"
|
|
180
|
+
"Connected Dev保留字段位置、原configurationRunId/causeCode与拒绝分类,避免对需要修配置、查原运行或TEST部署的问题一律建议重跑。",
|
|
181
|
+
"生产回退明确使用已发布配置和真实数据;补齐V1到V2业务迁移、PC流程授权及原结果恢复的单源资料。",
|
|
182
|
+
"条件规则排序按钮提供稳定可访问名称,同批更新CLI模板精确BOM。"
|
|
182
183
|
],
|
|
183
184
|
"affectedUsers": [
|
|
184
|
-
"
|
|
185
|
-
"使用
|
|
185
|
+
"维护V2应用和PC流程设计/办理配置的开发者与管理员。",
|
|
186
|
+
"使用CLI/MCP开展连接开发、声明检查和业务迁移的团队。"
|
|
186
187
|
],
|
|
187
188
|
"upgradeSteps": [
|
|
188
|
-
"
|
|
189
|
-
"
|
|
190
|
-
"
|
|
189
|
+
"按工作区锁定版本安装完整根包组合并刷新同版本Skill;不自动迁移V1项目。",
|
|
190
|
+
"平台先消费正式contracts2.88.0、同批浏览器SDK与sealed管理前端,并完成服务端与实际角色验收,再为明确TEST环境UUID启用委托流程管理。",
|
|
191
|
+
"已有未知操作继续查询原operationId/run;生产只晋级已经验收的原TEST版本。"
|
|
191
192
|
],
|
|
192
193
|
"knownLimitations": [
|
|
193
|
-
"
|
|
194
|
-
"
|
|
195
|
-
"
|
|
196
|
-
"
|
|
194
|
+
"SDK发行不等于平台部署或业务验收,环境开关默认空;仅安装npm包不会启用角色管理授权。",
|
|
195
|
+
"流程设计和授权管理本批仅针对PC,不扩大移动管理画布范围。",
|
|
196
|
+
"条件抄送、嵌套条件、发起自选和应用provider不在本次条件编辑范围;旧平台缺少上下文或能力时保持关闭。",
|
|
197
|
+
"测试数据回收仍仅native-data-only,复杂域与历史数据不能自动清理;语义扫描仍observe-only,不授予强制激活许可。"
|
|
197
198
|
],
|
|
198
199
|
"compatibility": {
|
|
199
|
-
"node": "Node.js 24 or newer for
|
|
200
|
+
"node": "Node.js 24 or newer for maintained toolchain",
|
|
200
201
|
"generation": "OpenXiangda V2; no automatic V1 migration",
|
|
201
|
-
"
|
|
202
|
+
"platform": "Paired contracts2.88.0 backend and sealed admin SDK required for new workflow features"
|
|
202
203
|
},
|
|
203
204
|
"issues": [],
|
|
204
|
-
"sha256": "
|
|
205
|
-
"url": "https://github.com/1377385356/openxiangda/releases/tag/v2.
|
|
205
|
+
"sha256": "ddfe1d0c13e0ab47aca67b35872af4563253a6f6c768f2945e2e9d60a374db1a",
|
|
206
|
+
"url": "https://github.com/1377385356/openxiangda/releases/tag/v2.68.0"
|
|
206
207
|
},
|
|
207
208
|
"scripts": {
|
|
208
209
|
"build": "node ../../scripts/prune-package-dist.mjs && tsc -p tsconfig.json && node scripts/copy-assets.mjs",
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "openxiangda.release-notes/v1",
|
|
3
|
+
"version": "2.68.0",
|
|
4
|
+
"status": "reviewed",
|
|
5
|
+
"title": "PC流程管理、条件人员编辑与开发反馈整合",
|
|
6
|
+
"summary": "统一交付按动作授权的PC流程管理、条件人员规则编辑、Connected Dev原运行诊断与编译器任务前提投影,并同步业务迁移和发布指导。平台能力需配套服务端及管理前端后按明确环境启用。",
|
|
7
|
+
"newFeatures": [
|
|
8
|
+
"PC流程设计器按查看、编辑、发布和办理配置四种动作呈现已发布/草稿读面,失权或结果未知时保留输入和原操作查询。",
|
|
9
|
+
"条件人员规则支持有序条件与否则、完整assignment保留和发布上下文校验;新节点允许保存受限不完整草稿,正式发布仍严格。",
|
|
10
|
+
"MCP契约上下文增加分页prerequisites选择器,直接投影sealed compiler的能力与任务声明,不代替目标或角色验收。"
|
|
11
|
+
],
|
|
12
|
+
"fixes": [
|
|
13
|
+
"Connected Dev保留字段位置、原configurationRunId/causeCode与拒绝分类,避免对需要修配置、查原运行或TEST部署的问题一律建议重跑。",
|
|
14
|
+
"生产回退明确使用已发布配置和真实数据;补齐V1到V2业务迁移、PC流程授权及原结果恢复的单源资料。",
|
|
15
|
+
"条件规则排序按钮提供稳定可访问名称,同批更新CLI模板精确BOM。"
|
|
16
|
+
],
|
|
17
|
+
"affectedUsers": [
|
|
18
|
+
"维护V2应用和PC流程设计/办理配置的开发者与管理员。",
|
|
19
|
+
"使用CLI/MCP开展连接开发、声明检查和业务迁移的团队。"
|
|
20
|
+
],
|
|
21
|
+
"upgradeSteps": [
|
|
22
|
+
"按工作区锁定版本安装完整根包组合并刷新同版本Skill;不自动迁移V1项目。",
|
|
23
|
+
"平台先消费正式contracts2.88.0、同批浏览器SDK与sealed管理前端,并完成服务端与实际角色验收,再为明确TEST环境UUID启用委托流程管理。",
|
|
24
|
+
"已有未知操作继续查询原operationId/run;生产只晋级已经验收的原TEST版本。"
|
|
25
|
+
],
|
|
26
|
+
"knownLimitations": [
|
|
27
|
+
"SDK发行不等于平台部署或业务验收,环境开关默认空;仅安装npm包不会启用角色管理授权。",
|
|
28
|
+
"流程设计和授权管理本批仅针对PC,不扩大移动管理画布范围。",
|
|
29
|
+
"条件抄送、嵌套条件、发起自选和应用provider不在本次条件编辑范围;旧平台缺少上下文或能力时保持关闭。",
|
|
30
|
+
"测试数据回收仍仅native-data-only,复杂域与历史数据不能自动清理;语义扫描仍observe-only,不授予强制激活许可。"
|
|
31
|
+
],
|
|
32
|
+
"compatibility": {
|
|
33
|
+
"node": "Node.js 24 or newer for maintained toolchain",
|
|
34
|
+
"generation": "OpenXiangda V2; no automatic V1 migration",
|
|
35
|
+
"platform": "Paired contracts2.88.0 backend and sealed admin SDK required for new workflow features"
|
|
36
|
+
},
|
|
37
|
+
"issues": [],
|
|
38
|
+
"sha256": "ddfe1d0c13e0ab47aca67b35872af4563253a6f6c768f2945e2e9d60a374db1a",
|
|
39
|
+
"url": "https://github.com/1377385356/openxiangda/releases/tag/v2.68.0"
|
|
40
|
+
}
|
package/skills/manifest.json
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
{
|
|
5
5
|
"name": "openxiangda-v2",
|
|
6
6
|
"description": "使用 OpenXiangda 2.0 从模糊业务想法、已有资料或具体变更出发,通过对话发现模块、完成详细产品设计,由当前 AI Agent 按需用 Image 2.5 等图片能力形成视觉参考,直接实现真实页面并在浏览器修正,再检查和交付应用;维护 1.x 应用时使用对应的 1.x 技能。",
|
|
7
|
-
"sha256": "
|
|
7
|
+
"sha256": "d96b6047804492a191368df505d9055abf81b312d68bb569758ccb4eef6b4062"
|
|
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.
|
|
44
|
-
pnpm dlx openxiangda@2.
|
|
45
|
-
pnpm dlx openxiangda@2.
|
|
46
|
-
pnpm dlx openxiangda@2.
|
|
43
|
+
pnpm dlx openxiangda@2.68.0 auth status --cwd <应用目录> --base-url <平台地址> --json
|
|
44
|
+
pnpm dlx openxiangda@2.68.0 login --cwd <应用目录> --base-url <平台地址>
|
|
45
|
+
pnpm dlx openxiangda@2.68.0 create <应用目录> --base-url <同一平台地址>
|
|
46
|
+
pnpm dlx openxiangda@2.68.0 skill install --force
|
|
47
47
|
```
|
|
48
48
|
|
|
49
49
|
创建前把产品要求的目标平台明确带入命令,不从旧登录态推断站点。已有工作区从原绑定恢复,平台不一致时先解决登录与目标,不改 link 文件跨站创建。
|
|
@@ -230,7 +230,7 @@ await saveWorkflowNodeConfiguration('requests', node.nodeId, {
|
|
|
230
230
|
|
|
231
231
|
打包和目标预检自动将含 `routing` 的 binding 纳入该能力的使用摘要,与平台编译结果严格对齐;无需应用手工填写能力清单或额外开启开关。
|
|
232
232
|
|
|
233
|
-
标准管理页的“流程定义 / 审批人路由”提供策略检索、规则维护和分页历史。应用工具页可直接嵌入 `WorkflowAssignmentRoutingManager`(`openxiangda/react`);单策略编辑可使用 `WorkflowAssignmentRoutingEditor`。放在现有 App/UI
|
|
233
|
+
标准管理页的“流程定义 / 审批人路由”提供策略检索、规则维护和分页历史。应用工具页可直接嵌入 `WorkflowAssignmentRoutingManager`(`openxiangda/react`);单策略编辑可使用 `WorkflowAssignmentRoutingEditor`。放在现有 App/UI 作用域内,保留后台路由和入口权限。读写都使用当前用户及当前挂载环境,该专项路由入口仍要求应用 superAdmin,角色维护委派不授予路由管理权。
|
|
234
234
|
|
|
235
235
|
规则核对只计算内容变化,打开规则表单后原样加入草稿不会产生多余修改。发生修订冲突时载入最新基准并保留整组草稿,再逐项核对;这个操作不会自动合并其他管理员的修改。窄屏工具栏允许换行,表格在内部滚动,规则表单按单列显示。
|
|
236
236
|
|
|
@@ -257,3 +257,23 @@ const history = await loadWorkflowAssignmentRoutingHistory('college-review', { l
|
|
|
257
257
|
保存的是整组规则,最多 256 条/256 KiB;最多 8 个维度、16 个来源,每维度 64 个匹配值。维度间同时满足、值内任意匹配,空 matches 为通用。可限定流程和审批节点,节点须带流程代码。时间为 `[validFrom,validTo)`。唯一最高优先级替换优先,`replace_then_append` 随后追加,`replace_only` 命中替换时忽略追加;没有替换时均采用默认来源再追加。追加按优先级降序、通用先专项、稳定代码排序,同来源同次只解析一次。
|
|
258
258
|
|
|
259
259
|
64 条以上规则同时命中、最高替换同级冲突、缺少事实、替换无人或候选越界都会明确阻塞,不自动通过或隐式兜底。预览和执行复用同一解析器;任务冻结规则修订和分派,管理员调整只影响未来进入。修改与发布使用同一环境锁,CAS 冲突重新读取基准、保留草稿并核对前后差异;未知结果保留完整原请求及 operationId 后显式重试。清空 rules 也产生修订和审计。发布不得改变在途同名策略语义,即便尚无补充规则;非空规则引用的来源和节点必须保留。
|
|
260
|
+
|
|
261
|
+
|
|
262
|
+
## PC 流程管理委派 {#workflow-management}
|
|
263
|
+
|
|
264
|
+
配套平台可为明确环境启用流程管理委派,再给应用角色授予指定流程的动作。平台部署开关 `OPENXIANGDA_WORKFLOW_MANAGEMENT_ENVIRONMENTS` 默认空,只接受真实环境UUID;它不是应用开发者可修改的授权声明。未启用时保留原管理员边界,装了新SDK不等于目标已开放。
|
|
265
|
+
|
|
266
|
+
| 动作 | 可执行范围 |
|
|
267
|
+
| --- | --- |
|
|
268
|
+
| `definition.read` | 查看已发布流程 |
|
|
269
|
+
| `draft.edit` | 读取并编辑共享草稿 |
|
|
270
|
+
| `publication.publish` | 读取共享草稿并正式发布;不隐含编辑权 |
|
|
271
|
+
| `handling.configure` | 维护已发布节点允许的办理配置;不授予拓扑/共享草稿编辑权 |
|
|
272
|
+
|
|
273
|
+
写动作包含必要的查看范围,但不相互授予其他写动作,也不授予成员管理、数据读写或再次委派权限。真实有效角色、有效期、流程目标和环境由平台重新核验;界面隐藏按钮只是呈现,不能替代服务端准入。
|
|
274
|
+
|
|
275
|
+
`WorkflowDesigner` 的已发布读面与共享草稿读面分开:只读/仅办理配置用户不读取草稿修订、草稿诊断或编排目录;编辑/发布用户按各自动作显示界面。流程设计和授权管理本轮只针对PC,移动审批办理页保持其独立业务范围。
|
|
276
|
+
|
|
277
|
+
权限失效时停止写操作并保留未保存输入。原操作结果未知时保留完整原请求/operationId,查询原结果;不因刷新、关闭窗口或换新键重发。确认成功的最小结果不冒充可读取的完整草稿;确认冲突后重新读取基线并由用户处理差异。仅因权限正在变更而明确未写入时,稍后仍沿原请求重试;其他未知不能当作未写入。
|
|
278
|
+
|
|
279
|
+
原管理员配置与新委派能力必须使用同批contracts、服务端、浏览器SDK和平台管理前端。不要复制授权判断、使用超管身份代验受委派角色,或把组件fixture验证当成目标实际授权验收。
|
|
@@ -27,6 +27,12 @@
|
|
|
27
27
|
- 标准审批、待办与通知:按需声明平台能力,见[工作流](workflow-events.md)。
|
|
28
28
|
- 真实事务或外部集成:使用[按需后端](backend.md),不为每张表重写 CRUD 控制器。
|
|
29
29
|
|
|
30
|
+
### 按任务读取声明前提
|
|
31
|
+
|
|
32
|
+
用契约读取入口的 `selector=prerequisites` 查看当前完整编译器推导的平台能力、资源、具名操作、流程和事件消费声明;再用返回的 `prerequisites:类型:代码` 选择器读取具体项。MCP `contract_describe` 使用该投影,按 `offset/limit` 分页;CLI 的日常 `check` 仍沿原编译与目标预检路径。
|
|
33
|
+
|
|
34
|
+
这一步只证明本地声明通过原编译器,保留配置/契约/编译摘要,不访问平台。具名授权、目录、文件、事务与流程前提沿原任务声明中的引用核对,不能从名称猜依赖;目标能力和当前用户权限仍分别由原平台预检与真实角色验证。原编译器报错时先修正其pointer,不能把未继续检查的部分当作通过。
|
|
35
|
+
|
|
30
36
|
### 判定是否真的需要 Nest 后端 {#backend-decision}
|
|
31
37
|
|
|
32
38
|
想写后端接口时,先按顺序核对平台已有的声明式答案;命中前几行的需求不得启用 Nest。
|
|
@@ -60,3 +66,5 @@
|
|
|
60
66
|
正式激活和业务运行证据分别记录,不用通过的 fixture 替代真实业务验收。
|
|
61
67
|
|
|
62
68
|
[AppSpec](appspec.md)保存业务意图、设计与交付记录,不复制字段 Schema、生成契约和部署状态。新应用维护具体设计和评审,复杂度随业务展开;既有小变更沿用有效设计,仅修订受影响记录,无行为变化可引用已有记录。每轮先读取当前规则、澄清业务、评估架构、权限和性能,随后实施与验证,发布后更新当前规格及交接。测试部署前需要设计和验收计划,生产晋级前需要绑定测试运行及包摘要的实际验收报告。
|
|
69
|
+
|
|
70
|
+
迁移已有1.x应用时,先补齐[业务迁移矩阵](upgrading.md#business-migration),再按模型、任务、角色、状态、文件和外部效果组织实施。不要只按表单字段清单判断迁移完成。Connected Dev可投影与需TEST正式部署的边界见[连接开发变化矩阵](getting-started.md#connected-development)。
|
|
@@ -68,10 +68,10 @@ MCP 服务随项目根包一起安装,AI 客户端的 stdio 连接仍需配置
|
|
|
68
68
|
以下命令的版本占位符由随包资料替换为该根包的精确版本。网站源码阅读者应先确认要使用的发行版本。
|
|
69
69
|
|
|
70
70
|
```bash
|
|
71
|
-
pnpm dlx openxiangda@2.
|
|
72
|
-
pnpm dlx openxiangda@2.
|
|
73
|
-
pnpm dlx openxiangda@2.
|
|
74
|
-
pnpm dlx openxiangda@2.
|
|
71
|
+
pnpm dlx openxiangda@2.68.0 skill install --force
|
|
72
|
+
pnpm dlx openxiangda@2.68.0 auth status --base-url <平台地址> --json
|
|
73
|
+
pnpm dlx openxiangda@2.68.0 login --cwd my-app --base-url https://platform.example.com
|
|
74
|
+
pnpm dlx openxiangda@2.68.0 create my-app --base-url https://platform.example.com
|
|
75
75
|
cd my-app
|
|
76
76
|
pnpm openxiangda context --json
|
|
77
77
|
pnpm openxiangda dev
|
|
@@ -137,6 +137,21 @@ AppSpec 随开发持续维护:测试发布前补齐总纲、关联变更与验
|
|
|
137
137
|
不兼容声明会明确报错,不能把旧流程偷偷当作本地新流程。共享测试数据的真实写入仍会影响同一数据集,
|
|
138
138
|
配置隔离不等于数据隔离。
|
|
139
139
|
|
|
140
|
+
按改动选择开发路径:
|
|
141
|
+
|
|
142
|
+
| 改动 | 当前支持路径 |
|
|
143
|
+
| --- | --- |
|
|
144
|
+
| React 页面与本地 Nest 实现 | 继续本地源码联调;是否启用 Nest 由业务需要决定 |
|
|
145
|
+
| 已有模型新增字段、页面声明、具名操作配置 | 由平台校验后投影到开发会话;不切换已发布 TEST Head |
|
|
146
|
+
| 新模型、已有字段类型/约束、数据策略、角色和流程定义 | 先核对差异,在 TEST 正式部署后再创建开发会话 |
|
|
147
|
+
| 后台事件、Timer、DateTrigger、浏览器文件流 | 通过已部署 TEST 制品验收;本地会话不接管线上后台执行 |
|
|
148
|
+
| 显式连接生产环境 | 使用已发布配置和真实生产数据;本地配置不投影,持续显示生产提示 |
|
|
149
|
+
|
|
150
|
+
支持新反馈的配套平台会给出 `developmentFeedback`:需要修改配置、重建会话、核对原运行或安排 TEST 发布。
|
|
151
|
+
CLI 保留字段 `pointer`、原 `configurationRunId`、`causeCode` 与 `requestId`;字段位置与HTTP端点分开显示。
|
|
152
|
+
进行中或结果不明时先核对原运行,不换随机键重建。下一步中的命令是固定建议,不会自动执行发布或重试;
|
|
153
|
+
未知反馈只提供排查指引,不推定原输入可以直接重试。
|
|
154
|
+
|
|
140
155
|
本地 Nest 使用开发会话自身的短期 OAuth 凭证,凭证只进入 Nest 环境。
|
|
141
156
|
它不会读取、旋转或撤销已部署后端的凭证。普通浏览器联调保留实际登录人的身份与角色;
|
|
142
157
|
loopback 代理仅注入配置选择证明,平台和 Nest 将该证明与签名调用中的 sessionId 核对。
|
|
@@ -206,9 +221,9 @@ MCP 的 `docs_read` 可以读取本说明,当前没有独立的源码操作 MC
|
|
|
206
221
|
无需本地工作区,使用本 Skill 随包精确版本或已安装的对应 CLI:
|
|
207
222
|
|
|
208
223
|
```bash
|
|
209
|
-
pnpm dlx openxiangda@2.
|
|
210
|
-
pnpm dlx openxiangda@2.
|
|
211
|
-
pnpm dlx openxiangda@2.
|
|
224
|
+
pnpm dlx openxiangda@2.68.0 auth status --base-url <平台> --json
|
|
225
|
+
pnpm dlx openxiangda@2.68.0 source resolve <仓库URL> --base-url <平台> --json
|
|
226
|
+
pnpm dlx openxiangda@2.68.0 source clone <仓库URL> <新目录> --base-url <平台> --json
|
|
212
227
|
```
|
|
213
228
|
|
|
214
229
|
登录缺失或站点不匹配时,先按该平台执行 login。resolve 根据平台已经登记的绑定返回
|
|
@@ -98,7 +98,7 @@ MCP 使用项目锁定的根包;在客户端配置下列 stdio 启动参数,
|
|
|
98
98
|
|
|
99
99
|
## contract_describe
|
|
100
100
|
|
|
101
|
-
查看应用契约。默认返回有界索引;用 selector 读取模型、流程、能力,或 navigation/permissions
|
|
101
|
+
查看应用契约。默认返回有界索引;用 selector 读取模型、流程、能力,或 navigation/permissions/prerequisites。任务前提来自原编译器,不代表目标或角色可用。菜单建议只复制一次,运行时不自动应用。
|
|
102
102
|
|
|
103
103
|
- 只读:是
|
|
104
104
|
- 可替换文件或改变远端状态:否
|
|
@@ -112,7 +112,7 @@ MCP 使用项目锁定的根包;在客户端配置下列 stdio 启动参数,
|
|
|
112
112
|
"type": "object",
|
|
113
113
|
"properties": {
|
|
114
114
|
"selector": {
|
|
115
|
-
"description": "index、navigation、permissions、all 或索引给出的选择器",
|
|
115
|
+
"description": "index、navigation、permissions、prerequisites、all 或索引给出的选择器",
|
|
116
116
|
"type": "string",
|
|
117
117
|
"maxLength": 200
|
|
118
118
|
},
|
|
@@ -49,3 +49,28 @@
|
|
|
49
49
|
保留失败指针和变更差异。资料缺失或摘要不符时重新安装该精确版本,不能复制其他版本的文档掩盖问题。应用版本回滚、依赖降级和数据/迁移恢复分别处理;降级 npm 包不等于撤回已经发生的业务写入。
|
|
50
50
|
|
|
51
51
|
平台能力不足时交由平台维护者升级,不通过删除字段、改生成契约或退回 1.x 接口绕过。开发者无需执行工具链 npm 发包或平台数据库迁移。
|
|
52
|
+
|
|
53
|
+
## 从 1.x 迁移业务到 2.0 {#business-migration}
|
|
54
|
+
|
|
55
|
+
迁移按用户任务验收,不能只以“字段已搬过来、CRUD 页面能打开”为完成。1.x 继续使用独立维护工具;在原业务尚未完成切换时保留它的入口、数据和恢复路径,不让 V2 编译器兼容或发布 V1 工作区。
|
|
56
|
+
|
|
57
|
+
先在 AppSpec 的当前迁移变更中保存下列矩阵,引用原资料/页面/流程的精确来源及现行版本;Schema、Head、部署状态仍从原平台读取,不复制为另一份权威。已有确认可引用,不重新编造用户确认。
|
|
58
|
+
|
|
59
|
+
| 核对维度 | 必须记录 | 完成证据 |
|
|
60
|
+
| --- | --- | --- |
|
|
61
|
+
| 用户任务与入口 | 谁、何时、从哪个入口完成什么;原入口与新入口映射 | 对应角色走通完整任务,结果读回 |
|
|
62
|
+
| 页面与设备 | 列表、详情、编辑、自定义报表及必要设备范围 | 真实平台入口交互;未要求移动的管理页面不额外扩范围 |
|
|
63
|
+
| 角色与数据范围 | 角色并集、组织/部门/本人范围、字段读写与越权拒绝 | 至少允许和拒绝各一条;超管不能代验普通角色 |
|
|
64
|
+
| 模型与历史数据 | 原字段含义、精度、空值、子表、关系、状态及历史记录归属 | 原样本与新结果逐项对照;原ID映射和不可迁移项明确 |
|
|
65
|
+
| 流程与状态分支 | 发起、办理、转交、退回、撤回、补正、抄送及终态 | 必要正常/异常分支、实际办理人、待办和业务状态一致 |
|
|
66
|
+
| 文件与附件 | fileId、记录绑定、原存储位置、下载权限、引用关系 | 历史样本可授权读取;不能按当前存储默认值猜归属 |
|
|
67
|
+
| 后台与外部集成 | 事件、Timer、通知、外部订单/账务等效果及原键 | 原操作回执、外部读回、失败和未知结果恢复路径 |
|
|
68
|
+
| 并发和恢复 | 重复提交、版本冲突、网络丢响应、处理中退出 | 沿原键查询和恢复;无重复副作用、不丢已确认结果 |
|
|
69
|
+
| 发布与切换 | TEST版本、验收人、停写/流量切换、旧系统职责、回退边界 | TEST成功版本原样晋级,关键数据与任务再读回 |
|
|
70
|
+
| 测试收尾 | 新测试记录来源、允许清理的域、保留证据和未知效果 | 原owner核对并清理;不支持的域标为未回收,历史数据不批量删除 |
|
|
71
|
+
|
|
72
|
+
每一行绑定验收用例ID、来源、目标TEST版本/包摘要、实际角色、结果和证据。使用“通过、失败、未覆盖、不适用(附原因)”区分状态,不能把未实现分支写成通过。临时脚本或模拟接口只证明其覆盖的行为;真实角色、原文件与外部效果另行验收。
|
|
73
|
+
|
|
74
|
+
建议先选代表任务覆盖公共边界,再批量迁移相同能力;无需为每条流程重复平台完整数据库/队列矩阵。存在未知外部写入时,先按原请求键与业务编号读回,不切换身份、换键重发或回放整个流程。数据库/外部业务效果已提交后,回滚代码不等于撤销效果;按原恢复方案处理。
|
|
75
|
+
|
|
76
|
+
迁移方案和实施记录属于应用项目,通用规则从本专题引用。最后按[验收](testing.md)和[交付](delivery.md)关闭原TEST版本;不能用新构建替换已验收候选。
|
|
@@ -1250,3 +1250,14 @@ pnpm openxiangda workflow sync request-review --from production --to test \
|
|
|
1250
1250
|
`--copy-handling-defaults` 可复制办理模式、按钮和角色覆盖;两边的指定人员覆盖都保持环境所有。源环境不被修改。同步后的目标画布草稿若基线已经过时,需要重读或合并,不能覆盖新的 Head。请求不确定时,保留相同操作标识、两个修订号和完整参数重试;不要换标识重做。CLI 与 MCP 共用这些权限、校验、幂等和发布入口。
|
|
1251
1251
|
|
|
1252
1252
|
部署前记录目标流程修订号,激活前再次核对。期间若有人发布了画布,激活返回 `WORKFLOW_SOURCE_HEAD_CHANGED`,应用 Head 与流程 Head 在同一事务回滚;已准备的不可变登记保留。同步成功、源码检查成功、包发布与真实审批验收分别核对。
|
|
1253
|
+
|
|
1254
|
+
|
|
1255
|
+
## 条件人员规则的 PC 编辑 {#conditional-people-editor}
|
|
1256
|
+
|
|
1257
|
+
配套平台返回已发布的条件人员上下文,且当前目录声明 `conditionalAssignments: true` 时,PC流程编辑器可维护审批/办理节点的有序条件规则与必选“否则”。缺少上下文或能力提示时保留只读/原范围,不把条件规则拆成平铺人员来源。共享草稿的读写权限遵循[流程管理委派](administration.md#workflow-management)。
|
|
1258
|
+
|
|
1259
|
+
标准人员/角色来源只能在原上限内修改,复杂来源使用精确发布或冻结引用;连续主管叶子要求sequence。抄送、嵌套条件、发起自选与应用provider不在该编辑范围。变量必须在进入节点的所有路径上可用;可选事实只用于存在性判断。条件数、表达式与输入字节预算沿原契约执行。
|
|
1260
|
+
|
|
1261
|
+
新节点尚未填完标准成员/角色时可以保存草稿;正式发布与办理覆盖仍完整校验。服务端重新读取实际上下文,不信任浏览器自报目录或已校验标志。AI提案同样经过原binding/canvas门禁;不能把草稿可保存解释为可发布。
|
|
1262
|
+
|
|
1263
|
+
冲突、失权或结果未知时保留整个assignment及原operationId,不自动合并分支、不静默丢失条件。已进入流程的任务仍使用原冻结快照,新的规则不回写历史任务。源码同步、配置与发布分别核对原Head/版本和操作回执。
|
package/releases/2.67.3.json
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"schemaVersion": "openxiangda.release-notes/v1",
|
|
3
|
-
"version": "2.67.3",
|
|
4
|
-
"status": "reviewed",
|
|
5
|
-
"title": "条件规则安全源码往返与 TEST 操作指引",
|
|
6
|
-
"summary": "增加 Source v2 条件人员覆盖的安全读取与显式源码采用,同时包含已合入主线的 TEST 原生数据回收操作和多组织中文指引。平台条件审批与画布能力仍遵循独立启用门禁,不包含生产部署。",
|
|
7
|
-
"newFeatures": [
|
|
8
|
-
"Source v2 保留条件顺序、标签、otherwise 和非指定人员来源;环境指定人员叶子只投影数量。",
|
|
9
|
-
"显式采用 handling 时,整个人员规则受本地冻结默认、已发布来源和事实校验约束;任一指定人员叶子使整项规则保持不导入并返回提示。",
|
|
10
|
-
"共享 CLI/MCP 目录提供 TEST 原生数据批次回收的 prepare/status/stop/preview/execute,复用原 repair 所有者和 digest 恢复契约,不自动执行清理。",
|
|
11
|
-
"增加多组织、成员、会话与家校目录中文资料的同源发现和技能指引。"
|
|
12
|
-
],
|
|
13
|
-
"fixes": [
|
|
14
|
-
"条件 handling 导入使用节点独立绑定,避免改变其他共享默认绑定节点。"
|
|
15
|
-
],
|
|
16
|
-
"affectedUsers": [
|
|
17
|
-
"维护条件审批源码、读取平台流程导出文件或显式采用节点办理默认值的 V2 开发者。",
|
|
18
|
-
"使用 TEST 原生数据回收或多组织目录操作的 CLI/MCP 用户。"
|
|
19
|
-
],
|
|
20
|
-
"upgradeSteps": [
|
|
21
|
-
"按工作区锁定工具链升级并核对当前引擎;稳定 V1 不自动迁移。",
|
|
22
|
-
"平台须先接入已发布的对应 contracts 制品;旧服务器不支持的能力继续明确拒绝。",
|
|
23
|
-
"导入前检查来源摘要和权限边界;只有明确需要时才使用 --adopt-handling-defaults。"
|
|
24
|
-
],
|
|
25
|
-
"knownLimitations": [
|
|
26
|
-
"Source v2/离线导入不是条件审批端到端启用证明;平台注册、capability、PC 编辑和业务验收仍须完整闭环。",
|
|
27
|
-
"含指定人员的条件规则整体不导入,不会复制私人名单,也不会合并角色分支作为替代。",
|
|
28
|
-
"本次包发布不包括平台服务部署、数据库数据修改或实际生产/用户业务验收。",
|
|
29
|
-
"多组织应用 SDK 与组织数据权限的未接通部分在资料中明确标注,不能按设计意图推断权限已生效。"
|
|
30
|
-
],
|
|
31
|
-
"compatibility": {
|
|
32
|
-
"node": "Node.js 24 or newer for the maintained toolchain",
|
|
33
|
-
"generation": "OpenXiangda V2; no automatic V1 migration",
|
|
34
|
-
"sourceBundle": "v1 remains supported; v2 requires a matching consumer"
|
|
35
|
-
},
|
|
36
|
-
"issues": [],
|
|
37
|
-
"sha256": "348cb90778fad0d892cd38ba9a8c9d5de24437be95f892fbf5bc38ef62e46437",
|
|
38
|
-
"url": "https://github.com/1377385356/openxiangda/releases/tag/v2.67.3"
|
|
39
|
-
}
|