@elaraai/e3-core 0.0.2-beta.4 → 0.0.2-beta.41
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/README.md +25 -22
- package/dist/src/dataflow/api-compat.d.ts +90 -0
- package/dist/src/dataflow/api-compat.d.ts.map +1 -0
- package/dist/src/dataflow/api-compat.js +139 -0
- package/dist/src/dataflow/api-compat.js.map +1 -0
- package/dist/src/dataflow/index.d.ts +18 -0
- package/dist/src/dataflow/index.d.ts.map +1 -0
- package/dist/src/dataflow/index.js +23 -0
- package/dist/src/dataflow/index.js.map +1 -0
- package/dist/src/dataflow/orchestrator/LocalOrchestrator.d.ts +76 -0
- package/dist/src/dataflow/orchestrator/LocalOrchestrator.d.ts.map +1 -0
- package/dist/src/dataflow/orchestrator/LocalOrchestrator.js +695 -0
- package/dist/src/dataflow/orchestrator/LocalOrchestrator.js.map +1 -0
- package/dist/src/dataflow/orchestrator/index.d.ts +12 -0
- package/dist/src/dataflow/orchestrator/index.d.ts.map +1 -0
- package/dist/src/dataflow/orchestrator/index.js +12 -0
- package/dist/src/dataflow/orchestrator/index.js.map +1 -0
- package/dist/src/dataflow/orchestrator/interfaces.d.ts +163 -0
- package/dist/src/dataflow/orchestrator/interfaces.d.ts.map +1 -0
- package/dist/src/dataflow/orchestrator/interfaces.js +52 -0
- package/dist/src/dataflow/orchestrator/interfaces.js.map +1 -0
- package/dist/src/dataflow/state-store/FileStateStore.d.ts +67 -0
- package/dist/src/dataflow/state-store/FileStateStore.d.ts.map +1 -0
- package/dist/src/dataflow/state-store/FileStateStore.js +300 -0
- package/dist/src/dataflow/state-store/FileStateStore.js.map +1 -0
- package/dist/src/dataflow/state-store/InMemoryStateStore.d.ts +42 -0
- package/dist/src/dataflow/state-store/InMemoryStateStore.d.ts.map +1 -0
- package/dist/src/dataflow/state-store/InMemoryStateStore.js +229 -0
- package/dist/src/dataflow/state-store/InMemoryStateStore.js.map +1 -0
- package/dist/src/dataflow/state-store/index.d.ts +13 -0
- package/dist/src/dataflow/state-store/index.d.ts.map +1 -0
- package/dist/src/dataflow/state-store/index.js +13 -0
- package/dist/src/dataflow/state-store/index.js.map +1 -0
- package/dist/src/dataflow/state-store/interfaces.d.ts +159 -0
- package/dist/src/dataflow/state-store/interfaces.d.ts.map +1 -0
- package/dist/src/dataflow/state-store/interfaces.js +6 -0
- package/dist/src/dataflow/state-store/interfaces.js.map +1 -0
- package/dist/src/dataflow/steps.d.ts +222 -0
- package/dist/src/dataflow/steps.d.ts.map +1 -0
- package/dist/src/dataflow/steps.js +707 -0
- package/dist/src/dataflow/steps.js.map +1 -0
- package/dist/src/dataflow/types.d.ts +127 -0
- package/dist/src/dataflow/types.d.ts.map +1 -0
- package/dist/src/dataflow/types.js +7 -0
- package/dist/src/dataflow/types.js.map +1 -0
- package/dist/src/dataflow.d.ts +113 -38
- package/dist/src/dataflow.d.ts.map +1 -1
- package/dist/src/dataflow.js +269 -416
- package/dist/src/dataflow.js.map +1 -1
- package/dist/src/dataset-refs.d.ts +124 -0
- package/dist/src/dataset-refs.d.ts.map +1 -0
- package/dist/src/dataset-refs.js +319 -0
- package/dist/src/dataset-refs.js.map +1 -0
- package/dist/src/errors.d.ts +39 -9
- package/dist/src/errors.d.ts.map +1 -1
- package/dist/src/errors.js +51 -8
- package/dist/src/errors.js.map +1 -1
- package/dist/src/execution/LocalTaskRunner.d.ts +73 -0
- package/dist/src/execution/LocalTaskRunner.d.ts.map +1 -0
- package/dist/src/execution/LocalTaskRunner.js +399 -0
- package/dist/src/execution/LocalTaskRunner.js.map +1 -0
- package/dist/src/execution/MockTaskRunner.d.ts +49 -0
- package/dist/src/execution/MockTaskRunner.d.ts.map +1 -0
- package/dist/src/execution/MockTaskRunner.js +54 -0
- package/dist/src/execution/MockTaskRunner.js.map +1 -0
- package/dist/src/execution/index.d.ts +16 -0
- package/dist/src/execution/index.d.ts.map +1 -0
- package/dist/src/execution/index.js +8 -0
- package/dist/src/execution/index.js.map +1 -0
- package/dist/src/execution/interfaces.d.ts +246 -0
- package/dist/src/execution/interfaces.d.ts.map +1 -0
- package/dist/src/execution/interfaces.js +6 -0
- package/dist/src/execution/interfaces.js.map +1 -0
- package/dist/src/execution/processHelpers.d.ts +20 -0
- package/dist/src/execution/processHelpers.d.ts.map +1 -0
- package/dist/src/execution/processHelpers.js +62 -0
- package/dist/src/execution/processHelpers.js.map +1 -0
- package/dist/src/executions.d.ts +71 -104
- package/dist/src/executions.d.ts.map +1 -1
- package/dist/src/executions.js +110 -476
- package/dist/src/executions.js.map +1 -1
- package/dist/src/index.d.ts +19 -9
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +48 -18
- package/dist/src/index.js.map +1 -1
- package/dist/src/objects.d.ts +8 -51
- package/dist/src/objects.d.ts.map +1 -1
- package/dist/src/objects.js +13 -230
- package/dist/src/objects.js.map +1 -1
- package/dist/src/packages.d.ts +22 -14
- package/dist/src/packages.d.ts.map +1 -1
- package/dist/src/packages.js +134 -88
- package/dist/src/packages.js.map +1 -1
- package/dist/src/storage/in-memory/InMemoryRepoStore.d.ts +35 -0
- package/dist/src/storage/in-memory/InMemoryRepoStore.d.ts.map +1 -0
- package/dist/src/storage/in-memory/InMemoryRepoStore.js +107 -0
- package/dist/src/storage/in-memory/InMemoryRepoStore.js.map +1 -0
- package/dist/src/storage/in-memory/InMemoryStorage.d.ts +139 -0
- package/dist/src/storage/in-memory/InMemoryStorage.d.ts.map +1 -0
- package/dist/src/storage/in-memory/InMemoryStorage.js +439 -0
- package/dist/src/storage/in-memory/InMemoryStorage.js.map +1 -0
- package/dist/src/storage/in-memory/index.d.ts +12 -0
- package/dist/src/storage/in-memory/index.d.ts.map +1 -0
- package/dist/src/storage/in-memory/index.js +12 -0
- package/dist/src/storage/in-memory/index.js.map +1 -0
- package/dist/src/storage/index.d.ts +18 -0
- package/dist/src/storage/index.d.ts.map +1 -0
- package/dist/src/storage/index.js +10 -0
- package/dist/src/storage/index.js.map +1 -0
- package/dist/src/storage/interfaces.d.ts +581 -0
- package/dist/src/storage/interfaces.d.ts.map +1 -0
- package/dist/src/storage/interfaces.js +6 -0
- package/dist/src/storage/interfaces.js.map +1 -0
- package/dist/src/storage/local/LocalBackend.d.ts +56 -0
- package/dist/src/storage/local/LocalBackend.d.ts.map +1 -0
- package/dist/src/storage/local/LocalBackend.js +145 -0
- package/dist/src/storage/local/LocalBackend.js.map +1 -0
- package/dist/src/storage/local/LocalDatasetRefStore.d.ts +22 -0
- package/dist/src/storage/local/LocalDatasetRefStore.d.ts.map +1 -0
- package/dist/src/storage/local/LocalDatasetRefStore.js +118 -0
- package/dist/src/storage/local/LocalDatasetRefStore.js.map +1 -0
- package/dist/src/storage/local/LocalLockService.d.ts +111 -0
- package/dist/src/storage/local/LocalLockService.d.ts.map +1 -0
- package/dist/src/storage/local/LocalLockService.js +355 -0
- package/dist/src/storage/local/LocalLockService.js.map +1 -0
- package/dist/src/storage/local/LocalLogStore.d.ts +23 -0
- package/dist/src/storage/local/LocalLogStore.d.ts.map +1 -0
- package/dist/src/storage/local/LocalLogStore.js +66 -0
- package/dist/src/storage/local/LocalLogStore.js.map +1 -0
- package/dist/src/storage/local/LocalObjectStore.d.ts +55 -0
- package/dist/src/storage/local/LocalObjectStore.d.ts.map +1 -0
- package/dist/src/storage/local/LocalObjectStore.js +300 -0
- package/dist/src/storage/local/LocalObjectStore.js.map +1 -0
- package/dist/src/storage/local/LocalRefStore.d.ts +50 -0
- package/dist/src/storage/local/LocalRefStore.d.ts.map +1 -0
- package/dist/src/storage/local/LocalRefStore.js +337 -0
- package/dist/src/storage/local/LocalRefStore.js.map +1 -0
- package/dist/src/storage/local/LocalRepoStore.d.ts +55 -0
- package/dist/src/storage/local/LocalRepoStore.d.ts.map +1 -0
- package/dist/src/storage/local/LocalRepoStore.js +365 -0
- package/dist/src/storage/local/LocalRepoStore.js.map +1 -0
- package/dist/src/storage/local/gc.d.ts +92 -0
- package/dist/src/storage/local/gc.d.ts.map +1 -0
- package/dist/src/storage/local/gc.js +377 -0
- package/dist/src/storage/local/gc.js.map +1 -0
- package/dist/src/storage/local/index.d.ts +18 -0
- package/dist/src/storage/local/index.d.ts.map +1 -0
- package/dist/src/storage/local/index.js +18 -0
- package/dist/src/storage/local/index.js.map +1 -0
- package/dist/src/storage/local/localHelpers.d.ts +25 -0
- package/dist/src/storage/local/localHelpers.d.ts.map +1 -0
- package/dist/src/storage/local/localHelpers.js +69 -0
- package/dist/src/storage/local/localHelpers.js.map +1 -0
- package/dist/src/{repository.d.ts → storage/local/repository.d.ts} +8 -4
- package/dist/src/storage/local/repository.d.ts.map +1 -0
- package/dist/src/{repository.js → storage/local/repository.js} +31 -29
- package/dist/src/storage/local/repository.js.map +1 -0
- package/dist/src/tasks.d.ts +16 -10
- package/dist/src/tasks.d.ts.map +1 -1
- package/dist/src/tasks.js +35 -41
- package/dist/src/tasks.js.map +1 -1
- package/dist/src/test-helpers.d.ts +5 -4
- package/dist/src/test-helpers.d.ts.map +1 -1
- package/dist/src/test-helpers.js +9 -21
- package/dist/src/test-helpers.js.map +1 -1
- package/dist/src/transfer/InMemoryTransferBackend.d.ts +66 -0
- package/dist/src/transfer/InMemoryTransferBackend.d.ts.map +1 -0
- package/dist/src/transfer/InMemoryTransferBackend.js +166 -0
- package/dist/src/transfer/InMemoryTransferBackend.js.map +1 -0
- package/dist/src/transfer/index.d.ts +8 -0
- package/dist/src/transfer/index.d.ts.map +1 -0
- package/dist/src/transfer/index.js +9 -0
- package/dist/src/transfer/index.js.map +1 -0
- package/dist/src/transfer/interfaces.d.ts +103 -0
- package/dist/src/transfer/interfaces.d.ts.map +1 -0
- package/dist/src/transfer/interfaces.js +6 -0
- package/dist/src/transfer/interfaces.js.map +1 -0
- package/dist/src/transfer/types.d.ts +79 -0
- package/dist/src/transfer/types.d.ts.map +1 -0
- package/dist/src/transfer/types.js +58 -0
- package/dist/src/transfer/types.js.map +1 -0
- package/dist/src/trees.d.ts +147 -59
- package/dist/src/trees.d.ts.map +1 -1
- package/dist/src/trees.js +372 -419
- package/dist/src/trees.js.map +1 -1
- package/dist/src/uuid.d.ts +26 -0
- package/dist/src/uuid.d.ts.map +1 -0
- package/dist/src/uuid.js +80 -0
- package/dist/src/uuid.js.map +1 -0
- package/dist/src/workspaceStatus.d.ts +6 -4
- package/dist/src/workspaceStatus.d.ts.map +1 -1
- package/dist/src/workspaceStatus.js +43 -49
- package/dist/src/workspaceStatus.js.map +1 -1
- package/dist/src/workspaces.d.ts +35 -47
- package/dist/src/workspaces.d.ts.map +1 -1
- package/dist/src/workspaces.js +194 -156
- package/dist/src/workspaces.js.map +1 -1
- package/package.json +4 -4
- package/dist/src/gc.d.ts +0 -54
- package/dist/src/gc.d.ts.map +0 -1
- package/dist/src/gc.js +0 -233
- package/dist/src/gc.js.map +0 -1
- package/dist/src/repository.d.ts.map +0 -1
- package/dist/src/repository.js.map +0 -1
- package/dist/src/workspaceLock.d.ts +0 -67
- package/dist/src/workspaceLock.d.ts.map +0 -1
- package/dist/src/workspaceLock.js +0 -217
- package/dist/src/workspaceLock.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"steps.js","sourceRoot":"","sources":["../../../src/dataflow/steps.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
|
+
* Licensed under BSL 1.1. See LICENSE for details.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Resumable dataflow execution types.
|
|
7
|
+
*
|
|
8
|
+
* These types support both local and cloud execution by separating
|
|
9
|
+
* execution state from orchestration. The state can be persisted to
|
|
10
|
+
* a file (local) or DynamoDB (cloud) and resumed after interruption.
|
|
11
|
+
*
|
|
12
|
+
* Types are derived from EastType definitions in @elaraai/e3-types using
|
|
13
|
+
* ValueTypeOf for proper branded variant/option support.
|
|
14
|
+
*/
|
|
15
|
+
import { type ValueTypeOf } from '@elaraai/east';
|
|
16
|
+
import { TaskStateType, DataflowGraphTaskType, DataflowGraphType, ExecutionEventType, DataflowExecutionStateType } from '@elaraai/e3-types';
|
|
17
|
+
export { TaskStateType, DataflowGraphTaskType, DataflowGraphType, ExecutionEventType, DataflowExecutionStateType, } from '@elaraai/e3-types';
|
|
18
|
+
export type { DataflowExecutionStatus, TaskStatus } from '@elaraai/e3-types';
|
|
19
|
+
/**
|
|
20
|
+
* Task state information.
|
|
21
|
+
*/
|
|
22
|
+
export type TaskState = ValueTypeOf<typeof TaskStateType>;
|
|
23
|
+
/**
|
|
24
|
+
* Task in the dataflow graph.
|
|
25
|
+
*/
|
|
26
|
+
export type DataflowGraphTask = ValueTypeOf<typeof DataflowGraphTaskType>;
|
|
27
|
+
/**
|
|
28
|
+
* Dataflow dependency graph.
|
|
29
|
+
*/
|
|
30
|
+
export type DataflowGraph = ValueTypeOf<typeof DataflowGraphType>;
|
|
31
|
+
/**
|
|
32
|
+
* Execution event (discriminated union via VariantType).
|
|
33
|
+
*/
|
|
34
|
+
export type ExecutionEvent = ValueTypeOf<typeof ExecutionEventType>;
|
|
35
|
+
/**
|
|
36
|
+
* Dataflow execution state.
|
|
37
|
+
*/
|
|
38
|
+
export type DataflowExecutionState = ValueTypeOf<typeof DataflowExecutionStateType>;
|
|
39
|
+
/**
|
|
40
|
+
* Result of stepInitialize.
|
|
41
|
+
*/
|
|
42
|
+
export interface InitializeResult {
|
|
43
|
+
/** The initialized execution state */
|
|
44
|
+
state: DataflowExecutionState;
|
|
45
|
+
/** Tasks that are immediately ready (no dependencies) */
|
|
46
|
+
readyTasks: string[];
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Result of stepPrepareTask - information needed to execute a task.
|
|
50
|
+
*/
|
|
51
|
+
export interface PrepareTaskResult {
|
|
52
|
+
/** Task name */
|
|
53
|
+
task: string;
|
|
54
|
+
/** Task object hash */
|
|
55
|
+
taskHash: string;
|
|
56
|
+
/** Input dataset hashes (in order) */
|
|
57
|
+
inputHashes: string[];
|
|
58
|
+
/** Output path string */
|
|
59
|
+
outputPath: string;
|
|
60
|
+
/** Cached output hash if available (skip execution) */
|
|
61
|
+
cachedOutputHash: string | null;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Result of a task execution (returned by TaskRunner).
|
|
65
|
+
*/
|
|
66
|
+
export interface TaskExecuteResult {
|
|
67
|
+
/** Final state */
|
|
68
|
+
state: 'success' | 'failed' | 'error';
|
|
69
|
+
/** Whether the result was served from cache */
|
|
70
|
+
cached: boolean;
|
|
71
|
+
/** Output hash (if state is 'success') */
|
|
72
|
+
outputHash?: string;
|
|
73
|
+
/** Exit code (if state is 'failed') */
|
|
74
|
+
exitCode?: number;
|
|
75
|
+
/** Error message (if state is 'error') */
|
|
76
|
+
error?: string;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Result of stepTaskCompleted.
|
|
80
|
+
*/
|
|
81
|
+
export interface TaskCompletedResult {
|
|
82
|
+
/** Tasks that became ready after this completion */
|
|
83
|
+
newlyReady: string[];
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Result of stepTaskFailed.
|
|
87
|
+
*/
|
|
88
|
+
export interface TaskFailedResult {
|
|
89
|
+
/** Tasks that should be skipped due to this failure */
|
|
90
|
+
toSkip: string[];
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Result of stepFinalize.
|
|
94
|
+
*/
|
|
95
|
+
export interface FinalizeResult {
|
|
96
|
+
/** Overall success - true if all tasks completed successfully */
|
|
97
|
+
success: boolean;
|
|
98
|
+
/** Dataflow run ID (UUIDv7) */
|
|
99
|
+
runId: string;
|
|
100
|
+
/** Number of tasks executed (not from cache) */
|
|
101
|
+
executed: number;
|
|
102
|
+
/** Number of tasks served from cache */
|
|
103
|
+
cached: number;
|
|
104
|
+
/** Number of tasks that failed */
|
|
105
|
+
failed: number;
|
|
106
|
+
/** Number of tasks skipped due to upstream failure */
|
|
107
|
+
skipped: number;
|
|
108
|
+
/** Number of tasks re-executed due to input changes */
|
|
109
|
+
reexecuted: number;
|
|
110
|
+
/** Total duration in milliseconds */
|
|
111
|
+
duration: number;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Result of stepApplyTreeUpdate.
|
|
115
|
+
*/
|
|
116
|
+
export interface TreeUpdateResult {
|
|
117
|
+
/** Placeholder — per-dataset ref writes don't produce a root hash */
|
|
118
|
+
ok: true;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Type helper for mutable state (removes readonly).
|
|
122
|
+
* Used by step functions and the orchestrator to mutate execution state.
|
|
123
|
+
*/
|
|
124
|
+
export type Mutable<T> = {
|
|
125
|
+
-readonly [P in keyof T]: T[P] extends object ? Mutable<T[P]> : T[P];
|
|
126
|
+
};
|
|
127
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/dataflow/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
|
+
* Licensed under BSL 1.1. See LICENSE for details.
|
|
4
|
+
*/
|
|
5
|
+
// Re-export EastType schemas for serialization
|
|
6
|
+
export { TaskStateType, DataflowGraphTaskType, DataflowGraphType, ExecutionEventType, DataflowExecutionStateType, } from '@elaraai/e3-types';
|
|
7
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/dataflow/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAsBH,+CAA+C;AAC/C,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,EAClB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC"}
|
package/dist/src/dataflow.d.ts
CHANGED
|
@@ -2,7 +2,19 @@
|
|
|
2
2
|
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
3
|
* Licensed under BSL 1.1. See LICENSE for details.
|
|
4
4
|
*/
|
|
5
|
-
import { type
|
|
5
|
+
import { type TreePath } from '@elaraai/e3-types';
|
|
6
|
+
import type { TaskRunner } from './execution/interfaces.js';
|
|
7
|
+
import type { StorageBackend, LockHandle } from './storage/interfaces.js';
|
|
8
|
+
/**
|
|
9
|
+
* Parse a keypath string (from pathToString) back to TreePath.
|
|
10
|
+
*
|
|
11
|
+
* The keypath format is: .field1.field2 (dot-separated field names)
|
|
12
|
+
* Quoted identifiers use backticks: .field1.`complex/name`
|
|
13
|
+
*
|
|
14
|
+
* @param pathStr - The path string in keypath format
|
|
15
|
+
* @returns TreePath array of path segments
|
|
16
|
+
*/
|
|
17
|
+
export declare function parsePathString(pathStr: string): TreePath;
|
|
6
18
|
/**
|
|
7
19
|
* Result of executing a single task in the dataflow.
|
|
8
20
|
*/
|
|
@@ -11,6 +23,8 @@ export interface TaskExecutionResult {
|
|
|
11
23
|
name: string;
|
|
12
24
|
/** Whether the task was cached */
|
|
13
25
|
cached: boolean;
|
|
26
|
+
/** Execution ID (UUIDv7) - present for executed or cached tasks */
|
|
27
|
+
executionId?: string;
|
|
14
28
|
/** Final state */
|
|
15
29
|
state: 'success' | 'failed' | 'error' | 'skipped';
|
|
16
30
|
/** Error message if state is 'error' */
|
|
@@ -26,6 +40,8 @@ export interface TaskExecutionResult {
|
|
|
26
40
|
export interface DataflowResult {
|
|
27
41
|
/** Overall success - true if all tasks completed successfully */
|
|
28
42
|
success: boolean;
|
|
43
|
+
/** Dataflow run ID (UUIDv7) */
|
|
44
|
+
runId: string;
|
|
29
45
|
/** Number of tasks executed (not from cache) */
|
|
30
46
|
executed: number;
|
|
31
47
|
/** Number of tasks served from cache */
|
|
@@ -34,6 +50,8 @@ export interface DataflowResult {
|
|
|
34
50
|
failed: number;
|
|
35
51
|
/** Number of tasks skipped due to upstream failure */
|
|
36
52
|
skipped: number;
|
|
53
|
+
/** Number of tasks re-executed due to input changes */
|
|
54
|
+
reexecuted: number;
|
|
37
55
|
/** Per-task results */
|
|
38
56
|
tasks: TaskExecutionResult[];
|
|
39
57
|
/** Total duration in milliseconds */
|
|
@@ -49,22 +67,12 @@ export interface DataflowOptions {
|
|
|
49
67
|
force?: boolean;
|
|
50
68
|
/** Filter to run only specific task(s) by exact name */
|
|
51
69
|
filter?: string;
|
|
52
|
-
/**
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
* will acquire and release a lock internally.
|
|
56
|
-
*
|
|
57
|
-
* Use an external lock when you need to hold the lock across multiple
|
|
58
|
-
* operations (e.g., API server that cancels and restarts dataflow on writes).
|
|
59
|
-
*/
|
|
60
|
-
lock?: WorkspaceLockHandle;
|
|
61
|
-
/**
|
|
62
|
-
* AbortSignal for cancellation. When aborted:
|
|
63
|
-
* - No new tasks will be started
|
|
64
|
-
* - Running tasks will be killed (SIGTERM, then SIGKILL)
|
|
65
|
-
* - DataflowAbortedError will be thrown with partial results
|
|
66
|
-
*/
|
|
70
|
+
/** External workspace lock to use. */
|
|
71
|
+
lock?: LockHandle;
|
|
72
|
+
/** AbortSignal for cancellation. */
|
|
67
73
|
signal?: AbortSignal;
|
|
74
|
+
/** Task runner for executing individual tasks. */
|
|
75
|
+
runner?: TaskRunner;
|
|
68
76
|
/** Callback when a task starts */
|
|
69
77
|
onTaskStart?: (name: string) => void;
|
|
70
78
|
/** Callback when a task completes */
|
|
@@ -73,58 +81,59 @@ export interface DataflowOptions {
|
|
|
73
81
|
onStdout?: (taskName: string, data: string) => void;
|
|
74
82
|
/** Callback for task stderr */
|
|
75
83
|
onStderr?: (taskName: string, data: string) => void;
|
|
84
|
+
/** Callback when an input dataset changes during execution (reactive dataflow) */
|
|
85
|
+
onInputChanged?: (path: string, previousHash: string, newHash: string) => void;
|
|
86
|
+
/** Callback when a task is invalidated due to input change */
|
|
87
|
+
onTaskInvalidated?: (taskName: string, reason: string) => void;
|
|
88
|
+
/** Callback when a task is deferred due to inconsistent input versions */
|
|
89
|
+
onTaskDeferred?: (taskName: string, conflictPath: string) => void;
|
|
76
90
|
}
|
|
77
91
|
/**
|
|
78
92
|
* Execute all tasks in a workspace according to the dependency graph.
|
|
79
93
|
*
|
|
80
|
-
*
|
|
81
|
-
*
|
|
82
|
-
*
|
|
83
|
-
*
|
|
84
|
-
* Acquires an exclusive lock on the workspace for the duration of execution
|
|
85
|
-
* to prevent concurrent modifications. If options.lock is provided, uses that
|
|
86
|
-
* lock instead (caller is responsible for releasing it).
|
|
94
|
+
* Delegates to `LocalOrchestrator` which implements reactive fixpoint
|
|
95
|
+
* execution using step functions. After each task completes, input changes
|
|
96
|
+
* are detected and affected tasks are invalidated and re-executed.
|
|
87
97
|
*
|
|
88
|
-
* @param
|
|
98
|
+
* @param storage - Storage backend
|
|
99
|
+
* @param repo - Repository identifier
|
|
89
100
|
* @param ws - Workspace name
|
|
90
101
|
* @param options - Execution options
|
|
91
102
|
* @returns Result of the dataflow execution
|
|
103
|
+
*
|
|
92
104
|
* @throws {WorkspaceLockError} If workspace is locked by another process
|
|
93
105
|
* @throws {WorkspaceNotFoundError} If workspace doesn't exist
|
|
94
106
|
* @throws {WorkspaceNotDeployedError} If workspace has no package deployed
|
|
95
107
|
* @throws {TaskNotFoundError} If filter specifies a task that doesn't exist
|
|
96
108
|
* @throws {DataflowError} If execution fails for other reasons
|
|
97
109
|
*/
|
|
98
|
-
export declare function dataflowExecute(
|
|
110
|
+
export declare function dataflowExecute(storage: StorageBackend, repo: string, ws: string, options?: DataflowOptions): Promise<DataflowResult>;
|
|
99
111
|
/**
|
|
100
|
-
*
|
|
101
|
-
*
|
|
102
|
-
* Returns a promise immediately without awaiting execution. The lock is
|
|
103
|
-
* released automatically when execution completes.
|
|
112
|
+
* Execute dataflow with an externally-held lock.
|
|
113
|
+
* The lock is released automatically when execution completes or fails.
|
|
104
114
|
*
|
|
105
|
-
* @param
|
|
115
|
+
* @param storage - Storage backend
|
|
116
|
+
* @param repo - Repository identifier
|
|
106
117
|
* @param ws - Workspace name
|
|
107
118
|
* @param options - Execution options (lock must be provided)
|
|
108
119
|
* @returns Promise that resolves when execution completes
|
|
109
|
-
* @throws {WorkspaceNotFoundError} If workspace doesn't exist
|
|
110
|
-
* @throws {WorkspaceNotDeployedError} If workspace has no package deployed
|
|
111
|
-
* @throws {TaskNotFoundError} If filter specifies a task that doesn't exist
|
|
112
|
-
* @throws {DataflowError} If execution fails for other reasons
|
|
113
120
|
*/
|
|
114
|
-
export declare function dataflowStart(
|
|
115
|
-
lock:
|
|
121
|
+
export declare function dataflowStart(storage: StorageBackend, repo: string, ws: string, options: DataflowOptions & {
|
|
122
|
+
lock: LockHandle;
|
|
116
123
|
}): Promise<DataflowResult>;
|
|
117
124
|
/**
|
|
118
125
|
* Get the dependency graph for a workspace (for visualization/debugging).
|
|
119
126
|
*
|
|
120
|
-
* @param
|
|
127
|
+
* @param storage - Storage backend
|
|
128
|
+
* @param repo - Repository identifier
|
|
121
129
|
* @param ws - Workspace name
|
|
122
130
|
* @returns Graph information
|
|
131
|
+
*
|
|
123
132
|
* @throws {WorkspaceNotFoundError} If workspace doesn't exist
|
|
124
133
|
* @throws {WorkspaceNotDeployedError} If workspace has no package deployed
|
|
125
134
|
* @throws {DataflowError} If graph building fails for other reasons
|
|
126
135
|
*/
|
|
127
|
-
export declare function dataflowGetGraph(
|
|
136
|
+
export declare function dataflowGetGraph(storage: StorageBackend, repo: string, ws: string): Promise<{
|
|
128
137
|
tasks: Array<{
|
|
129
138
|
name: string;
|
|
130
139
|
hash: string;
|
|
@@ -133,4 +142,70 @@ export declare function dataflowGetGraph(repoPath: string, ws: string): Promise<
|
|
|
133
142
|
dependsOn: string[];
|
|
134
143
|
}>;
|
|
135
144
|
}>;
|
|
145
|
+
/**
|
|
146
|
+
* Graph structure returned by dataflowGetGraph.
|
|
147
|
+
*/
|
|
148
|
+
export interface DataflowGraph {
|
|
149
|
+
tasks: Array<{
|
|
150
|
+
name: string;
|
|
151
|
+
hash: string;
|
|
152
|
+
inputs: string[];
|
|
153
|
+
output: string;
|
|
154
|
+
dependsOn: string[];
|
|
155
|
+
}>;
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Find all tasks affected by input changes (transitive dependents).
|
|
159
|
+
* An affected task is one whose output could change due to the input change.
|
|
160
|
+
*
|
|
161
|
+
* @param graph - The dependency graph
|
|
162
|
+
* @param changes - Array of changed input paths
|
|
163
|
+
* @returns Array of affected task names
|
|
164
|
+
*/
|
|
165
|
+
export declare function findAffectedTasks(graph: DataflowGraph, changes: Array<{
|
|
166
|
+
path: string;
|
|
167
|
+
}>): string[];
|
|
168
|
+
/**
|
|
169
|
+
* Get tasks that are ready to execute given the set of completed tasks.
|
|
170
|
+
*
|
|
171
|
+
* A task is ready when all tasks it depends on have completed.
|
|
172
|
+
*
|
|
173
|
+
* @param graph - The dependency graph from dataflowGetGraph
|
|
174
|
+
* @param completedTasks - Set of task names that have completed
|
|
175
|
+
* @returns Array of task names that are ready to execute
|
|
176
|
+
*/
|
|
177
|
+
export declare function dataflowGetReadyTasks(graph: DataflowGraph, completedTasks: Set<string>): string[];
|
|
178
|
+
/**
|
|
179
|
+
* Check if a task execution is cached for the given inputs.
|
|
180
|
+
*
|
|
181
|
+
* @param storage - Storage backend
|
|
182
|
+
* @param repo - Repository path
|
|
183
|
+
* @param taskHash - Hash of the TaskObject
|
|
184
|
+
* @param inputHashes - Array of input dataset hashes (in order)
|
|
185
|
+
* @returns Output hash if cached, null if execution needed
|
|
186
|
+
*/
|
|
187
|
+
export declare function dataflowCheckCache(storage: StorageBackend, repo: string, taskHash: string, inputHashes: string[]): Promise<string | null>;
|
|
188
|
+
/**
|
|
189
|
+
* Find tasks that should be skipped when a task fails.
|
|
190
|
+
*
|
|
191
|
+
* Returns all tasks that transitively depend on the failed task,
|
|
192
|
+
* excluding already completed or already skipped tasks.
|
|
193
|
+
*
|
|
194
|
+
* @param graph - The dependency graph from dataflowGetGraph
|
|
195
|
+
* @param failedTask - Name of the task that failed
|
|
196
|
+
* @param completedTasks - Set of task names already completed
|
|
197
|
+
* @param skippedTasks - Set of task names already skipped
|
|
198
|
+
* @returns Array of task names that should be skipped
|
|
199
|
+
*/
|
|
200
|
+
export declare function dataflowGetDependentsToSkip(graph: DataflowGraph, failedTask: string, completedTasks: Set<string>, skippedTasks: Set<string>): string[];
|
|
201
|
+
/**
|
|
202
|
+
* Resolve input hashes for a task from current workspace state.
|
|
203
|
+
*
|
|
204
|
+
* @param storage - Storage backend
|
|
205
|
+
* @param repo - Repository path
|
|
206
|
+
* @param ws - Workspace name
|
|
207
|
+
* @param task - Task info from the graph
|
|
208
|
+
* @returns Array of hashes (null if input is unassigned)
|
|
209
|
+
*/
|
|
210
|
+
export declare function dataflowResolveInputHashes(storage: StorageBackend, repo: string, ws: string, task: DataflowGraph['tasks'][0]): Promise<Array<string | null>>;
|
|
136
211
|
//# sourceMappingURL=dataflow.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataflow.d.ts","sourceRoot":"","sources":["../../src/dataflow.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"dataflow.d.ts","sourceRoot":"","sources":["../../src/dataflow.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAeH,OAAO,EAML,KAAK,QAAQ,EACd,MAAM,mBAAmB,CAAC;AAK3B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAU5D,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAM1E;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ,CAsCzD;AAwBD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,gBAAgB;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,kCAAkC;IAClC,MAAM,EAAE,OAAO,CAAC;IAChB,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB;IAClB,KAAK,EAAE,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;IAClD,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,iEAAiE;IACjE,OAAO,EAAE,OAAO,CAAC;IACjB,+BAA+B;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,QAAQ,EAAE,MAAM,CAAC;IACjB,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,uDAAuD;IACvD,UAAU,EAAE,MAAM,CAAC;IACnB,uBAAuB;IACvB,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAC7B,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,sDAAsD;IACtD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yDAAyD;IACzD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,oCAAoC;IACpC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,kDAAkD;IAClD,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,kCAAkC;IAClC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,qCAAqC;IACrC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACvD,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,kFAAkF;IAClF,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/E,8DAA8D;IAC9D,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/D,0EAA0E;IAC1E,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;CACnE;AA+FD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,cAAc,CAAC,CAoDzB;AAED;;;;;;;;;GASG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,eAAe,GAAG;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GAC9C,OAAO,CAAC,cAAc,CAAC,CAMzB;AAMD;;;;;;;;;;;GAWG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,GACT,OAAO,CAAC;IACT,KAAK,EAAE,KAAK,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC,CAAC;CACJ,CAAC,CA0CD;AAMD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,KAAK,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC,CAAC;CACJ;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,GAC/B,MAAM,EAAE,CAgCV;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,aAAa,EACpB,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,GAC1B,MAAM,EAAE,CAeV;AAED;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EAAE,GACpB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAGxB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,EAC3B,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,GACxB,MAAM,EAAE,CAoCV;AAED;;;;;;;;GAQG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAC9B,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAe/B"}
|