@lokvis/runtime 0.4.1 → 0.5.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/executor.d.ts.map +1 -1
- package/dist/executor.js +15 -0
- package/dist/executor.js.map +1 -1
- package/package.json +2 -2
- package/src/executor.ts +16 -0
package/dist/executor.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,KAAK,EACL,OAAO,EAEP,QAAQ,EAGR,cAAc,EACf,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAmBnE,qBAAqB;AACrB,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,UAAU,CAAC;IACvB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACpB;AA0GD,mBAAmB;AACnB,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,OAAO,CAAsC;IACrD,4CAA4C;IAC5C,OAAO,CAAC,eAAe,CAAiC;gBAE5C,MAAM,EAAE,cAAc;IAIlC,YAAY;IACN,OAAO,CACX,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,GAC1B,OAAO,CAAC,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,KAAK,EACL,OAAO,EAEP,QAAQ,EAGR,cAAc,EACf,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAmBnE,qBAAqB;AACrB,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,UAAU,CAAC;IACvB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACpB;AA0GD,mBAAmB;AACnB,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,OAAO,CAAsC;IACrD,4CAA4C;IAC5C,OAAO,CAAC,eAAe,CAAiC;gBAE5C,MAAM,EAAE,cAAc;IAIlC,YAAY;IACN,OAAO,CACX,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,GAC1B,OAAO,CAAC,cAAc,CAAC;IA2L1B,WAAW;IACL,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAU/C;;;;;;;OAOG;IACH,SAAS,IAAI,IAAI;IAOjB,WAAW;IACL,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO9C,WAAW;IACL,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS/C;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAMrB,+BAA+B;IAC/B,OAAO,CAAC,aAAa;CAOtB"}
|
package/dist/executor.js
CHANGED
|
@@ -151,6 +151,13 @@ export class WorkflowExecutor {
|
|
|
151
151
|
// 保存原始输入资产,每个 target 执行前重置
|
|
152
152
|
const inputAssets = [...currentAssets];
|
|
153
153
|
const allOutputs = [];
|
|
154
|
+
/**
|
|
155
|
+
* 各 transform 节点的输出 AssetId(按 node.id 索引)。
|
|
156
|
+
* 仅单 target 场景填充(多 target 同一节点会有多份输出,
|
|
157
|
+
* 索引歧义,留空让调用方走事件总线监听 node:finished)。
|
|
158
|
+
*/
|
|
159
|
+
const stepOutputs = {};
|
|
160
|
+
const isSingleTarget = targetParamSets.length === 1;
|
|
154
161
|
for (const targetParams of targetParamSets) {
|
|
155
162
|
// 每个 target 开始前重置为原始输入
|
|
156
163
|
currentAssets = [...inputAssets];
|
|
@@ -193,6 +200,11 @@ export class WorkflowExecutor {
|
|
|
193
200
|
const ctx = createExecutionContext(workflowId, node.id, abortController.signal);
|
|
194
201
|
const outputs = await impl.execute(currentAssets, mergedParams, ctx);
|
|
195
202
|
currentAssets = outputs;
|
|
203
|
+
// 单 target 时记录该节点输出,供调用方读取中间结果
|
|
204
|
+
// (多 target 场景跳过,避免 last-write-wins 语义歧义)
|
|
205
|
+
if (isSingleTarget) {
|
|
206
|
+
stepOutputs[node.id] = currentAssets.map((a) => a.id);
|
|
207
|
+
}
|
|
196
208
|
this.config.eventBus.emit({
|
|
197
209
|
type: 'node:finished',
|
|
198
210
|
workflowId,
|
|
@@ -211,6 +223,9 @@ export class WorkflowExecutor {
|
|
|
211
223
|
const result = {
|
|
212
224
|
workflowId,
|
|
213
225
|
outputs: allOutputs.map((a) => a.id),
|
|
226
|
+
// 单 target 且非取消时暴露中间步骤输出;其他场景保持 undefined,
|
|
227
|
+
// 调用方需要中间结果时应改用 eventBus 监听 node:finished 事件
|
|
228
|
+
stepOutputs: isSingleTarget && state.status !== 'cancelled' ? stepOutputs : undefined,
|
|
214
229
|
duration: Date.now() - startTime,
|
|
215
230
|
status: state.status === 'cancelled' ? 'cancelled' : 'completed',
|
|
216
231
|
};
|
package/dist/executor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lokvis/runtime",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"description": "Lokvis Runtime - Browser-local workflow execution engine",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"dexie": "^4.0.10",
|
|
28
28
|
"mitt": "^3.0.1",
|
|
29
|
-
"@lokvis/schema": "0.
|
|
29
|
+
"@lokvis/schema": "0.5.0"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
32
|
"fake-indexeddb": "^6.0.0",
|
package/src/executor.ts
CHANGED
|
@@ -219,6 +219,13 @@ export class WorkflowExecutor {
|
|
|
219
219
|
// 保存原始输入资产,每个 target 执行前重置
|
|
220
220
|
const inputAssets = [...currentAssets];
|
|
221
221
|
const allOutputs: Asset[] = [];
|
|
222
|
+
/**
|
|
223
|
+
* 各 transform 节点的输出 AssetId(按 node.id 索引)。
|
|
224
|
+
* 仅单 target 场景填充(多 target 同一节点会有多份输出,
|
|
225
|
+
* 索引歧义,留空让调用方走事件总线监听 node:finished)。
|
|
226
|
+
*/
|
|
227
|
+
const stepOutputs: Record<string, AssetId[]> = {};
|
|
228
|
+
const isSingleTarget = targetParamSets.length === 1;
|
|
222
229
|
|
|
223
230
|
for (const targetParams of targetParamSets) {
|
|
224
231
|
// 每个 target 开始前重置为原始输入
|
|
@@ -273,6 +280,12 @@ export class WorkflowExecutor {
|
|
|
273
280
|
const outputs = await impl.execute(currentAssets, mergedParams, ctx);
|
|
274
281
|
currentAssets = outputs;
|
|
275
282
|
|
|
283
|
+
// 单 target 时记录该节点输出,供调用方读取中间结果
|
|
284
|
+
// (多 target 场景跳过,避免 last-write-wins 语义歧义)
|
|
285
|
+
if (isSingleTarget) {
|
|
286
|
+
stepOutputs[node.id] = currentAssets.map((a) => a.id);
|
|
287
|
+
}
|
|
288
|
+
|
|
276
289
|
this.config.eventBus.emit({
|
|
277
290
|
type: 'node:finished',
|
|
278
291
|
workflowId,
|
|
@@ -293,6 +306,9 @@ export class WorkflowExecutor {
|
|
|
293
306
|
const result: WorkflowResult = {
|
|
294
307
|
workflowId,
|
|
295
308
|
outputs: allOutputs.map((a) => a.id),
|
|
309
|
+
// 单 target 且非取消时暴露中间步骤输出;其他场景保持 undefined,
|
|
310
|
+
// 调用方需要中间结果时应改用 eventBus 监听 node:finished 事件
|
|
311
|
+
stepOutputs: isSingleTarget && state.status !== 'cancelled' ? stepOutputs : undefined,
|
|
296
312
|
duration: Date.now() - startTime,
|
|
297
313
|
status: state.status === 'cancelled' ? 'cancelled' : 'completed',
|
|
298
314
|
};
|