@elaraai/e3 1.0.5 → 1.0.7
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/src/export.d.ts.map +1 -1
- package/dist/src/export.js +26 -1
- package/dist/src/export.js.map +1 -1
- package/dist/src/function.d.ts +56 -0
- package/dist/src/function.d.ts.map +1 -0
- package/dist/src/function.js +27 -0
- package/dist/src/function.js.map +1 -0
- package/dist/src/function.spec.d.ts +6 -0
- package/dist/src/function.spec.d.ts.map +1 -0
- package/dist/src/function.spec.js +183 -0
- package/dist/src/function.spec.js.map +1 -0
- package/dist/src/index.d.ts +7 -5
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +4 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/package.d.ts +2 -2
- package/dist/src/package.d.ts.map +1 -1
- package/dist/src/package.js +8 -0
- package/dist/src/package.js.map +1 -1
- package/dist/src/runner.d.ts +13 -14
- package/dist/src/runner.d.ts.map +1 -1
- package/dist/src/runner.js +37 -0
- package/dist/src/runner.js.map +1 -1
- package/dist/src/task.d.ts.map +1 -1
- package/dist/src/task.js +1 -0
- package/dist/src/task.js.map +1 -1
- package/dist/src/types.d.ts +35 -1
- package/dist/src/types.d.ts.map +1 -1
- package/package.json +3 -3
package/dist/src/export.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../src/export.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAcH,OAAO,IAAI,MAAM,MAAM,CAAC;AAIxB,OAAO,KAAK,EAAE,UAAU,EAAe,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../src/export.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAcH,OAAO,IAAI,MAAM,MAAM,CAAC;AAIxB,OAAO,KAAK,EAAE,UAAU,EAAe,MAAM,YAAY,CAAC;AAG1D;;;;;;;;;;;;;;;GAeG;AAEH,wBAAsB,OAAO,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAuMlH;AAOD;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAKrE"}
|
package/dist/src/export.js
CHANGED
|
@@ -15,7 +15,8 @@ import * as fs from 'node:fs';
|
|
|
15
15
|
import { createHash } from 'node:crypto';
|
|
16
16
|
import yazl from 'yazl';
|
|
17
17
|
import { variant, encodeBeast2For, encodeEastIR, EastIR, AsyncEastIR, printIdentifier, SortedMap, toEastTypeValue } from '@elaraai/east';
|
|
18
|
-
import { DatasetRefType, PackageObjectType, TaskObjectType } from '@elaraai/e3-types';
|
|
18
|
+
import { DatasetRefType, PackageObjectType, TaskObjectType, FunctionObjectType } from '@elaraai/e3-types';
|
|
19
|
+
import { runnerToVariant } from './runner.js';
|
|
19
20
|
/**
|
|
20
21
|
* Exports a package to a .zip bundle.
|
|
21
22
|
*
|
|
@@ -141,6 +142,10 @@ export async function export_(pkg, outputPath) {
|
|
|
141
142
|
output: item.output.path,
|
|
142
143
|
kind: item.taskKind ? variant('some', item.taskKind) : variant('none', null),
|
|
143
144
|
metadata: item.metadata ? variant('some', item.metadata) : variant('none', null),
|
|
145
|
+
// Routing metadata (commandIr stays authoritative for execution).
|
|
146
|
+
// customTask leaves TaskDef.runner undefined -> opaque custom
|
|
147
|
+
// (empty command: the wire field is informational for custom tasks).
|
|
148
|
+
runner: item.runner ? runnerToVariant(item.runner) : variant('custom', { command: [] }),
|
|
144
149
|
};
|
|
145
150
|
// Serialize and add to zip
|
|
146
151
|
const taskEncoder = encodeBeast2For(TaskObjectType);
|
|
@@ -153,6 +158,25 @@ export async function export_(pkg, outputPath) {
|
|
|
153
158
|
throw new Error(`Unknown package item kind: ${item.kind}`);
|
|
154
159
|
}
|
|
155
160
|
}
|
|
161
|
+
// Write function objects (functions are not in pkg.contents — they have
|
|
162
|
+
// no deps and never enter the data tree). Mirrors how tasks are written:
|
|
163
|
+
// body IR as a content object, then a small FunctionObject pointing at it.
|
|
164
|
+
const functions = new SortedMap(); // name -> function object hash
|
|
165
|
+
const functionEncoder = encodeBeast2For(FunctionObjectType);
|
|
166
|
+
for (const [fname, fdef] of Object.entries(pkg.functions)) {
|
|
167
|
+
const bodyIrData = encodeEastIR(fdef.body);
|
|
168
|
+
const bodyIrHash = addObject(zipfile, Buffer.from(bodyIrData));
|
|
169
|
+
// The FunctionObject stores homoiconic type VALUES (EastTypeType), not
|
|
170
|
+
// the raw TS EastType definitions Expr.type yields.
|
|
171
|
+
const fnObject = {
|
|
172
|
+
bodyIr: bodyIrHash,
|
|
173
|
+
inputTypes: fdef.inputTypes.map((t) => toEastTypeValue(t)),
|
|
174
|
+
outputType: toEastTypeValue(fdef.outputType),
|
|
175
|
+
runner: runnerToVariant(fdef.runner),
|
|
176
|
+
};
|
|
177
|
+
const fnHash = addObject(zipfile, Buffer.from(functionEncoder(fnObject)));
|
|
178
|
+
functions.set(fname, fnHash);
|
|
179
|
+
}
|
|
156
180
|
// Get the root structure
|
|
157
181
|
const rootStructure = structures.get('');
|
|
158
182
|
if (!rootStructure) {
|
|
@@ -165,6 +189,7 @@ export async function export_(pkg, outputPath) {
|
|
|
165
189
|
structure: rootStructure,
|
|
166
190
|
refs,
|
|
167
191
|
},
|
|
192
|
+
functions,
|
|
168
193
|
};
|
|
169
194
|
const packageObjectEncoder = encodeBeast2For(PackageObjectType);
|
|
170
195
|
const packageObjectData = packageObjectEncoder(packageObject);
|
package/dist/src/export.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/export.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEzI,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/export.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
|
+
* Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Named function definitions for e3 packages.
|
|
7
|
+
*
|
|
8
|
+
* `e3.function` declares a named, typed function stored in a package and
|
|
9
|
+
* invoked by name with argument values over the CLI (`e3 call`) and HTTP
|
|
10
|
+
* API. It is e3's "stored procedure" / RPC method: not wired to datasets,
|
|
11
|
+
* not part of the dataflow graph, and its result is returned inline to the
|
|
12
|
+
* caller — nothing durable is written by a call.
|
|
13
|
+
*/
|
|
14
|
+
import type { AsyncFunctionExpr, CallableAsyncFunctionExpr, CallableFunctionExpr, EastType, FunctionExpr } from '@elaraai/east';
|
|
15
|
+
import type { FunctionDef } from './types.js';
|
|
16
|
+
import { type FunctionRunner } from './runner.js';
|
|
17
|
+
/**
|
|
18
|
+
* Defines a named function stored in a package.
|
|
19
|
+
*
|
|
20
|
+
* The body is an ordinary East function (sync or async); its signature IS
|
|
21
|
+
* the parameter list — `inputTypes` / `outputType` are inferred from the
|
|
22
|
+
* East function, so there is no separate type array to keep in sync.
|
|
23
|
+
*
|
|
24
|
+
* Unlike a task, a function creates no dataset tree nodes and no command IR:
|
|
25
|
+
* its body IR is stored directly as a content object, its signature lives on
|
|
26
|
+
* the function object, and the executor builds the runner argv directly at
|
|
27
|
+
* call time (which is what enables a request-time runner override).
|
|
28
|
+
*
|
|
29
|
+
* @typeParam Name - Function name (literal type)
|
|
30
|
+
* @typeParam Inputs - Positional parameter types
|
|
31
|
+
* @typeParam Output - Return type
|
|
32
|
+
* @param name - Function name (unique within the package)
|
|
33
|
+
* @param fn - The East function body. Pure compute — no dataset reads; may
|
|
34
|
+
* be async (platform calls / IO).
|
|
35
|
+
* @param config - Optional runner selection. Only the known runtimes are
|
|
36
|
+
* allowed — including `custom` (symmetric with tasks; the command must
|
|
37
|
+
* speak the runner CLI convention, see {@link FunctionRunner}).
|
|
38
|
+
* @returns A FunctionDef to pass to `e3.package`
|
|
39
|
+
*
|
|
40
|
+
* @example
|
|
41
|
+
* ```ts
|
|
42
|
+
* const forecast = e3.function(
|
|
43
|
+
* 'forecast',
|
|
44
|
+
* East.function([IntegerType, FloatType], FloatType, ($, periods, growthRate) => {
|
|
45
|
+
* ...
|
|
46
|
+
* }),
|
|
47
|
+
* { runner: { runtime: 'east-py', platforms: ['east-py-datascience'] } },
|
|
48
|
+
* );
|
|
49
|
+
*
|
|
50
|
+
* const pkg = e3.package('planning', '1.0.0', forecast);
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
53
|
+
export declare function function_<Name extends string, Inputs extends EastType[], Output extends EastType>(name: Name, fn: FunctionExpr<Inputs, Output> | CallableFunctionExpr<Inputs, Output> | AsyncFunctionExpr<Inputs, Output> | CallableAsyncFunctionExpr<Inputs, Output>, config?: {
|
|
54
|
+
runner?: FunctionRunner;
|
|
55
|
+
}): FunctionDef<Inputs, Output>;
|
|
56
|
+
//# sourceMappingURL=function.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"function.d.ts","sourceRoot":"","sources":["../../src/function.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,yBAAyB,EACzB,oBAAoB,EACpB,QAAQ,EACR,YAAY,EACb,MAAM,eAAe,CAAC;AAEvB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAmC,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAEnF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,SAAS,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,SAAS,QAAQ,EAAE,EAAE,MAAM,SAAS,QAAQ,EAC/F,IAAI,EAAE,IAAI,EACV,EAAE,EAAE,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,GAC5B,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,GACpC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,GACjC,yBAAyB,CAAC,MAAM,EAAE,MAAM,CAAC,EAC7C,MAAM,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,cAAc,CAAA;CAAE,GACnC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
|
+
* Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
|
|
4
|
+
*/
|
|
5
|
+
import { Expr } from '@elaraai/east';
|
|
6
|
+
import { DEFAULT_RUNNER, runnerToVariant } from './runner.js';
|
|
7
|
+
export function function_(name, fn, config) {
|
|
8
|
+
if (!name) {
|
|
9
|
+
throw new Error('e3.function requires a non-empty name');
|
|
10
|
+
}
|
|
11
|
+
const runner = config?.runner ?? DEFAULT_RUNNER;
|
|
12
|
+
// Validate eagerly so a bad runner fails at definition time, not export time.
|
|
13
|
+
runnerToVariant(runner);
|
|
14
|
+
// Keep the full EastIR bundle (IR + source map) so export.ts can encode
|
|
15
|
+
// with encodeEastIR and preserve source locations.
|
|
16
|
+
const eastIR = fn.toIR();
|
|
17
|
+
const fnType = Expr.type(fn);
|
|
18
|
+
return {
|
|
19
|
+
kind: 'function',
|
|
20
|
+
name,
|
|
21
|
+
body: eastIR,
|
|
22
|
+
inputTypes: fnType.inputs,
|
|
23
|
+
outputType: fnType.output,
|
|
24
|
+
runner,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"function.js","sourceRoot":"","sources":["../../src/function.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAmBH,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAErC,OAAO,EAAE,cAAc,EAAE,eAAe,EAAuB,MAAM,aAAa,CAAC;AA8CnF,MAAM,UAAU,SAAS,CACvB,IAAY,EACZ,EAAwD,EACxD,MAAoC;IAEpC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,EAAE,MAAM,IAAI,cAAc,CAAC;IAChD,8EAA8E;IAC9E,eAAe,CAAC,MAAM,CAAC,CAAC;IAExB,wEAAwE;IACxE,mDAAmD;IACnD,MAAM,MAAM,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;IACzB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,EAAe,CAA6C,CAAC;IAEtF,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,IAAI;QACJ,IAAI,EAAE,MAAa;QACnB,UAAU,EAAE,MAAM,CAAC,MAAM;QACzB,UAAU,EAAE,MAAM,CAAC,MAAM;QACzB,MAAM;KACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"function.spec.d.ts","sourceRoot":"","sources":["../../src/function.spec.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
|
+
* Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
|
|
4
|
+
*/
|
|
5
|
+
import { describe, it, before, after } from 'node:test';
|
|
6
|
+
import * as assert from 'node:assert';
|
|
7
|
+
import * as fs from 'node:fs';
|
|
8
|
+
import * as os from 'node:os';
|
|
9
|
+
import * as path from 'node:path';
|
|
10
|
+
import yauzl from 'yauzl';
|
|
11
|
+
import { East, IntegerType, FloatType, StringType, StructType, DictType, decodeBeast2For, encodeBeast2For, toEastTypeValue, variant, } from '@elaraai/east';
|
|
12
|
+
import { PackageObjectType, PackageDataType, FunctionObjectType, decodePackageObject, } from '@elaraai/e3-types';
|
|
13
|
+
import { function_ } from './function.js';
|
|
14
|
+
import { runnerToVariant } from './runner.js';
|
|
15
|
+
import { package_ } from './package.js';
|
|
16
|
+
import { export_ } from './export.js';
|
|
17
|
+
import { input } from './input.js';
|
|
18
|
+
import { task } from './task.js';
|
|
19
|
+
/**
|
|
20
|
+
* Helper to read a zip file and return entries as a map of path -> buffer
|
|
21
|
+
*/
|
|
22
|
+
async function readZip(zipPath) {
|
|
23
|
+
return new Promise((resolve, reject) => {
|
|
24
|
+
yauzl.open(zipPath, { lazyEntries: true }, (err, zipfile) => {
|
|
25
|
+
if (err)
|
|
26
|
+
return reject(err);
|
|
27
|
+
if (!zipfile)
|
|
28
|
+
return reject(new Error('No zipfile'));
|
|
29
|
+
const entries = new Map();
|
|
30
|
+
zipfile.readEntry();
|
|
31
|
+
zipfile.on('entry', (entry) => {
|
|
32
|
+
if (/\/$/.test(entry.fileName)) {
|
|
33
|
+
zipfile.readEntry();
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
zipfile.openReadStream(entry, (err, readStream) => {
|
|
37
|
+
if (err)
|
|
38
|
+
return reject(err);
|
|
39
|
+
if (!readStream)
|
|
40
|
+
return reject(new Error('No read stream'));
|
|
41
|
+
const chunks = [];
|
|
42
|
+
readStream.on('data', (chunk) => chunks.push(chunk));
|
|
43
|
+
readStream.on('end', () => {
|
|
44
|
+
entries.set(entry.fileName, Buffer.concat(chunks));
|
|
45
|
+
zipfile.readEntry();
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
zipfile.on('end', () => resolve(entries));
|
|
51
|
+
zipfile.on('error', reject);
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
function objectEntry(entries, hash) {
|
|
56
|
+
return entries.get(`objects/${hash.slice(0, 2)}/${hash.slice(2)}.beast2`);
|
|
57
|
+
}
|
|
58
|
+
describe('function_', () => {
|
|
59
|
+
it('infers inputTypes/outputType from the East function', () => {
|
|
60
|
+
const fn = function_('forecast', East.function([IntegerType, FloatType], FloatType, ($, periods, rate) => rate.multiply(periods.toFloat())));
|
|
61
|
+
assert.strictEqual(fn.kind, 'function');
|
|
62
|
+
assert.strictEqual(fn.name, 'forecast');
|
|
63
|
+
assert.deepStrictEqual(toEastTypeValue(fn.inputTypes[0]), toEastTypeValue(IntegerType));
|
|
64
|
+
assert.deepStrictEqual(toEastTypeValue(fn.inputTypes[1]), toEastTypeValue(FloatType));
|
|
65
|
+
assert.deepStrictEqual(toEastTypeValue(fn.outputType), toEastTypeValue(FloatType));
|
|
66
|
+
// Defaults to DEFAULT_RUNNER (east-node + east-node-std)
|
|
67
|
+
assert.deepStrictEqual(runnerToVariant(fn.runner), variant('east_node', {
|
|
68
|
+
platforms: ['@elaraai/east-node-std'],
|
|
69
|
+
}));
|
|
70
|
+
});
|
|
71
|
+
it('rejects an empty name', () => {
|
|
72
|
+
assert.throws(() => function_('', East.function([IntegerType], IntegerType, ($, x) => x)), /non-empty name/);
|
|
73
|
+
});
|
|
74
|
+
it('accepts a custom runner (symmetric with tasks)', () => {
|
|
75
|
+
const f = function_('custom-ok', East.function([IntegerType], IntegerType, ($, x) => x), { runner: { runtime: 'custom', command: ['python3', 'my-runner.py'] } });
|
|
76
|
+
assert.equal(f.runner.runtime, 'custom');
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
describe('runnerToVariant', () => {
|
|
80
|
+
it('maps each known runtime and coalesces missing platforms', () => {
|
|
81
|
+
assert.deepStrictEqual(runnerToVariant({ runtime: 'east-py' }), variant('east_py', { platforms: [] }));
|
|
82
|
+
assert.deepStrictEqual(runnerToVariant({ runtime: 'east-c', platforms: ['east-c-std'] }), variant('east_c', { platforms: ['east-c-std'] }));
|
|
83
|
+
});
|
|
84
|
+
it('collapses { custom: name } platform entries to plain strings', () => {
|
|
85
|
+
assert.deepStrictEqual(runnerToVariant({ runtime: 'east-py', platforms: ['east-py-std', { custom: 'my-platform' }] }), variant('east_py', { platforms: ['east-py-std', 'my-platform'] }));
|
|
86
|
+
});
|
|
87
|
+
it('maps the custom runtime to the wire custom variant', () => {
|
|
88
|
+
assert.deepStrictEqual(runnerToVariant({ runtime: 'custom', command: ['bash', '-c', 'true'] }), variant('custom', { command: ['bash', '-c', 'true'] }));
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
describe('package_ with functions', () => {
|
|
92
|
+
it('collects functions by name, separate from contents', () => {
|
|
93
|
+
const fn = function_('double', East.function([IntegerType], IntegerType, ($, x) => x.multiply(2n)));
|
|
94
|
+
const pkg = package_('fns', '1.0.0', fn);
|
|
95
|
+
assert.strictEqual(pkg.functions['double'], fn);
|
|
96
|
+
assert.strictEqual(pkg.contents.length, 0);
|
|
97
|
+
});
|
|
98
|
+
it('merges functions from nested packages', () => {
|
|
99
|
+
const fn = function_('double', East.function([IntegerType], IntegerType, ($, x) => x.multiply(2n)));
|
|
100
|
+
const inner = package_('inner', '1.0.0', fn);
|
|
101
|
+
const outer = package_('outer', '1.0.0', inner);
|
|
102
|
+
assert.strictEqual(outer.functions['double'], fn);
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
describe('export_ with functions', () => {
|
|
106
|
+
let tempDir;
|
|
107
|
+
before(() => {
|
|
108
|
+
tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'e3-function-export-'));
|
|
109
|
+
});
|
|
110
|
+
after(() => {
|
|
111
|
+
fs.rmSync(tempDir, { recursive: true, force: true });
|
|
112
|
+
});
|
|
113
|
+
it('round-trips a FunctionObject through the bundle', async () => {
|
|
114
|
+
const greeting = input('greeting', StringType, 'hello');
|
|
115
|
+
const shout = task('shout', [greeting], East.function([StringType], StringType, ($, s) => s));
|
|
116
|
+
const double = function_('double', East.function([IntegerType], IntegerType, ($, x) => x.multiply(2n)), { runner: { runtime: 'east-node', platforms: ['@elaraai/east-node-std'] } });
|
|
117
|
+
const pkg = package_('fn-pkg', '1.0.0', shout, double);
|
|
118
|
+
const zipPath = path.join(tempDir, 'fn-pkg-1.0.0.zip');
|
|
119
|
+
await export_(pkg, zipPath);
|
|
120
|
+
const entries = await readZip(zipPath);
|
|
121
|
+
// Resolve the package object from the ref
|
|
122
|
+
const refData = entries.get('packages/fn-pkg/1.0.0');
|
|
123
|
+
assert.ok(refData, 'package ref missing');
|
|
124
|
+
const pkgHash = refData.toString('utf-8').trim();
|
|
125
|
+
const pkgData = objectEntry(entries, pkgHash);
|
|
126
|
+
assert.ok(pkgData, 'package object missing');
|
|
127
|
+
const pkgObject = decodeBeast2For(PackageObjectType)(pkgData);
|
|
128
|
+
// tasks/data unchanged by the function
|
|
129
|
+
assert.ok(pkgObject.tasks.get('shout'), 'task missing');
|
|
130
|
+
assert.ok(pkgObject.data.refs.get('inputs/greeting'), 'dataset ref missing');
|
|
131
|
+
// functions map points at a FunctionObject
|
|
132
|
+
const fnHash = pkgObject.functions.get('double');
|
|
133
|
+
assert.ok(fnHash, 'functions map missing entry');
|
|
134
|
+
const fnData = objectEntry(entries, fnHash);
|
|
135
|
+
assert.ok(fnData, 'FunctionObject missing from bundle');
|
|
136
|
+
const fnObject = decodeBeast2For(FunctionObjectType)(fnData);
|
|
137
|
+
// Note: decoded type values lack toEastTypeValue's cache symbol, so
|
|
138
|
+
// compare the structural fields rather than deep-equality on the object.
|
|
139
|
+
assert.strictEqual(fnObject.inputTypes.length, 1);
|
|
140
|
+
assert.strictEqual(fnObject.inputTypes[0].type, 'Integer');
|
|
141
|
+
assert.strictEqual(fnObject.outputType.type, 'Integer');
|
|
142
|
+
assert.deepStrictEqual(fnObject.runner, variant('east_node', { platforms: ['@elaraai/east-node-std'] }));
|
|
143
|
+
// The body IR object itself is in the bundle
|
|
144
|
+
assert.ok(objectEntry(entries, fnObject.bodyIr), 'bodyIr object missing from bundle');
|
|
145
|
+
});
|
|
146
|
+
it('produces identical output for the same package (deterministic)', async () => {
|
|
147
|
+
const fn = function_('double', East.function([IntegerType], IntegerType, ($, x) => x.multiply(2n)));
|
|
148
|
+
const pkg = package_('det-pkg', '1.0.0', fn);
|
|
149
|
+
const zip1 = path.join(tempDir, 'det1.zip');
|
|
150
|
+
const zip2 = path.join(tempDir, 'det2.zip');
|
|
151
|
+
await export_(pkg, zip1);
|
|
152
|
+
await export_(pkg, zip2);
|
|
153
|
+
assert.deepStrictEqual(fs.readFileSync(zip1), fs.readFileSync(zip2));
|
|
154
|
+
});
|
|
155
|
+
});
|
|
156
|
+
describe('decodePackageObject', () => {
|
|
157
|
+
it('decodes the current format', () => {
|
|
158
|
+
const bytes = encodeBeast2For(PackageObjectType)({
|
|
159
|
+
tasks: new Map([['t', 'a'.repeat(64)]]),
|
|
160
|
+
data: { structure: variant('struct', new Map()), refs: new Map() },
|
|
161
|
+
functions: new Map([['f', 'b'.repeat(64)]]),
|
|
162
|
+
});
|
|
163
|
+
const decoded = decodePackageObject(bytes);
|
|
164
|
+
assert.strictEqual(decoded.functions.get('f'), 'b'.repeat(64));
|
|
165
|
+
});
|
|
166
|
+
it('decodes a pre-functions (legacy) package with functions defaulted empty', () => {
|
|
167
|
+
const LegacyPackageObjectType = StructType({
|
|
168
|
+
tasks: DictType(StringType, StringType),
|
|
169
|
+
data: PackageDataType,
|
|
170
|
+
});
|
|
171
|
+
const bytes = encodeBeast2For(LegacyPackageObjectType)({
|
|
172
|
+
tasks: new Map([['t', 'a'.repeat(64)]]),
|
|
173
|
+
data: { structure: variant('struct', new Map()), refs: new Map() },
|
|
174
|
+
});
|
|
175
|
+
// The strict decoder rejects old bytes...
|
|
176
|
+
assert.throws(() => decodeBeast2For(PackageObjectType)(bytes));
|
|
177
|
+
// ...but the tolerant decoder accepts them
|
|
178
|
+
const decoded = decodePackageObject(bytes);
|
|
179
|
+
assert.strictEqual(decoded.tasks.get('t'), 'a'.repeat(64));
|
|
180
|
+
assert.strictEqual(decoded.functions.size, 0);
|
|
181
|
+
});
|
|
182
|
+
});
|
|
183
|
+
//# sourceMappingURL=function.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"function.spec.js","sourceRoot":"","sources":["../../src/function.spec.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -42,14 +42,15 @@
|
|
|
42
42
|
* await e3.export(pkg, 'package.zip');
|
|
43
43
|
* ```
|
|
44
44
|
*/
|
|
45
|
-
import type { DatasetDef, DataTreeDef, DatasetsOf, MergeDatasets, PackageDef, PackageItem, TaskDef } from './types.js';
|
|
45
|
+
import type { DatasetDef, DataTreeDef, DatasetsOf, FunctionDef, MergeDatasets, PackageDef, PackageItem, TaskDef } from './types.js';
|
|
46
46
|
import { input } from './input.js';
|
|
47
47
|
import { task, customTask } from './task.js';
|
|
48
|
+
import { function_ } from './function.js';
|
|
48
49
|
import { package_ } from './package.js';
|
|
49
50
|
import { export_ } from './export.js';
|
|
50
|
-
export type { DataTreeDef, DatasetDef, DatasetsOf, TaskDef, PackageDef, PackageItem, MergeDatasets, };
|
|
51
|
-
export type { Runner, Platform, EastPyPlatform, EastNodePlatform, EastCPlatform, } from './runner.js';
|
|
52
|
-
export { runnerToCommand, DEFAULT_RUNNER } from './runner.js';
|
|
51
|
+
export type { DataTreeDef, DatasetDef, DatasetsOf, FunctionDef, TaskDef, PackageDef, PackageItem, MergeDatasets, };
|
|
52
|
+
export type { Runner, FunctionRunner, Platform, EastPyPlatform, EastNodePlatform, EastCPlatform, } from './runner.js';
|
|
53
|
+
export { runnerToCommand, runnerToVariant, DEFAULT_RUNNER } from './runner.js';
|
|
53
54
|
/**
|
|
54
55
|
* The e3 SDK namespace.
|
|
55
56
|
*
|
|
@@ -59,11 +60,12 @@ declare const e3: {
|
|
|
59
60
|
input: typeof input;
|
|
60
61
|
task: typeof task;
|
|
61
62
|
customTask: typeof customTask;
|
|
63
|
+
function: typeof function_;
|
|
62
64
|
package: typeof package_;
|
|
63
65
|
export: typeof export_;
|
|
64
66
|
};
|
|
65
67
|
export default e3;
|
|
66
|
-
export { input, task, customTask, package_ as package, export_ as export };
|
|
68
|
+
export { input, task, customTask, function_, package_ as package, export_ as export };
|
|
67
69
|
export { inputsTree } from './input.js';
|
|
68
70
|
export { tasksTree } from './task.js';
|
|
69
71
|
export { sha256File, sha256Bytes, hashToPath } from './sha256.js';
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAEH,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EACX,UAAU,EACV,aAAa,EACb,UAAU,EACV,WAAW,EACX,OAAO,EACR,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,YAAY,EACV,WAAW,EACX,UAAU,EACV,UAAU,EACV,OAAO,EACP,UAAU,EACV,WAAW,EACX,aAAa,GACd,CAAC;AAGF,YAAY,EACV,MAAM,EACN,QAAQ,EACR,cAAc,EACd,gBAAgB,EAChB,aAAa,GACd,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAEH,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EACX,UAAU,EACV,WAAW,EACX,aAAa,EACb,UAAU,EACV,WAAW,EACX,OAAO,EACR,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,YAAY,EACV,WAAW,EACX,UAAU,EACV,UAAU,EACV,WAAW,EACX,OAAO,EACP,UAAU,EACV,WAAW,EACX,aAAa,GACd,CAAC;AAGF,YAAY,EACV,MAAM,EACN,cAAc,EACd,QAAQ,EACR,cAAc,EACd,gBAAgB,EAChB,aAAa,GACd,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE/E;;;;GAIG;AACH,QAAA,MAAM,EAAE;;;;;;;CAOP,CAAC;AAEF,eAAe,EAAE,CAAC;AAGlB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,IAAI,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,CAAC;AAGtF,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAGtC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/src/index.js
CHANGED
|
@@ -4,9 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { input } from './input.js';
|
|
6
6
|
import { task, customTask } from './task.js';
|
|
7
|
+
import { function_ } from './function.js';
|
|
7
8
|
import { package_ } from './package.js';
|
|
8
9
|
import { export_ } from './export.js';
|
|
9
|
-
export { runnerToCommand, DEFAULT_RUNNER } from './runner.js';
|
|
10
|
+
export { runnerToCommand, runnerToVariant, DEFAULT_RUNNER } from './runner.js';
|
|
10
11
|
/**
|
|
11
12
|
* The e3 SDK namespace.
|
|
12
13
|
*
|
|
@@ -16,12 +17,13 @@ const e3 = {
|
|
|
16
17
|
input,
|
|
17
18
|
task,
|
|
18
19
|
customTask,
|
|
20
|
+
function: function_,
|
|
19
21
|
package: package_,
|
|
20
22
|
export: export_,
|
|
21
23
|
};
|
|
22
24
|
export default e3;
|
|
23
25
|
// Also export individual functions for tree-shaking
|
|
24
|
-
export { input, task, customTask, package_ as package, export_ as export };
|
|
26
|
+
export { input, task, customTask, function_, package_ as package, export_ as export };
|
|
25
27
|
// Singleton tree definitions
|
|
26
28
|
export { inputsTree } from './input.js';
|
|
27
29
|
export { tasksTree } from './task.js';
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAqDH,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAsBtC,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE/E;;;;GAIG;AACH,MAAM,EAAE,GAAG;IACT,KAAK;IACL,IAAI;IACJ,UAAU;IACV,QAAQ,EAAE,SAAS;IACnB,OAAO,EAAE,QAAQ;IACjB,MAAM,EAAE,OAAO;CAChB,CAAC;AAEF,eAAe,EAAE,CAAC;AAElB,oDAAoD;AACpD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,IAAI,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,CAAC;AAEtF,6BAA6B;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,kBAAkB;AAClB,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/src/package.d.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
/**
|
|
6
6
|
* Package definitions for e3.
|
|
7
7
|
*/
|
|
8
|
-
import type { PackageDef, PackageItem } from './types.js';
|
|
8
|
+
import type { FunctionDef, PackageDef, PackageItem } from './types.js';
|
|
9
9
|
/**
|
|
10
10
|
* Creates a package definition from items.
|
|
11
11
|
*
|
|
@@ -37,5 +37,5 @@ import type { PackageDef, PackageItem } from './types.js';
|
|
|
37
37
|
* const helloTask = pkg.tasks.say_hello;
|
|
38
38
|
* ```
|
|
39
39
|
*/
|
|
40
|
-
export declare function package_(name: string, version: string, ...items: (PackageItem | PackageDef<any>)[]): PackageDef<Record<string, unknown>>;
|
|
40
|
+
export declare function package_(name: string, version: string, ...items: (PackageItem | FunctionDef | PackageDef<any>)[]): PackageDef<Record<string, unknown>>;
|
|
41
41
|
//# sourceMappingURL=package.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package.d.ts","sourceRoot":"","sources":["../../src/package.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AAEH,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EAEZ,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAQH,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,GAAG,KAAK,EAAE,CAAC,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"package.d.ts","sourceRoot":"","sources":["../../src/package.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,WAAW,EAEZ,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAQH,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,GAAG,KAAK,EAAE,CAAC,WAAW,GAAG,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,GACxD,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAoFrC"}
|
package/dist/src/package.js
CHANGED
|
@@ -44,6 +44,9 @@ export function package_(name, version, ...items) {
|
|
|
44
44
|
// Recursively collect all items and their transitive dependencies
|
|
45
45
|
const all_items = new Set();
|
|
46
46
|
const visited = new Set();
|
|
47
|
+
// Functions have no deps and never enter the data tree — collected by
|
|
48
|
+
// name, separately from all_items.
|
|
49
|
+
const functions = {};
|
|
47
50
|
function collect(item) {
|
|
48
51
|
if (visited.has(item))
|
|
49
52
|
return;
|
|
@@ -60,6 +63,10 @@ export function package_(name, version, ...items) {
|
|
|
60
63
|
for (const dep of item.contents) {
|
|
61
64
|
all_items.add(dep);
|
|
62
65
|
}
|
|
66
|
+
Object.assign(functions, item.functions);
|
|
67
|
+
}
|
|
68
|
+
else if (item.kind === "function") {
|
|
69
|
+
functions[item.name] = item;
|
|
63
70
|
}
|
|
64
71
|
else {
|
|
65
72
|
collect(item);
|
|
@@ -113,6 +120,7 @@ export function package_(name, version, ...items) {
|
|
|
113
120
|
version,
|
|
114
121
|
datasets: datasets,
|
|
115
122
|
contents: [...all_items],
|
|
123
|
+
functions,
|
|
116
124
|
};
|
|
117
125
|
}
|
|
118
126
|
//# sourceMappingURL=package.js.map
|
package/dist/src/package.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package.js","sourceRoot":"","sources":["../../src/package.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"package.js","sourceRoot":"","sources":["../../src/package.ts"],"names":[],"mappings":"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"}
|
package/dist/src/runner.d.ts
CHANGED
|
@@ -2,20 +2,7 @@
|
|
|
2
2
|
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
3
|
* Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
|
|
4
4
|
*/
|
|
5
|
-
|
|
6
|
-
* Typed runner selection for {@link task}.
|
|
7
|
-
*
|
|
8
|
-
* Replaces the previous `runner: string[]` (raw argv) with a discriminated
|
|
9
|
-
* union pairing each runtime with the platform names it accepts. The literal
|
|
10
|
-
* platform sets are closed — a typo or a cross-runtime platform name is a
|
|
11
|
-
* compile error. User-defined platforms go through `{ custom: 'name' }` so
|
|
12
|
-
* the typed path stays typo-safe; the `custom` runtime branch is the full
|
|
13
|
-
* escape hatch (any argv).
|
|
14
|
-
*
|
|
15
|
-
* The runner is consumed at task-definition time inside `e3.task` and
|
|
16
|
-
* resolved into the existing argv-emitting `commandIr` constant — the wire
|
|
17
|
-
* format (`TaskObjectType`) is unchanged.
|
|
18
|
-
*/
|
|
5
|
+
import type { RunnerValue } from '@elaraai/e3-types';
|
|
19
6
|
/** Stock platforms shipped by `@elaraai/east-py-cli` runner. */
|
|
20
7
|
export type EastPyPlatform = 'east-py-std' | 'east-py-io' | 'east-py-datascience';
|
|
21
8
|
/** Stock platforms shipped by `@elaraai/east-node-cli` runner. */
|
|
@@ -65,6 +52,18 @@ export type Runner = {
|
|
|
65
52
|
runtime: 'custom';
|
|
66
53
|
command: NonEmpty<string>;
|
|
67
54
|
};
|
|
55
|
+
/**
|
|
56
|
+
* Functions accept the same runners as tasks (symmetric model). `custom`
|
|
57
|
+
* commands must speak the runner CLI convention (`<command…> -i <arg>…
|
|
58
|
+
* -o <out> <ir>`), since the server appends that suffix at call time.
|
|
59
|
+
* Kept as an alias for source compatibility.
|
|
60
|
+
*/
|
|
61
|
+
export type FunctionRunner = Runner;
|
|
62
|
+
/**
|
|
63
|
+
* Convert a {@link Runner} to its wire-format {@link RunnerValue} variant
|
|
64
|
+
* (used by `e3.function` / `e3.export`). Rejects the `custom` runtime —
|
|
65
|
+
*/
|
|
66
|
+
export declare function runnerToVariant(r: Runner): RunnerValue;
|
|
68
67
|
/**
|
|
69
68
|
* Resolves a {@link Runner} to the argv prefix. The `-i` / `-o` / IR path
|
|
70
69
|
* suffix is appended by {@link task}'s East command IR at evaluation time;
|
package/dist/src/runner.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/runner.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/runner.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAsBH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,gEAAgE;AAChE,MAAM,MAAM,cAAc,GACtB,aAAa,GACb,YAAY,GACZ,qBAAqB,CAAC;AAE1B,kEAAkE;AAClE,MAAM,MAAM,gBAAgB,GACxB,wBAAwB,GACxB,uBAAuB,CAAC;AAE5B,+DAA+D;AAC/D,MAAM,MAAM,aAAa,GACrB,YAAY,CAAC;AAEjB;;;;;;GAMG;AACH,MAAM,MAAM,QAAQ,CAAC,KAAK,SAAS,MAAM,IAAI,KAAK,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAExE,yEAAyE;AACzE,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;AAE/B;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,MAAM,GACd;IAAE,OAAO,EAAE,SAAS,CAAC;IAAG,SAAS,CAAC,EAAE,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAA;CAAE,GAChE;IAAE,OAAO,EAAE,WAAW,CAAC;IAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAA;CAAE,GAClE;IAAE,OAAO,EAAE,QAAQ,CAAC;IAAI,SAAS,CAAC,EAAE,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAA;CAAE,GAC/D;IAAE,OAAO,EAAE,QAAQ,CAAC;IAAI,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;CAAE,CAAC;AAExD;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC;AAEpC;;;GAGG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,WAAW,CAatD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAQnD;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,EAAE,MAG5B,CAAC"}
|
package/dist/src/runner.js
CHANGED
|
@@ -2,6 +2,43 @@
|
|
|
2
2
|
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
3
|
* Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
|
|
4
4
|
*/
|
|
5
|
+
/**
|
|
6
|
+
* Typed runner selection for {@link task}.
|
|
7
|
+
*
|
|
8
|
+
* Replaces the previous `runner: string[]` (raw argv) with a discriminated
|
|
9
|
+
* union pairing each runtime with the platform names it accepts. The literal
|
|
10
|
+
* platform sets are closed — a typo or a cross-runtime platform name is a
|
|
11
|
+
* compile error. User-defined platforms go through `{ custom: 'name' }` so
|
|
12
|
+
* the typed path stays typo-safe; the `custom` runtime branch is the full
|
|
13
|
+
* escape hatch (any argv).
|
|
14
|
+
*
|
|
15
|
+
* The runner is consumed at task-definition time inside `e3.task` and
|
|
16
|
+
* resolved into the existing argv-emitting `commandIr` constant — the wire
|
|
17
|
+
* format (`TaskObjectType`) is unchanged.
|
|
18
|
+
*
|
|
19
|
+
* `e3.function` instead stores the runner as a wire variant (`RunnerType`
|
|
20
|
+
* in e3-types) via {@link runnerToVariant}, which excludes the `custom`
|
|
21
|
+
* runtime (see {@link FunctionRunner}).
|
|
22
|
+
*/
|
|
23
|
+
import { variant } from '@elaraai/east';
|
|
24
|
+
/**
|
|
25
|
+
* Convert a {@link Runner} to its wire-format {@link RunnerValue} variant
|
|
26
|
+
* (used by `e3.function` / `e3.export`). Rejects the `custom` runtime —
|
|
27
|
+
*/
|
|
28
|
+
export function runnerToVariant(r) {
|
|
29
|
+
// The SDK makes `platforms` optional and allows `{ custom: name }` entries;
|
|
30
|
+
// the wire type requires a plain string array — collapse both here, exactly
|
|
31
|
+
// like runnerToCommand.
|
|
32
|
+
if (r.runtime === 'custom') {
|
|
33
|
+
return variant('custom', { command: [...r.command] });
|
|
34
|
+
}
|
|
35
|
+
const platforms = (r.platforms ?? []).map((p) => (typeof p === 'string' ? p : p.custom));
|
|
36
|
+
switch (r.runtime) {
|
|
37
|
+
case 'east-node': return variant('east_node', { platforms });
|
|
38
|
+
case 'east-py': return variant('east_py', { platforms });
|
|
39
|
+
case 'east-c': return variant('east_c', { platforms });
|
|
40
|
+
}
|
|
41
|
+
}
|
|
5
42
|
/**
|
|
6
43
|
* Resolves a {@link Runner} to the argv prefix. The `-i` / `-o` / IR path
|
|
7
44
|
* suffix is appended by {@link task}'s East command IR at evaluation time;
|
package/dist/src/runner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/runner.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/runner.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AA8DxC;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,CAAS;IACvC,4EAA4E;IAC5E,4EAA4E;IAC5E,wBAAwB;IACxB,IAAI,CAAC,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC3B,OAAO,OAAO,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACzF,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;QAClB,KAAK,WAAW,CAAC,CAAC,OAAO,OAAO,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;QAC7D,KAAK,SAAS,CAAC,CAAG,OAAO,OAAO,CAAC,SAAS,EAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QAC7D,KAAK,QAAQ,CAAC,CAAI,OAAO,OAAO,CAAC,QAAQ,EAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,CAAS;IACvC,IAAI,CAAC,CAAC,OAAO,KAAK,QAAQ;QAAE,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,SAAS,GAAG,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC;IACpC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,cAAc,GAAW;IACpC,OAAO,EAAE,WAAW;IACpB,SAAS,EAAE,CAAC,wBAAwB,CAAC;CACtC,CAAC"}
|
package/dist/src/task.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/task.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACxJ,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAqC,MAAM,eAAe,CAAC;AACxG,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACnE,OAAO,EAAmC,KAAK,MAAM,EAAE,MAAM,aAAa,CAAC;AAE3E;;;GAGG;AACH,KAAK,mBAAmB,CAAC,CAAC,SAAS,SAAS,UAAU,EAAE,IAAI;KACzD,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK;CAC7D,GAAG,QAAQ,EAAE,CAAC;AAEf;;;;GAIG;AACH,eAAO,MAAM,SAAS,EAAE,WAKvB,CAAC;AAgGF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,wBAAgB,IAAI,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,SAAS,SAAS,UAAU,EAAE,EAAE,MAAM,SAAS,QAAQ,EACrG,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,EACnB,EAAE,EAAE,YAAY,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjD,oBAAoB,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACzD,iBAAiB,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACtD,yBAAyB,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAClE,MAAM,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,UAAU,CAAA;CAAE,GACjE,OAAO,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/task.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACxJ,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAqC,MAAM,eAAe,CAAC;AACxG,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACnE,OAAO,EAAmC,KAAK,MAAM,EAAE,MAAM,aAAa,CAAC;AAE3E;;;GAGG;AACH,KAAK,mBAAmB,CAAC,CAAC,SAAS,SAAS,UAAU,EAAE,IAAI;KACzD,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK;CAC7D,GAAG,QAAQ,EAAE,CAAC;AAEf;;;;GAIG;AACH,eAAO,MAAM,SAAS,EAAE,WAKvB,CAAC;AAgGF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,wBAAgB,IAAI,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,SAAS,SAAS,UAAU,EAAE,EAAE,MAAM,SAAS,QAAQ,EACrG,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,EACnB,EAAE,EAAE,YAAY,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjD,oBAAoB,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACzD,iBAAiB,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACtD,yBAAyB,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAClE,MAAM,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,UAAU,CAAA;CAAE,GACjE,OAAO,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;AA+EpG,wBAAgB,UAAU,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,SAAS,KAAK,CAAC,UAAU,CAAC,EAAE,MAAM,SAAS,QAAQ,EACvG,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CAAC,CAAC,EAAE,YAAY,CAAC,UAAU,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,EAClJ,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAoClG"}
|
package/dist/src/task.js
CHANGED
|
@@ -141,6 +141,7 @@ export function task(name, inputs, fn, config) {
|
|
|
141
141
|
deps: collectDeps(taskTree, output, input_datasets),
|
|
142
142
|
taskKind: config?.kind,
|
|
143
143
|
metadata: config?.metadata,
|
|
144
|
+
runner: config?.runner ?? DEFAULT_RUNNER,
|
|
144
145
|
};
|
|
145
146
|
// Add the task to the output's deps so downstream tasks collect this task's deps
|
|
146
147
|
output.deps.add(taskDef);
|
package/dist/src/task.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/task.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/task.ts"],"names":[],"mappings":"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"}
|
package/dist/src/types.d.ts
CHANGED
|
@@ -12,8 +12,9 @@
|
|
|
12
12
|
* - **Structure**: The shape of the data tree (what trees/datasets exist and their types)
|
|
13
13
|
* - **Task**: A transformation that reads input datasets and produces an output dataset
|
|
14
14
|
*/
|
|
15
|
-
import type { EastType, EastIR, ValueTypeOf, variant } from '@elaraai/east';
|
|
15
|
+
import type { EastType, EastIR, AsyncEastIR, ValueTypeOf, variant } from '@elaraai/east';
|
|
16
16
|
import type { TreePath } from '@elaraai/e3-types';
|
|
17
|
+
import type { Runner } from './runner.js';
|
|
17
18
|
/**
|
|
18
19
|
* A tree definition.
|
|
19
20
|
*
|
|
@@ -78,6 +79,36 @@ export interface TaskDef<TOutput extends EastType = EastType, Path extends TreeP
|
|
|
78
79
|
readonly taskKind?: string;
|
|
79
80
|
/** Opaque extension metadata (beast2-encoded) */
|
|
80
81
|
readonly metadata?: Uint8Array;
|
|
82
|
+
/**
|
|
83
|
+
* The typed runner this task resolves to. Undefined for custom-command
|
|
84
|
+
* tasks (customTask) — export serializes that as `runner: none` so
|
|
85
|
+
* orchestrators route it to a full environment.
|
|
86
|
+
*/
|
|
87
|
+
readonly runner?: Runner;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* A function definition.
|
|
91
|
+
*
|
|
92
|
+
* Functions are named, typed callables stored in a package and invoked by
|
|
93
|
+
* name with argument values (CLI / HTTP API). Unlike a task, a function is
|
|
94
|
+
* not wired to datasets, is not part of the dataflow graph, and triggers no
|
|
95
|
+
* recomputation. Its result is returned inline to the caller and nothing is
|
|
96
|
+
* persisted.
|
|
97
|
+
*
|
|
98
|
+
* @typeParam Inputs - The East types of the positional parameters
|
|
99
|
+
* @typeParam Output - The East type of the return value
|
|
100
|
+
*/
|
|
101
|
+
export interface FunctionDef<Inputs extends readonly EastType[] = readonly EastType[], Output extends EastType = EastType> {
|
|
102
|
+
readonly kind: 'function';
|
|
103
|
+
/** Function name (unique within the package) */
|
|
104
|
+
readonly name: string;
|
|
105
|
+
readonly body: EastIR<any, any> | AsyncEastIR<any, any>;
|
|
106
|
+
/** Positional parameter types (the East function's signature) */
|
|
107
|
+
readonly inputTypes: Inputs;
|
|
108
|
+
/** Return type */
|
|
109
|
+
readonly outputType: Output;
|
|
110
|
+
/** Runtime the body runs on; defaults to DEFAULT_RUNNER */
|
|
111
|
+
readonly runner: Runner;
|
|
81
112
|
}
|
|
82
113
|
/**
|
|
83
114
|
* An item that can be passed to e3.package().
|
|
@@ -131,6 +162,9 @@ export interface PackageDef<Datasets extends Record<string, any>> {
|
|
|
131
162
|
readonly datasets: Datasets;
|
|
132
163
|
/** All contents of the package (trees, datasets, tasks) */
|
|
133
164
|
readonly contents: Array<PackageItem>;
|
|
165
|
+
/** Named functions, by name. Functions are not part of `contents` —
|
|
166
|
+
* they have no deps and never enter the data tree. */
|
|
167
|
+
readonly functions: Record<string, FunctionDef>;
|
|
134
168
|
}
|
|
135
169
|
export {};
|
|
136
170
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/src/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elaraai/e3",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.7",
|
|
4
4
|
"description": "TypeScript SDK for authoring e3 packages",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/src/index.js",
|
|
@@ -13,10 +13,10 @@
|
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
15
|
"yazl": "^2.5.1",
|
|
16
|
-
"@elaraai/e3-types": "1.0.
|
|
16
|
+
"@elaraai/e3-types": "1.0.7"
|
|
17
17
|
},
|
|
18
18
|
"peerDependencies": {
|
|
19
|
-
"@elaraai/east": "1.0.
|
|
19
|
+
"@elaraai/east": "1.0.7"
|
|
20
20
|
},
|
|
21
21
|
"devDependencies": {
|
|
22
22
|
"@types/node": "^22.10.1",
|