@overkill-dev/run 0.0.69 → 0.0.70
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/attachments/json-snapshot.js +4 -1
- package/attachments/json-snapshot.js.map +1 -1
- package/engine/case-attempt-execution.js +22 -13
- package/engine/case-attempt-execution.js.map +1 -1
- package/engine/execution-async-leak-policy.js +15 -0
- package/engine/execution-async-leak-policy.js.map +1 -1
- package/engine/execution.d.ts.map +1 -1
- package/engine/execution.js +19 -16
- package/engine/execution.js.map +1 -1
- package/engine/resource-owner-observation.js +53 -0
- package/engine/resource-owner-observation.js.map +1 -0
- package/engine/test-body-resource-attachment.d.ts +1 -0
- package/engine/test-body-resource-attachment.d.ts.map +1 -1
- package/engine/test-body-resource-attachment.js.map +1 -1
- package/engine/test-body-workload-resolution.js +10 -0
- package/engine/test-body-workload-resolution.js.map +1 -0
- package/engine/test-node.d.ts +7 -1
- package/engine/test-node.d.ts.map +1 -1
- package/engine/test-node.js.map +1 -1
- package/engine/test-plan.d.ts +2 -0
- package/engine/test-plan.d.ts.map +1 -1
- package/engine/test-plan.js +10 -5
- package/engine/test-plan.js.map +1 -1
- package/engine/workload-input.d.ts +3 -0
- package/engine/workload-input.d.ts.map +1 -0
- package/engine/workload-input.js +54 -0
- package/engine/workload-input.js.map +1 -0
- package/engine/workload-parameters.d.ts +3 -0
- package/engine/workload-parameters.d.ts.map +1 -0
- package/engine/workload-parameters.js +67 -0
- package/engine/workload-parameters.js.map +1 -0
- package/engine/workload-test-case.d.ts +8 -0
- package/engine/workload-test-case.d.ts.map +1 -0
- package/engine/workload-test-case.js +8 -32
- package/engine/workload-test-case.js.map +1 -1
- package/package.json +5 -1
- package/packages/run/run.entry-point.d.ts +4 -2
- package/packages/run/run.entry-point.d.ts.map +1 -1
- package/packages/run/run.entry-point.js +2 -1
- package/packages/run/run.entry-point.js.map +1 -1
- package/readme.md +45 -4
- package/resources/resource-definition-shape.d.ts +2 -0
- package/resources/resource-definition-shape.d.ts.map +1 -1
- package/resources/resource-definition-types.d.ts.map +1 -1
- package/resources/resource-definition.js +17 -2
- package/resources/resource-definition.js.map +1 -1
- package/resources/resource-scenario-binding.js +12 -5
- package/resources/resource-scenario-binding.js.map +1 -1
- package/resources/resource-session.d.ts.map +1 -1
- package/resources/resource-workload-binding.js +15 -0
- package/resources/resource-workload-binding.js.map +1 -0
- package/resources/resources.d.ts.map +1 -1
- package/resources/resources.js.map +1 -1
- package/run/collected-run-execution.js +55 -0
- package/run/collected-run-execution.js.map +1 -0
- package/run/collected-run-plan-schema.js +12 -1
- package/run/collected-run-plan-schema.js.map +1 -1
- package/run/collected-run-plan.js +7 -1
- package/run/collected-run-plan.js.map +1 -1
- package/run/collected-run-planning.js +49 -0
- package/run/collected-run-planning.js.map +1 -0
- package/run/collected-run.js +43 -0
- package/run/collected-run.js.map +1 -0
- package/run/execution-plan-resolution.js +4 -1
- package/run/execution-plan-resolution.js.map +1 -1
- package/run/file-module-boundary.d.ts +3 -0
- package/run/file-module-boundary.d.ts.map +1 -0
- package/run/file-module-boundary.js +76 -0
- package/run/file-module-boundary.js.map +1 -0
- package/run/freeze-run-policy.js +1 -0
- package/run/freeze-run-policy.js.map +1 -1
- package/run/frozen-policy-origins.js +63 -0
- package/run/frozen-policy-origins.js.map +1 -0
- package/run/frozen-policy-validation.js +2 -0
- package/run/frozen-policy-validation.js.map +1 -1
- package/run/frozen-run-command.js +15 -0
- package/run/frozen-run-command.js.map +1 -1
- package/run/frozen-run-policy-schema.js +2 -0
- package/run/frozen-run-policy-schema.js.map +1 -1
- package/run/frozen-run-policy.d.ts.map +1 -1
- package/run/frozen-run-policy.js +3 -54
- package/run/frozen-run-policy.js.map +1 -1
- package/run/initialized-run.js +75 -0
- package/run/initialized-run.js.map +1 -0
- package/run/resource-lifecycle-boundaries.js +4 -3
- package/run/resource-lifecycle-boundaries.js.map +1 -1
- package/run/resource-lifecycle-cache-identity.js +10 -3
- package/run/resource-lifecycle-cache-identity.js.map +1 -1
- package/run/resource-lifecycle-composition.d.ts.map +1 -1
- package/run/resource-lifecycle-composition.js +2 -0
- package/run/resource-lifecycle-composition.js.map +1 -1
- package/run/resource-lifecycle-disposal.js +22 -10
- package/run/resource-lifecycle-disposal.js.map +1 -1
- package/run/resource-lifecycle-session-acquirer.js +21 -13
- package/run/resource-lifecycle-session-acquirer.js.map +1 -1
- package/run/resource-lifecycle-startup-budget.js +2 -1
- package/run/resource-lifecycle-startup-budget.js.map +1 -1
- package/run/resource-lifecycle-state.d.ts.map +1 -1
- package/run/resource-lifecycle-state.js +10 -0
- package/run/resource-lifecycle-state.js.map +1 -1
- package/run/resource-lifecycle.js +17 -3
- package/run/resource-lifecycle.js.map +1 -1
- package/run/run-local-command.js +1 -1
- package/run/run-local-command.js.map +1 -1
- package/run/run-local-coverage.js +1 -1
- package/run/run-local-coverage.js.map +1 -1
- package/run/run-local-planning.js +93 -0
- package/run/run-local-planning.js.map +1 -0
- package/run/run-local-resolution.js +2 -92
- package/run/run-local-resolution.js.map +1 -1
- package/run/run-operations.js +20 -14
- package/run/run-operations.js.map +1 -1
- package/run/run-types.d.ts +20 -0
- package/run/run-types.d.ts.map +1 -1
- package/run/run-types.js.map +1 -1
- package/run/run.js +4 -0
- package/run/run.js.map +1 -1
- package/run/supervised-child-test-plan.js +11 -7
- package/run/supervised-child-test-plan.js.map +1 -1
- package/run/supervised-child.js +3 -30
- package/run/supervised-child.js.map +1 -1
- package/run/supervised-protocol-schema.js +2 -1
- package/run/supervised-protocol-schema.js.map +1 -1
- package/run/supervised-protocol.js +36 -1
- package/run/supervised-protocol.js.map +1 -1
- package/run/supervised-run-runtime.js +4 -1
- package/run/supervised-run-runtime.js.map +1 -1
- package/run/supervised-run.js +2 -1
- package/run/supervised-run.js.map +1 -1
- package/run/work-unit-resource-constraints.js +23 -5
- package/run/work-unit-resource-constraints.js.map +1 -1
- package/run/worker-pool-execution.js +6 -7
- package/run/worker-pool-execution.js.map +1 -1
- package/run/worker-pool-host-protocol.js.map +1 -1
- package/run/worker-pool-host-task.js +2 -0
- package/run/worker-pool-host-task.js.map +1 -1
- package/run/worker-pool-protocol.js.map +1 -1
- package/run/worker-pool-resource-lifecycle-execution.js +8 -2
- package/run/worker-pool-resource-lifecycle-execution.js.map +1 -1
- package/run/worker-pool-task-schema.js +3 -0
- package/run/worker-pool-task-schema.js.map +1 -1
- package/run/worker-pool-worker-plan.js +5 -5
- package/run/worker-pool-worker-plan.js.map +1 -1
- package/run/worker-pool-worker-resources.js +3 -2
- package/run/worker-pool-worker-resources.js.map +1 -1
- package/run/worker-pool-worker.js +1 -1
- package/run/worker-pool-worker.js.map +1 -1
- package/run/workload-input-validation.js +61 -0
- package/run/workload-input-validation.js.map +1 -0
- package/sbom.cdx.json +5 -5
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { canonicalIdentityJson } from "../canonical-identity.js";
|
|
2
|
+
import { snapshotWorkloadParameters } from "./workload-parameters.js";
|
|
3
|
+
export function workloadParameterIdentity(parameters) {
|
|
4
|
+
return Object.freeze(Object.fromEntries(Object
|
|
5
|
+
.entries(parameters)
|
|
6
|
+
.map(function encodeParameter([key, value]) {
|
|
7
|
+
return [key.normalize('NFC'), canonicalIdentityJson(value)];
|
|
8
|
+
})
|
|
9
|
+
.toSorted(function compareNames([left], [right]) {
|
|
10
|
+
return left.localeCompare(right);
|
|
11
|
+
})));
|
|
12
|
+
}
|
|
13
|
+
export function isWorkloadRecord(value) {
|
|
14
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
15
|
+
}
|
|
16
|
+
function readWorkloadName(value) {
|
|
17
|
+
if (typeof value !== 'string' || value.trim().length === 0 || /\p{Cc}/v.test(value)) {
|
|
18
|
+
throw new TypeError('Workload identities require non-empty names without control characters.');
|
|
19
|
+
}
|
|
20
|
+
return value;
|
|
21
|
+
}
|
|
22
|
+
function readIdentityParameters(value) {
|
|
23
|
+
if (!isWorkloadRecord(value)) {
|
|
24
|
+
throw new TypeError('Workload identities require a string parameter record.');
|
|
25
|
+
}
|
|
26
|
+
const keys = new Set();
|
|
27
|
+
const entries = Object.entries(value).map(function readParameter([key, parameter]) {
|
|
28
|
+
const canonicalKey = key.normalize('NFC');
|
|
29
|
+
if (typeof parameter !== 'string' || keys.has(canonicalKey)) {
|
|
30
|
+
throw new TypeError('Workload identity parameters must be strings with distinct canonical keys.');
|
|
31
|
+
}
|
|
32
|
+
keys.add(canonicalKey);
|
|
33
|
+
return [canonicalKey, parameter];
|
|
34
|
+
});
|
|
35
|
+
return Object.freeze(Object.fromEntries(entries));
|
|
36
|
+
}
|
|
37
|
+
export function readWorkloadId(value) {
|
|
38
|
+
if (!isWorkloadRecord(value)) {
|
|
39
|
+
throw new TypeError('Workload identities require a name and string parameter record.');
|
|
40
|
+
}
|
|
41
|
+
return Object.freeze({ name: readWorkloadName(value.name), params: readIdentityParameters(value.params) });
|
|
42
|
+
}
|
|
43
|
+
export function snapshotWorkloadInput(input) {
|
|
44
|
+
const id = readWorkloadId(input.id);
|
|
45
|
+
const parameters = snapshotWorkloadParameters(input.parameters);
|
|
46
|
+
if (canonicalIdentityJson(workloadParameterIdentity(parameters)) !== canonicalIdentityJson(id.params)) {
|
|
47
|
+
throw new TypeError(`Workload "${input.id.name}" parameters do not match its identity.`);
|
|
48
|
+
}
|
|
49
|
+
return Object.freeze({
|
|
50
|
+
id,
|
|
51
|
+
parameters
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=workload-input.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workload-input.js","sourceRoot":"","sources":["../../../../source/engine/workload-input.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workload-parameters.d.ts","sourceRoot":"","sources":["../../../../source/engine/workload-parameters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAa,YAAY,EAAE,MAAM,WAAW,CAAC;AAGrE,MAAM,MAAM,kBAAkB,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { snapshotValidatedJson } from "../attachments/json-snapshot.js";
|
|
2
|
+
function isParameterRecord(value) {
|
|
3
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
4
|
+
}
|
|
5
|
+
function isContainer(value) {
|
|
6
|
+
return typeof value === 'object' && value !== null;
|
|
7
|
+
}
|
|
8
|
+
function readDataKey(value, key) {
|
|
9
|
+
const descriptor = Object.getOwnPropertyDescriptor(value, key);
|
|
10
|
+
if (typeof key !== 'string' || descriptor?.enumerable !== true || !Object.hasOwn(descriptor, 'value')) {
|
|
11
|
+
throw new TypeError('Workload parameters require enumerable string data properties.');
|
|
12
|
+
}
|
|
13
|
+
return key;
|
|
14
|
+
}
|
|
15
|
+
function isArrayIndex(key, length) {
|
|
16
|
+
return /^(?:0|[1-9]\d*)$/v.test(key) && Number(key) < length;
|
|
17
|
+
}
|
|
18
|
+
function parameterKeys(value) {
|
|
19
|
+
return Reflect
|
|
20
|
+
.ownKeys(value)
|
|
21
|
+
.filter(function dataKey(key) {
|
|
22
|
+
return !Array.isArray(value) || key !== 'length';
|
|
23
|
+
})
|
|
24
|
+
.map(function validatedKey(key) {
|
|
25
|
+
const name = readDataKey(value, key);
|
|
26
|
+
if (Array.isArray(value) && !isArrayIndex(name, value.length)) {
|
|
27
|
+
throw new TypeError('Workload arrays cannot contain additional properties.');
|
|
28
|
+
}
|
|
29
|
+
return name.normalize('NFC');
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
function validateParameterContainer(value) {
|
|
33
|
+
if (Array.isArray(value) && Object.getPrototypeOf(value) !== Array.prototype) {
|
|
34
|
+
throw new TypeError('Workload parameters require ordinary JSON arrays.');
|
|
35
|
+
}
|
|
36
|
+
const keys = parameterKeys(value);
|
|
37
|
+
const distinctKeys = new Set(keys);
|
|
38
|
+
if (distinctKeys.size !== keys.length) {
|
|
39
|
+
throw new TypeError('Workload parameter keys must be distinct after Unicode normalization.');
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
function validateParameterValue(value) {
|
|
43
|
+
if (Object.is(value, -0)) {
|
|
44
|
+
throw new TypeError('Workload parameters cannot contain negative zero.');
|
|
45
|
+
}
|
|
46
|
+
if (isContainer(value)) {
|
|
47
|
+
validateParameterContainer(value);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
function snapshotParameters(value) {
|
|
51
|
+
try {
|
|
52
|
+
return snapshotValidatedJson(value, validateParameterValue).value;
|
|
53
|
+
}
|
|
54
|
+
catch (error) {
|
|
55
|
+
throw new TypeError('workload() requires lossless, acyclic JSON parameters with depth at most 64.', {
|
|
56
|
+
cause: error
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
export function snapshotWorkloadParameters(value) {
|
|
61
|
+
const snapshot = snapshotParameters(value);
|
|
62
|
+
if (!isParameterRecord(snapshot)) {
|
|
63
|
+
throw new TypeError('workload() requires a JSON parameter record.');
|
|
64
|
+
}
|
|
65
|
+
return snapshot;
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=workload-parameters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workload-parameters.js","sourceRoot":"","sources":["../../../../source/engine/workload-parameters.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type WorkloadParameters } from './workload-input.ts';
|
|
2
|
+
import type { WorkloadId } from './identity.ts';
|
|
3
|
+
export type WorkloadVariant<Body> = {
|
|
4
|
+
readonly id: WorkloadId;
|
|
5
|
+
readonly body: Body;
|
|
6
|
+
readonly parameters: WorkloadParameters | null;
|
|
7
|
+
};
|
|
8
|
+
//# sourceMappingURL=workload-test-case.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workload-test-case.d.ts","sourceRoot":"","sources":["../../../../source/engine/workload-test-case.ts"],"names":[],"mappings":"AAAA,OAAY,OAE2D,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACvH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,MAAM,MAAM,eAAe,CAAC,IAAI,IAAI;IAChC,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,UAAU,EAAE,kBAAkB,GAAG,IAAI,CAAC;CAClD,CAAC"}
|
|
@@ -1,38 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
}
|
|
4
|
-
function readWorkloadName(value) {
|
|
5
|
-
if (typeof value !== 'string' || value.trim().length === 0 || /\p{Cc}/v.test(value)) {
|
|
6
|
-
throw new TypeError('Workload identities require non-empty names without control characters.');
|
|
7
|
-
}
|
|
8
|
-
return value;
|
|
9
|
-
}
|
|
10
|
-
function readIdentityParameters(value) {
|
|
11
|
-
if (!isRecord(value)) {
|
|
12
|
-
throw new TypeError('Workload identities require a string parameter record.');
|
|
13
|
-
}
|
|
14
|
-
const keys = new Set();
|
|
15
|
-
const entries = Object.entries(value).map(function readParameter([key, parameter]) {
|
|
16
|
-
const canonicalKey = key.normalize('NFC');
|
|
17
|
-
if (typeof parameter !== 'string' || keys.has(canonicalKey)) {
|
|
18
|
-
throw new TypeError('Workload identity parameters must be strings with distinct canonical keys.');
|
|
19
|
-
}
|
|
20
|
-
keys.add(canonicalKey);
|
|
21
|
-
return [canonicalKey, parameter];
|
|
22
|
-
});
|
|
23
|
-
return Object.freeze(Object.fromEntries(entries));
|
|
24
|
-
}
|
|
25
|
-
function readWorkloadId(value) {
|
|
26
|
-
if (!isRecord(value)) {
|
|
27
|
-
throw new TypeError('Workload identities require a name and string parameter record.');
|
|
28
|
-
}
|
|
29
|
-
return Object.freeze({ name: readWorkloadName(value.name), params: readIdentityParameters(value.params) });
|
|
30
|
-
}
|
|
1
|
+
import { snapshotWorkloadParameters } from "./workload-parameters.js";
|
|
2
|
+
import { snapshotWorkloadInput, readWorkloadId, isWorkloadRecord } from "./workload-input.js";
|
|
31
3
|
function readVariant(value, isBody) {
|
|
32
|
-
if (!
|
|
4
|
+
if (!isWorkloadRecord(value) || !isBody(value.body)) {
|
|
33
5
|
throw new TypeError('Workload test cases require workload identities and body functions.');
|
|
34
6
|
}
|
|
35
|
-
|
|
7
|
+
const id = readWorkloadId(value.id);
|
|
8
|
+
const parameters = Object.hasOwn(value, 'parameters')
|
|
9
|
+
? snapshotWorkloadInput({ id, parameters: snapshotWorkloadParameters(value.parameters) }).parameters
|
|
10
|
+
: null;
|
|
11
|
+
return Object.freeze({ body: value.body, id, parameters });
|
|
36
12
|
}
|
|
37
13
|
export function readWorkloadTestCaseVariants(value, isBody) {
|
|
38
14
|
if (!Array.isArray(value) || value.length === 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workload-test-case.js","sourceRoot":"","sources":["../../../../source/engine/workload-test-case.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"workload-test-case.js","sourceRoot":"","sources":["../../../../source/engine/workload-test-case.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,gBAAgB,EAA2B,MAAM,qBAAqB,CAAC;AASvH,SAAS,WAAW,CAAO,KAAc,EAAE,MAAyC;IAChF,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAClD,MAAM,IAAI,SAAS,CAAC,qEAAqE,CAAC,CAAC;IAC/F,CAAC;IACD,MAAM,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACpC,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC;QACjD,CAAC,CAAC,qBAAqB,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,0BAA0B,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,UAAU;QACpG,CAAC,CAAC,IAAI,CAAC;IACX,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,4BAA4B,CACxC,KAAc,EACd,MAAyC;IAEzC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,SAAS,CAAC,oDAAoD,CAAC,CAAC;IAC9E,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,mBAAmB,CAAC,KAAc;QAC1E,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAG,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAClB,MAAM,IAAI,SAAS,CAAC,4BAA4B,OAAO,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC;QACxE,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChB,OAAO,OAAO,CAAC;IACnB,CAAC,CAAC,CAAC;IACH,MAAM,CAAE,KAAK,EAAE,GAAG,SAAS,CAAE,GAAG,QAAQ,CAAC;IACzC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACtB,MAAM,IAAI,SAAS,CAAC,oDAAoD,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAE,KAAK,EAAE,GAAG,SAAS,CAAE,CAAC,CAAC;AAClD,CAAC"}
|
package/package.json
CHANGED
|
@@ -98,10 +98,12 @@
|
|
|
98
98
|
"./engine/reporter-output-scope.js",
|
|
99
99
|
"./engine/reporter-output.js",
|
|
100
100
|
"./engine/reporter.js",
|
|
101
|
+
"./engine/resource-owner-observation.js",
|
|
101
102
|
"./engine/run-result.js",
|
|
102
103
|
"./engine/run-timings.js",
|
|
103
104
|
"./engine/runtime-attachment.js",
|
|
104
105
|
"./engine/test-body-resource-attachment.js",
|
|
106
|
+
"./engine/test-body-workload-resolution.js",
|
|
105
107
|
"./engine/test-data.js",
|
|
106
108
|
"./engine/test-node.js",
|
|
107
109
|
"./package-version.js",
|
|
@@ -117,6 +119,7 @@
|
|
|
117
119
|
"./resources/resource-definition.js",
|
|
118
120
|
"./resources/resource-lifecycle-error.js",
|
|
119
121
|
"./resources/resource-scenario-binding.js",
|
|
122
|
+
"./resources/resource-workload-binding.js",
|
|
120
123
|
"./resources/resources.js",
|
|
121
124
|
"./resources/runtime-definition.js",
|
|
122
125
|
"./resources/runtime-matrix-definition.js",
|
|
@@ -141,6 +144,7 @@
|
|
|
141
144
|
"./run/diff-schema.js",
|
|
142
145
|
"./run/duration-history-schema.js",
|
|
143
146
|
"./run/execution-plan-resolution.js",
|
|
147
|
+
"./run/file-module-boundary.js",
|
|
144
148
|
"./run/frozen-run-policy-schema.js",
|
|
145
149
|
"./run/frozen-supervised-command-schema.js",
|
|
146
150
|
"./run/node-child-process-starters.js",
|
|
@@ -186,5 +190,5 @@
|
|
|
186
190
|
"./transcript/transcript-store.js"
|
|
187
191
|
],
|
|
188
192
|
"type": "module",
|
|
189
|
-
"version": "0.0.
|
|
193
|
+
"version": "0.0.70"
|
|
190
194
|
}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
export declare const runIfMain: import("../../run/run-if-main.ts").RunIfMain;
|
|
2
2
|
export { orchestrator } from '../../run/run-orchestrator.entry-point.ts';
|
|
3
3
|
export { parseFrozenMicrotestPolicy } from '../../run/frozen-run-policy.ts';
|
|
4
|
+
export { withFileModuleBoundary } from '../../run/file-module-boundary.ts';
|
|
5
|
+
export type { FileModuleBoundary } from '../../run/run-types.ts';
|
|
4
6
|
export type { FreezePolicyInput, FrozenMicrotestPolicy, FrozenRunCommand, RunPolicySource } from '../../run/run-types.ts';
|
|
5
7
|
export { defineConfig, normalizeConfig, loadConfig, ConfigError } from './config.entry-point.ts';
|
|
6
|
-
export { RunExecutionPlanError, RunResolutionError } from '../../run/run-errors.ts';
|
|
8
|
+
export { RunCollectionError, RunExecutionPlanError, RunResolutionError } from '../../run/run-errors.ts';
|
|
7
9
|
export type { IntegrationRetryPolicy, RetryArtifactPolicy, ProjectIntegrationRetryPolicy } from './config.entry-point.ts';
|
|
8
10
|
export type { PlannedResourceOwner, ResourceOwnerPlacement, ResourceOwnershipPlan } from '../../run/resource-ownership-plan.ts';
|
|
9
11
|
export type { LoadedConfig, ConfigLoader, ConfigLoaderDependencies, ConfigLoadRequest, ProjectCoverageOutput, ProjectCoveragePolicy, ProjectCoverageSources, ProjectCoverageThresholds, ProjectAttachmentLimits, Config, ProjectIntegrationExecution, ProjectIntegrationProfileConfig, ProjectMeasuredResourceUsage, ProjectMicrotestExecution, ProjectMicrotestProfileConfig, ProjectProfileFiles, ProjectProfileConfig, ProjectProfilesConfig, ProjectResourceBudgets, ProjectResourceUsageConfig, ProjectTimingProfilePolicy, ProjectTimeoutConfig, ProjectUnmeasuredResourceUsage } from '../../config/config.ts';
|
|
@@ -14,7 +16,7 @@ export type { ExecutionPlanResourceFacts, RunExecutionPlanConflict, RunResolutio
|
|
|
14
16
|
export type { RunInvocationTimingOptions } from '../../run/run-timing-collection.ts';
|
|
15
17
|
export type { RuntimeDimensions, RuntimeId, RuntimeScenarioBindings, WorkId, WorkloadId } from '../../engine/identity.ts';
|
|
16
18
|
export type { DynamicWorkUnitId, PlacementAttemptId, PlacementAttemptInterruptionCause, PlacementAttemptReason, PlacementRecoveryDecision, PlacementTrace, PlacementTraceEntry, PlacementWorkerId, TraceWorkUnitId } from '../../run/placement-trace.ts';
|
|
17
|
-
export type { CollectedRunCase, CollectedRunFile, CollectedRunPlan, ExecutorDescriptor, PlacementAssignment, PlacementLane, PlacementPlan, ResolvedRun, ResolvedRunPlan, RunCaseFacts, RunCommand, RunDebugRequest, RunEngineFacts, RunEnvironmentFacts, RunExecutionRequest, RunFacts, RunExecutionFacts, RunHostProcessFacts, RunHostProcessReason, BenchmarkOrchestrator, BenchmarkBaselineCommand, BenchmarkBaselineListCommand, BenchmarkBaselineOrchestrator, BenchmarkBaselineRunResult, RunReporterDeliveryResult, RunOrchestrator, RunReproducibilityFacts, RunRequest, RunSeed, RunShard, RunTestFamily, RunWorkerCountFacts, SerializedValue, DuplicateExecutionSafety, WorkUnitId, WorkUnit, WorkUnitMode } from '../../run/run-types.ts';
|
|
19
|
+
export type { CollectedRun, CollectedRunInvocation, InitializedRun, CollectedRunCase, CollectedRunFile, CollectedRunPlan, ExecutorDescriptor, PlacementAssignment, PlacementLane, PlacementPlan, ResolvedRun, ResolvedRunPlan, RunCaseFacts, RunCommand, RunDebugRequest, RunEngineFacts, RunEnvironmentFacts, RunExecutionRequest, RunFacts, RunExecutionFacts, RunHostProcessFacts, RunHostProcessReason, BenchmarkOrchestrator, BenchmarkBaselineCommand, BenchmarkBaselineListCommand, BenchmarkBaselineOrchestrator, BenchmarkBaselineRunResult, RunReporterDeliveryResult, RunOrchestrator, RunReproducibilityFacts, RunRequest, RunSeed, RunShard, RunTestFamily, RunWorkerCountFacts, SerializedValue, DuplicateExecutionSafety, WorkUnitId, WorkUnit, WorkUnitMode } from '../../run/run-types.ts';
|
|
18
20
|
export type { CoverageOutput, NormalizedConfig, CoveragePolicy, CoverageSourcePolicy, CoverageThresholds, HostProcess, IntegrationExecution, IntegrationProfileConfig, LoaderConfig, MaxConcurrency, MicrotestExecution, MicrotestProfileConfig, RunOrder, ProcessModel, ProfileConfig, BenchmarkExecution, BenchmarkProfileConfig, TestProfileConfig, ProfileFiles, ProfilesConfig, ResourceBudgets, ResourceUsagePolicy, Scheduling, TimeoutPolicy, TimingCollectionMode, TimingCollectionOverride, TimingProfilePolicy, WorkDistribution, WorkGroup, WorkGroupGranularity, WorkGroupOrder, WorkGroupScheduling, WorkGroupWorkerLifecycle, WorkerPoolAssignmentPolicy, WorkerPoolDispatchPolicy, WorkerPoolHedgingPolicy, WorkerLifecycle } from '../../config/types.ts';
|
|
19
21
|
export type { RunEngineSelection } from '../../run/run-request-types.ts';
|
|
20
22
|
export type { RunFilter, RunRuntimeDimensionFilter, RunRuntimeFilter, RunRuntimeScenarioFilter, RunRuntimeVariantFilter, RunSelection, RunStringFilterField } from '../../run/run-request-types.ts';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.entry-point.d.ts","sourceRoot":"","sources":["../../../../../source/packages/run/run.entry-point.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,SAAS,8CAapB,CAAC;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAC5E,YAAY,EACR,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,EAChB,eAAe,EAClB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACH,YAAY,EACZ,eAAe,EACf,UAAU,EACV,WAAW,EACd,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"run.entry-point.d.ts","sourceRoot":"","sources":["../../../../../source/packages/run/run.entry-point.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,7 @@ export const runIfMain = createRunIfMain({
|
|
|
27
27
|
});
|
|
28
28
|
export { orchestrator } from "../../run/run-orchestrator.entry-point.js";
|
|
29
29
|
export { parseFrozenMicrotestPolicy } from "../../run/frozen-run-policy.js";
|
|
30
|
+
export { withFileModuleBoundary } from "../../run/file-module-boundary.js";
|
|
30
31
|
export { defineConfig, normalizeConfig, loadConfig, ConfigError } from "./config.entry-point.js";
|
|
31
|
-
export { RunExecutionPlanError, RunResolutionError } from "../../run/run-errors.js";
|
|
32
|
+
export { RunCollectionError, RunExecutionPlanError, RunResolutionError } from "../../run/run-errors.js";
|
|
32
33
|
//# sourceMappingURL=run.entry-point.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.entry-point.js","sourceRoot":"","sources":["../../../../../source/packages/run/run.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,MAAM,oBAAoB,GAAG,2BAA2B,CAAC;IACrD,aAAa;IACb,IAAI;IACJ,UAAU;IACV,QAAQ;IACR,IAAI;CACP,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,SAAS,GAAG,eAAe,CAAC;IACrC,uBAAuB;QACnB,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC;IACzB,CAAC;IACD,YAAY;QACR,OAAO,OAAO,CAAC,QAAQ,CAAC;IAC5B,CAAC;IACD,oBAAoB;IACpB,mBAAmB;IACnB,WAAW,CAAC,QAAQ;QAChB,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAChC,CAAC;IACD,MAAM,EAAE,OAAO,CAAC,MAAM;CACzB,CAAC,CAAC;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"run.entry-point.js","sourceRoot":"","sources":["../../../../../source/packages/run/run.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,MAAM,oBAAoB,GAAG,2BAA2B,CAAC;IACrD,aAAa;IACb,IAAI;IACJ,UAAU;IACV,QAAQ;IACR,IAAI;CACP,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,SAAS,GAAG,eAAe,CAAC;IACrC,uBAAuB;QACnB,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC;IACzB,CAAC;IACD,YAAY;QACR,OAAO,OAAO,CAAC,QAAQ,CAAC;IAC5B,CAAC;IACD,oBAAoB;IACpB,mBAAmB;IACnB,WAAW,CAAC,QAAQ;QAChB,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAChC,CAAC;IACD,MAAM,EAAE,OAAO,CAAC,MAAM;CACzB,CAAC,CAAC;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAQ3E,OAAO,EACH,YAAY,EACZ,eAAe,EACf,UAAU,EACV,WAAW,EACd,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC"}
|
package/readme.md
CHANGED
|
@@ -17,8 +17,10 @@ Top-level API:
|
|
|
17
17
|
- `orchestrator.resolve(command)`
|
|
18
18
|
- `orchestrator.run(command)`
|
|
19
19
|
- `orchestrator.runWithReporterDelivery(command)`
|
|
20
|
-
- `orchestrator.freezePolicy({ command, source })`
|
|
20
|
+
- `orchestrator.freezePolicy({ command, source, moduleBoundary })`
|
|
21
|
+
- `orchestrator.initialize(command)`
|
|
21
22
|
- `parseFrozenMicrotestPolicy(value)`
|
|
23
|
+
- `withFileModuleBoundary(boundary, operation)`
|
|
22
24
|
|
|
23
25
|
`Config` describes authored policy. `normalizeConfig` produces a
|
|
24
26
|
command-independent `NormalizedConfig` without reading files; `loadConfig`
|
|
@@ -35,6 +37,46 @@ tests or custom engines. It returns an immutable, serializable
|
|
|
35
37
|
discovered descriptors, baseline request, portable engine, and source identity.
|
|
36
38
|
Engine instances and other profile families are unsupported.
|
|
37
39
|
|
|
40
|
+
Pass `moduleBoundary: null` for ordinary freezing. A `FileModuleBoundary`
|
|
41
|
+
contains an absolute `projectRoot` matching discovery and explicit absolute
|
|
42
|
+
`sharedRoots` for installed dependencies and runner bootstrap. Shared roots
|
|
43
|
+
must not contain the project root. Frozen runner operations enforce this
|
|
44
|
+
additional module constraint in both process models, before config revalidation
|
|
45
|
+
and through execution cleanup. It does not grant filesystem permissions.
|
|
46
|
+
Older serialized policies without this field normalize it to `null`.
|
|
47
|
+
|
|
48
|
+
`withFileModuleBoundary(boundary, operation)` applies the same constraint to
|
|
49
|
+
configuration loading before freezing. Native synchronous module hooks reject
|
|
50
|
+
file imports whose real paths escape the allowed roots, including symlink
|
|
51
|
+
escapes. Hooks are scoped to the asynchronous operation and removed on success
|
|
52
|
+
or failure. A `null` boundary installs no hook. Native module caching remains
|
|
53
|
+
unchanged.
|
|
54
|
+
|
|
55
|
+
`initialize` accepts an ordinary or frozen-policy command and prepares discovery
|
|
56
|
+
without importing config again, custom engines, or tests. The selected profile
|
|
57
|
+
must use `in-process` execution. Caller bootstrap can run before
|
|
58
|
+
`await initialized.collect()`. Collection validates file-backed frozen policy,
|
|
59
|
+
imports modules under ordinary runtime policy, and caches either the collected
|
|
60
|
+
handle or the failure. Collection failures may expose `RunCollectionError` or
|
|
61
|
+
an `AggregateError` containing the original runtime-policy errors.
|
|
62
|
+
An initial selection matching no cases rejects collection with
|
|
63
|
+
`no-tests-collected`, as `resolve` does.
|
|
64
|
+
|
|
65
|
+
The collected handle exposes immutable `facts` and a body-free `plan` catalog.
|
|
66
|
+
`await collected.run({ selection: { kind: 'all' } })` executes that plan without
|
|
67
|
+
reimporting modules. Invocation selection may only narrow the original eligible
|
|
68
|
+
cases; seed, shard, order, and policy remain fixed. Empty selection and empty
|
|
69
|
+
shards retain ordinary runner semantics. `runWithReporterDelivery` returns the
|
|
70
|
+
usual result and reporter-delivery tracking.
|
|
71
|
+
|
|
72
|
+
Each invocation creates fresh scopes, assertions, cleanup, runtime observers,
|
|
73
|
+
reporter instances, and result collection. Observers close before the handle
|
|
74
|
+
becomes idle, including on failures. Overlapping invocations of the same handle
|
|
75
|
+
reject with `invalid-request`. Module state remains shared between invocations.
|
|
76
|
+
Explicit ordinary coverage creates a fresh session and run record each time;
|
|
77
|
+
previous collection imports are not repeated for coverage. No disposal call is
|
|
78
|
+
required for an idle handle.
|
|
79
|
+
|
|
38
80
|
Use `source: { kind: 'memory' }` for supplied config, or
|
|
39
81
|
`{ kind: 'config-file', request: { cwd, configPath }, resolvedPath }` for loaded
|
|
40
82
|
config. `resolvedPath` is the loaded config's `configPath`, including `null` for
|
|
@@ -267,9 +309,8 @@ Resource usage measurement is explicit. Project config can enable it under
|
|
|
267
309
|
`profiles.<name>.resourceUsage.measure`; `RunRequest.measureResourceUsage`
|
|
268
310
|
can override that policy for one run. `resourceUsage.budgets` are thresholds
|
|
269
311
|
and require measurement, while `RunRequest.resourceBudgetOverrides` changes
|
|
270
|
-
individual thresholds for one run.
|
|
271
|
-
|
|
272
|
-
typed request fields.
|
|
312
|
+
individual thresholds for one run. CLI commands use the selected profile's
|
|
313
|
+
resource usage policy.
|
|
273
314
|
|
|
274
315
|
Runner timing collection is explicit beyond the always-present summary.
|
|
275
316
|
Project config can set `profiles.<name>.timings.collection` to `summary` or
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { WorkloadParameters } from '../engine/workload-input.ts';
|
|
1
2
|
import type { ResourceScenarioSlots } from './resource-scenario.ts';
|
|
2
3
|
export type Awaitable<Value> = Promise<Value> | Value;
|
|
3
4
|
type ExclusiveResource = {
|
|
@@ -44,6 +45,7 @@ export type AnyResourceDefinition = {
|
|
|
44
45
|
readonly requirements: readonly ExecutionRequirement[];
|
|
45
46
|
readonly scenarios: ResourceScenarioSlots;
|
|
46
47
|
readonly scope: ResourceScope;
|
|
48
|
+
readonly workload: ((parameters: WorkloadParameters) => WorkloadParameters) | null;
|
|
47
49
|
readonly serializeHandle?: (handle: never, context: never) => ResourceProjectionPayload;
|
|
48
50
|
};
|
|
49
51
|
export type RuntimeResourceMap = Readonly<Record<string, AnyResourceDefinition>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-definition-shape.d.ts","sourceRoot":"","sources":["../../../../source/resources/resource-definition-shape.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resource-definition-shape.d.ts","sourceRoot":"","sources":["../../../../source/resources/resource-definition-shape.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-definition-types.d.ts","sourceRoot":"","sources":["../../../../source/resources/resource-definition-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"resource-definition-types.d.ts","sourceRoot":"","sources":["../../../../source/resources/resource-definition-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAGE,kBAEW,wBAQxB,MAAM,gCAAgC,CAAC;MAYlC,MAAmD,cAkBhB,CACnB,QAAqB,QAMR,CAAS,qBAAqB,IAAI,QAAQ,SAAS;IAClF,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,KAAK,MAAM,cAAc,CAAC,GAAG,SAAS,CAAC;CACvG,GAAG,cAAc,GACZ,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAE/C,MAAM,MAAM,eAAe,CAAC,SAAS,SAAS,oBAAoB,IAAI;IAClE,QAAQ,EAAE,GAAG,IAAI,MAAM,SAAS,GAAG,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;CACpE,CAAC;AAEF,MAAM,CAIF,EAMH,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { resourceDefinitionBrand } from "./resource-definition-brand.js";
|
|
2
1
|
import { freezeResourceScenarioSlots } from "./resource-scenario.js";
|
|
2
|
+
import { resourceDefinitionBrand } from "./resource-definition-brand.js";
|
|
3
3
|
function isRecord(value) {
|
|
4
4
|
return typeof value === 'object' && value !== null;
|
|
5
5
|
}
|
|
@@ -30,13 +30,24 @@ function resourceHandleExposure(definition, scenarios) {
|
|
|
30
30
|
}
|
|
31
31
|
return declaredExposeHandle;
|
|
32
32
|
}
|
|
33
|
-
function
|
|
33
|
+
function resourceWorkloadParser(definition) {
|
|
34
|
+
const parser = Reflect.get(definition, 'workload');
|
|
35
|
+
if (parser === undefined || parser === null) {
|
|
36
|
+
return null;
|
|
37
|
+
}
|
|
38
|
+
if (typeof parser !== 'function') {
|
|
39
|
+
throw new TypeError('Resource workload requires a synchronous parameter parser.');
|
|
40
|
+
}
|
|
41
|
+
return parser;
|
|
42
|
+
}
|
|
43
|
+
export function normalizeResourceDefinition(definition) {
|
|
34
44
|
const scenarios = resourceScenarios(definition);
|
|
35
45
|
return Object.freeze({
|
|
36
46
|
...definition,
|
|
37
47
|
dependencies: resourceDependencies(definition),
|
|
38
48
|
exposeHandle: resourceHandleExposure(definition, scenarios),
|
|
39
49
|
scenarios,
|
|
50
|
+
workload: resourceWorkloadParser(definition),
|
|
40
51
|
[resourceDefinitionBrand]: true
|
|
41
52
|
});
|
|
42
53
|
}
|
|
@@ -45,6 +56,10 @@ function isDefinedResource(resource) {
|
|
|
45
56
|
resource !== null &&
|
|
46
57
|
Reflect.get(resource, resourceDefinitionBrand) === true;
|
|
47
58
|
}
|
|
59
|
+
function defineResource(definition) {
|
|
60
|
+
const normalized = normalizeResourceDefinition(definition);
|
|
61
|
+
return normalized;
|
|
62
|
+
}
|
|
48
63
|
export const resourceDefinitionApi = Object.freeze({
|
|
49
64
|
defineResource,
|
|
50
65
|
isDefinedResource
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-definition.js","sourceRoot":"","sources":["../../../../source/resources/resource-definition.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"resource-definition.js","sourceRoot":"","sources":["../../../../source/resources/resource-definition.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,22 @@
|
|
|
1
1
|
import { resourceAttachments } from "../attachments/attachment-context.js";
|
|
2
2
|
import { defaultScenarioBindings, scenarioBindingsForTiming } from "./resource-scenario.js";
|
|
3
|
-
const
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
const sources = new WeakMap();
|
|
4
|
+
export function inheritResourceDefinition(resource, source) {
|
|
5
|
+
sources.set(resource, source);
|
|
6
|
+
}
|
|
7
|
+
export function parentResourceDefinition(resource) {
|
|
8
|
+
return sources.get(resource) ?? null;
|
|
9
|
+
}
|
|
6
10
|
export function sourceResourceDefinition(resource) {
|
|
7
|
-
|
|
11
|
+
const parent = parentResourceDefinition(resource);
|
|
12
|
+
return parent === null ? resource : sourceResourceDefinition(parent);
|
|
8
13
|
}
|
|
14
|
+
const boundResourceScenarios = new WeakMap();
|
|
15
|
+
|
|
9
16
|
export function bindResourceScenarios(resource, bindings) {
|
|
10
17
|
const bound = Object.freeze({ ...resource });
|
|
11
18
|
boundResourceScenarios.set(bound, bindings);
|
|
12
|
-
|
|
19
|
+
inheritResourceDefinition(bound, resource);
|
|
13
20
|
return bound;
|
|
14
21
|
}
|
|
15
22
|
export function resolvedResourceScenarioBindings(resource) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-scenario-binding.js","sourceRoot":"","sources":["../../../../source/resources/resource-scenario-binding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAE3E,OAAO,EACH,uBAAuB,EACvB,yBAAyB,EAI5B,MAAM,wBAAwB,CAAC;AAuDhC,MAAM,
|
|
1
|
+
{"version":3,"file":"resource-scenario-binding.js","sourceRoot":"","sources":["../../../../source/resources/resource-scenario-binding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAE3E,OAAO,EACH,uBAAuB,EACvB,yBAAyB,EAI5B,MAAM,wBAAwB,CAAC;AAuDhC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAgD,CAAC;AAE5E,MAAM,UAAU,yBAAyB,CAAC,QAA+B,EAAE,MAA6B;IACpG,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,QAA+B;IACpE,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,QAA+B;IACpE,MAAM,MAAM,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IAClD,OAAO,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;AACzE,CAAC;AAED,MAAM,sBAAsB,GAAG,IAAI,OAAO,EAA2D,CAAC;;MA+BhG,cAsB6B,gBAOI,CACT,CAAC,QAAQ,IAY0B,CAI3B,GACF,EAA0C,EAG5B,CAAC;kBAyBjC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC;IAE7C,sBAAsB,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC5C,yBAAyB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAE3C,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,gCAAgC,CAC5C,QAA+B;IAE/B,OAAO,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,uBAAuB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AAC/F,CAAC;AAED,MAAM,UAAU,mCAAmC,CAC/C,QAA+B;IAE/B,OAAO,yBAAyB,CAAC,QAAQ,CAAC,SAAS,EAAE,gCAAgC,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;AAChH,CAAC;AAED,SAAS,qCAAqC,CAC1C,QAA+B;IAE/B,OAAO,yBAAyB,CAAC,QAAQ,CAAC,SAAS,EAAE,gCAAgC,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC,CAAC;AACvH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,QAA+B,EAAE,MAAe;IACjF,IAAI,QAAQ,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;QACjC,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,OAAO,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY,EAAE,SAAS,EAAE,CAAE,MAAM,EAAE;YAC7D,WAAW,EAAE,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC/C,SAAS,EAAE,qCAAqC,CAAC,QAAQ,CAAC;SAC7D,CAAE,CAAC,CAAC;AACT,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-session.d.ts","sourceRoot":"","sources":["../../../../source/resources/resource-session.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"resource-session.d.ts","sourceRoot":"","sources":["../../../../source/resources/resource-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,iBAOO,EAEf,oBAAoB,EAGvB,MAAM,gBAAgB,CAAC;MAgDlB,oCASoC,GAAG;IACzC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,eAAe,CAAC,SAAS,SAAS,oBAAoB,IAAI,eAAe,GAAG;IACpF,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IAC7C,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,EAAE,8BAA8B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACpF,CAAC;AA0DF,OAwMW,EAKT,CAqBD"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import "../engine/workload-input.js";
|
|
2
|
+
import "../engine/workload-parameters.js";
|
|
3
|
+
import "./resource-graph.js";
|
|
4
|
+
import { parentResourceDefinition } from "./resource-scenario-binding.js";
|
|
5
|
+
const resourceWorkloads = new WeakMap();
|
|
6
|
+
export function resourceWorkloadIdentity(resource) {
|
|
7
|
+
const bound = resourceWorkloads.get(resource);
|
|
8
|
+
if (bound !== undefined) {
|
|
9
|
+
return bound.id;
|
|
10
|
+
}
|
|
11
|
+
const parent = parentResourceDefinition(resource);
|
|
12
|
+
return parent === null ? null : resourceWorkloadIdentity(parent);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
//# sourceMappingURL=resource-workload-binding.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource-workload-binding.js","sourceRoot":"","sources":["../../../../source/resources/resource-workload-binding.ts"],"names":[],"mappings":"AACA,OAA0D,6BAA6B,CAAC;AACxF,OAA2C,kCAAkC,CAAC;AAC9E,OAAoC,qBAAqB,CAAC;AAI1D,OAAO,EAA6B,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAErG,MAAM,iBAAiB,GAAG,IAAI,OAAO,EAAwC,CAAC;AAE9E,MAAM,UAAU,wBAAwB,CAAC,QAA+B;IACpE,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC9C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,KAAK,CAAC,EAAE,CAAC;IACpB,CAAC;IACD,MAAM,MAAM,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IAClD,OAAO,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;AACrE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../../../source/resources/resources.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../../../source/resources/resources.ts"],"names":[],"mappings":"AAAA,OAAY,OAGR,gDAOqD,EACrD,KAAK,iBACiB,IAAI,qBAG7B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEH,KAAK,oBAAoB,IAAI,8BAA8B,EAC3D,KAAK,YAAY,IAAI,sBAAsB,EAC3C,KAAK,gBAAgB,IAAI,0BAA0B,EACnD,KAAK,uBAAuB,IAAI,uBAAuB,EACvD,KAAK,oBAEoB,IAAI,8BAA8B,EAC9D,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EACR,qBAAqB,IAAI,0BAA0B,sBAE1B,6BAAkC,SAE3D,WAGkB,IAAI,uBAAuB,EAChD,MAAM,gCAAgC,CAAC;AACxC,YACY,EACR,eAAe,IAAI,oBAAoB,EACvC,cAIc,IAAI,qBAErB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EACR,wBAEyB,CAAI,4BAKhC,MAAM,wBAAwB,CAAC;8DAe9B,CAAC;AACH,WACM,CAaM,qBAAqB,GAAG,0BAA0B,CAAC;AAC/D,MAAM,0BAC+B,4BAAiC,CAAC;AACvE,MAAM,aACM,WAGkB,GAAG,uBAAuB,CAAC;AACzD,MAAM,MAAM,eAAe,CAAC,SAAS,SAAS,oBAAoB,IAAI,oBAAoB,CAAC,SAAS,CAAC,CAAC;AACtG,MAAM,MAAM,cAU0C,CAAC,iBAgBX,qBAAqB,IAAI,mBAAmB,CAAC,QAAQ,CAAC,CAAC;AACnG,MAAM,MAAM,kBASR,IAAI,SAAS,MAAM,GAAG,MAAM,EAC5B,UAAU,SAAS,mBAAmB,GAAG,mBAAmB,EAC5D,SAAS,SAAS,kBAAkB,GAAG,kBAAkB,EACzD,SAAS,SAAS,qBAAqB,GAAG,qBAAqB,IAC/D,2BAA2B,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AACxE,MAAM,MAAM,YAOY,GAAG,sBAAsB,CAAC;AAClD,MAAM,MAAM,gBAAgB,GAAG,0BAA0B,CAAC;AAC1D,MAAM,MAAM,oBAAoB,CAC5B,QAAQ,SAAS,SAAS,gBAAgB,EAAE,GAAG,SAAS,gBAAgB,EAAE,IAC1E,8BAA8B,CAAC,QAAQ,CAAC,CAAC;AAC7C,MAAM,MAAM,uBAIuB,CAC/B,IAAI,SAAS,MAAM,GAAG,MAAM,EAC5B,QAAQ,SAAS,uBAAuB,GAAG,uBAAuB,IAClE,uBAAuB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC5C,MAAM,MAAM,aAER,OAAyB,CACU,kBAIF,eAGA,EACjC,OAAO,SAAS,iBAAiB,GAAG,iBAAiB,IACrD,8BAA8B,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AACvD,MAAM,MAAM,uBAAuB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC;AAErF,KAAK,mBAAmB,CAAC,KAAK,IAAI,CAC9B,KAAK,SAAS,OAAO,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,KAAK,CACzD,SAAS,CAAC,KAAK,EAAE,MAAM,YAAY,KAAK,IAAI,GAAG,YAAY,GAAG,KAAK,CAAC;AACrE,KAAK,gBAAgB,CAAC,KAAK,SAAS,YAAY,IAAI,oBAAoB,CAAC,KAAK,CAAC,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAC/G,KAAK,oBAAoB,CAAC,KAAK,SAAS,YAAY,IAAI,KAAK,SAAS,oBAAoB,CAAC,MAAM,QAAQ,CAAC,GACpG,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAClC,KAAK,CAAC;AACZ,KAAK,qBAAqB,CAAC,KAAK,IAAI,KAAK,SAAS;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,SAAS,MAAM,CAAC;CAAE,GAAG,IAAI,GAAG,KAAK,CAAC;AAC/G,KAAK,oBAAoB,CAAC,MAAM,SAAS,uBAAuB,IAC5D,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AAC5D,KAAK,mBAAmB,CAAC,KAAK,SAAS,gBAAgB,IAAI;IACvD,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;IACpD,QAAQ,CAAC,gBAAgB,EAAE,oBAAoB,CAAC,OAAO,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAC,CAAC;CAC5F,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;AACjB,KAAK,qBAAqB,CAAC,OAAO,SAAS,gBAAgB,IAAI,mBAAmB,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,CAAC;AAEzG,MAAM,MAAM,cAAc,CAAC,OAAO,SAAS,gBAAgB,IAAI;IAC3D,QAAQ,EAAE,GAAG,IAAI,MAAM,qBAAqB,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC;CAC9G,CAAC;AAEF,MAAM,MAAM,mBAAmB,CAAC,KAAK,SAAS,YAAY,IAAI,KAAK,SAAS,oBAAoB,GAC1F,mBAAmB,CAAC,KAAK,CAAC,GAC1B,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC;AAEvD,MAAM,MAAM,mBAAmB,CAAC,OAAO,SAAS,YAAY,IAAI,QAAQ,CACpE,OAAO,SAAS,oBAAoB,CAAC,MAAM,QAAQ,CAAC,GAAG,mBAAmB,CAAC,mBAAmB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,GAC3G,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAC9F,CAAC;IAKE,GAQoC,EAEvC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resources.js","sourceRoot":"","sources":["../../../../source/resources/resources.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"resources.js","sourceRoot":"","sources":["../../../../source/resources/resources.ts"],"names":[],"mappings":"AACA,OAAyD,kDAAkD,CAAC;AAK5G,OAAO,+BAG0B,IAAI,yBAAyB,EAM7D,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACH,0BAA0B,EAQ7B,MAAM,gCAAgC,CAAC;AAWxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAmBjE,OAAO,EAAE,gCAAgC,IAAI,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAElH,MAAM,oBAAoB,GAAG,0BAA0B,CAAC,eAAe,CAAC;AACxE,MAAM,6BAA6B,GAAG,0BAA0B,CAAC,mBAAmB,CAAC;MAG/E,CAAC,MAAM,EACT,iBAAiB,EACjB,gCAAgC,EAChC,6BAA6B,EAChC,GAAG,MAAM,CAAC,MAAM,CAAC;IACd,iBAAiB,EAAE,qBAAqB,CAAC,iBAAiB;IAC1D,gCAAgC,EAAE,4BAA4B;IAC9D,6BAA6B,EAAE,yBAAyB;CAC3D,CAAC,CAAC;AACH,MAAM,CAAC,qBAuDD,GACC,oBAA4C,CAAC;;OA6GpD,SAAS,kBA+GyB,CAAC,OAAqB;IACpD,MAAM,MAAM,GAAG,0BAA0B,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAEtE,OAAO,MAAM,CAAC;AAClB,CAAC"}
|