@overkill-dev/run 0.0.18 → 0.0.19

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.
Files changed (49) hide show
  1. package/engine/execution-supervision.d.ts.map +1 -1
  2. package/engine/execution-supervision.js +1 -11
  3. package/engine/execution-supervision.js.map +1 -1
  4. package/engine/resource-usage-growth.js +12 -0
  5. package/engine/resource-usage-growth.js.map +1 -0
  6. package/package.json +2 -1
  7. package/packages/run/run.entry-point.d.ts +1 -1
  8. package/packages/run/run.entry-point.d.ts.map +1 -1
  9. package/readme.md +10 -5
  10. package/run/collected-run-plan.js +100 -0
  11. package/run/collected-run-plan.js.map +1 -0
  12. package/run/command-line-runner.js +1 -1
  13. package/run/command-line-runner.js.map +1 -1
  14. package/run/run-config-schema.d.ts +5 -0
  15. package/run/run-config-schema.d.ts.map +1 -1
  16. package/run/run-config-schema.js +1 -0
  17. package/run/run-config-schema.js.map +1 -1
  18. package/run/run-config.d.ts.map +1 -1
  19. package/run/run-config.js +8 -2
  20. package/run/run-config.js.map +1 -1
  21. package/run/run-engine-selection.js +92 -0
  22. package/run/run-engine-selection.js.map +1 -0
  23. package/run/run-facts.js +103 -0
  24. package/run/run-facts.js.map +1 -0
  25. package/run/run-local-test-plan.js +25 -0
  26. package/run/run-local-test-plan.js.map +1 -0
  27. package/run/run-process-engine.js +40 -0
  28. package/run/run-process-engine.js.map +1 -0
  29. package/run/run-support.js +32 -0
  30. package/run/run-support.js.map +1 -1
  31. package/run/run-test-plan.js +20 -0
  32. package/run/run-test-plan.js.map +1 -0
  33. package/run/run-types.d.ts +54 -3
  34. package/run/run-types.d.ts.map +1 -1
  35. package/run/run-types.js.map +1 -1
  36. package/run/run-validation.js +122 -0
  37. package/run/run-validation.js.map +1 -0
  38. package/run/run.js +129 -227
  39. package/run/run.js.map +1 -1
  40. package/run/supervised-child-process.js +8 -8
  41. package/run/supervised-child-process.js.map +1 -1
  42. package/run/supervised-run-resource-policy.js +64 -0
  43. package/run/supervised-run-resource-policy.js.map +1 -0
  44. package/run/supervised-run-runtime.js +257 -0
  45. package/run/supervised-run-runtime.js.map +1 -0
  46. package/run/supervised-run-state.js.map +1 -1
  47. package/run/supervised-run.js +206 -246
  48. package/run/supervised-run.js.map +1 -1
  49. package/sbom.cdx.json +4 -4
@@ -0,0 +1,257 @@
1
+ import { caseIdentityKey } from "../engine/identity.js";
2
+ import { collectedRunCaseIds, createRunResultFromCollectedPlan } from "./collected-run-plan.js";
3
+ import { observeSupervisedChildOutput } from "./supervised-child-process.js";
4
+ import { crashError, findResourceBudgetBreach, resourceExhaustionError } from "./supervised-run-resource-policy.js";
5
+ import { deduplicatedChildRuntimePolicyErrors } from "./supervised-run-state.js";
6
+ function runStartTimeFromMilliseconds(milliseconds) {
7
+ const startedAt = new Date(milliseconds);
8
+ return startedAt.toISOString();
9
+ }
10
+ export function createReporterEventQueue() {
11
+ const eventReports = [];
12
+ return {
13
+ add(eventReport) {
14
+ eventReports.push(eventReport);
15
+ },
16
+ async wait() {
17
+ await Promise.all(eventReports);
18
+ }
19
+ };
20
+ }
21
+ async function recordReporterEventErrors(event, state, context, dependencies) {
22
+ const errors = await dependencies.reporterDispatcher.reportEvent(context.reporters, event, context.outputRenderer);
23
+ if (errors.length > 0) {
24
+ state.recordRunnerErrors(errors);
25
+ }
26
+ }
27
+ function caseByKey(collectedPlan) {
28
+ return new Map(collectedRunCaseIds(collectedPlan).map(function toEntry(id) {
29
+ return [caseIdentityKey(id), { id }];
30
+ }));
31
+ }
32
+ export function applyEvent(event, state, cases) {
33
+ if (event.kind === 'test-start') {
34
+ const testCase = cases.get(caseIdentityKey(event.case));
35
+ if (testCase !== undefined) {
36
+ state.addActiveCase(caseIdentityKey(event.case), testCase);
37
+ }
38
+ }
39
+ else if (event.kind === 'test-end') {
40
+ const key = caseIdentityKey(event.case);
41
+ state.removeActiveCase(key);
42
+ state.recordPerTestResult(key, {
43
+ id: event.case,
44
+ outcome: event.outcome,
45
+ verdict: event.verdict
46
+ });
47
+ }
48
+ else if (event.kind === 'runner-error') {
49
+ state.recordRunnerError(event.error);
50
+ }
51
+ }
52
+ function createPartialRunResult(collectedPlan, state, dependencies, startedAtMs) {
53
+ return createRunResultFromCollectedPlan(collectedPlan, state.perTestResults(), state.runnerErrors(), {
54
+ resourceUsage: null,
55
+ startedAtMs,
56
+ wallClock: dependencies.wallClock
57
+ });
58
+ }
59
+ export function kill(child) {
60
+ if (child.pid !== undefined && child.exitCode === null && child.signalCode === null) {
61
+ child.kill('SIGKILL');
62
+ }
63
+ }
64
+ export function createReporterContext(resolvedRun) {
65
+ return {
66
+ outputRenderer: resolvedRun.config.outputRenderer,
67
+ reporters: resolvedRun.reporters
68
+ };
69
+ }
70
+ export function supervisedCollectedPlan(resolvedRun) {
71
+ if (resolvedRun.plan.kind !== 'supervised') {
72
+ throw new Error('Supervised execution requires a supervised collected plan.');
73
+ }
74
+ return resolvedRun.plan.collectedPlan;
75
+ }
76
+ export function createHardTimeout(runtime) {
77
+ let hardTimeout = null;
78
+ return {
79
+ clear() {
80
+ if (hardTimeout !== null) {
81
+ runtime.dependencies.wallClock.clearTimeout(hardTimeout);
82
+ hardTimeout = null;
83
+ }
84
+ },
85
+ start() {
86
+ if (hardTimeout !== null || runtime.state.activeCases.size === 0) {
87
+ return;
88
+ }
89
+ hardTimeout = runtime.dependencies.wallClock.setTimeout(function killHardTimedOutChild() {
90
+ runtime.terminalFailure.write(true);
91
+ runtime.state.recordRunnerError(crashError(runtime.state, 'Supervised child exceeded hard timeout.'));
92
+ runtime.state.recordTerminalActiveCases('crashed');
93
+ kill(runtime.child);
94
+ }, runtime.resolvedRun.facts.execution.timeoutPolicy.hardMilliseconds);
95
+ }
96
+ };
97
+ }
98
+ function supervisedEngine(resolvedRun) {
99
+ if (resolvedRun.engine.kind === 'instance') {
100
+ throw new Error('Instance engines cannot run in supervised children.');
101
+ }
102
+ return resolvedRun.engine;
103
+ }
104
+ function createRunCommand(resolvedRun) {
105
+ return {
106
+ capabilityRestrictions: resolvedRun.request.capabilityRestrictions,
107
+ collectionTimeoutMilliseconds: resolvedRun.facts.execution.timeoutPolicy.collectionMilliseconds,
108
+ cwd: resolvedRun.cwd,
109
+ engine: supervisedEngine(resolvedRun),
110
+ hardTimeoutMilliseconds: resolvedRun.facts.execution.timeoutPolicy.hardMilliseconds,
111
+ kind: 'run',
112
+ paths: resolvedRun.request.paths,
113
+ resourceBudgets: resolvedRun.facts.execution.resourceUsagePolicy.budgets,
114
+ resourceUsageSamplingIntervalMilliseconds: resolvedRun
115
+ .facts
116
+ .execution
117
+ .resourceUsagePolicy
118
+ .samplingIntervalMilliseconds,
119
+ scheduling: resolvedRun.facts.execution.scheduling,
120
+ timeoutMilliseconds: resolvedRun.facts.execution.timeoutPolicy.softMilliseconds
121
+ };
122
+ }
123
+ export function sendRunCommand(runtime) {
124
+ runtime.child.send(createRunCommand(runtime.resolvedRun));
125
+ }
126
+ export function sendAssignment(runtime) {
127
+ const collectedPlan = runtime.collectedPlan.read() ?? supervisedCollectedPlan(runtime.resolvedRun);
128
+ runtime.child.send({
129
+ assignedCases: collectedRunCaseIds(collectedPlan),
130
+ kind: 'assign'
131
+ });
132
+ }
133
+ function handleChildEvent(event, runtime) {
134
+ const collectedPlan = runtime.collectedPlan.read();
135
+ if (collectedPlan !== null) {
136
+ applyEvent(event, runtime.state, caseByKey(collectedPlan));
137
+ }
138
+ if (event.kind === 'test-start') {
139
+ runtime.timeout.start();
140
+ }
141
+ else if (event.kind === 'test-end' && runtime.state.activeCases.size === 0) {
142
+ runtime.timeout.clear();
143
+ }
144
+ runtime.reporterEvents.add(recordReporterEventErrors(event, runtime.state, runtime.reporterContext, runtime.dependencies));
145
+ }
146
+ function handleResourceBudgetBreach(breach, runtime) {
147
+ runtime.terminalFailure.write(true);
148
+ const error = resourceExhaustionError(breach, runtime.state);
149
+ runtime.state.recordRunnerError(error);
150
+ runtime.reporterEvents.add(recordReporterEventErrors({ error, kind: 'runner-error' }, runtime.state, runtime.reporterContext, runtime.dependencies));
151
+ runtime.state.recordTerminalActiveCases('resource-exhausted');
152
+ runtime.timeout.clear();
153
+ kill(runtime.child);
154
+ }
155
+ function handleChildSample(sample, runtime) {
156
+ if (runtime.terminalFailure.read()) {
157
+ return;
158
+ }
159
+ const breach = findResourceBudgetBreach(runtime.resolvedRun.facts.execution.resourceUsagePolicy.budgets, sample, runtime.previousSample.read());
160
+ runtime.previousSample.write(sample);
161
+ if (breach !== null) {
162
+ handleResourceBudgetBreach(breach, runtime);
163
+ }
164
+ }
165
+ function handleCompletedResult(result, runtime) {
166
+ const supervisorErrors = runtime.state.runnerErrors();
167
+ runtime.completedResult.write({
168
+ ...result,
169
+ runnerErrors: [
170
+ ...supervisorErrors,
171
+ ...deduplicatedChildRuntimePolicyErrors(result.runnerErrors, supervisorErrors)
172
+ ]
173
+ });
174
+ }
175
+ export function handleChildMessage(message, runtime) {
176
+ if (message.kind === 'collected') {
177
+ runtime.collectedPlan.write(message.collectedPlan);
178
+ runtime.state.recordRunnerErrors(message.runnerErrors);
179
+ }
180
+ else if (message.kind === 'event') {
181
+ handleChildEvent(message.event, runtime);
182
+ }
183
+ else if (message.kind === 'sample') {
184
+ handleChildSample(message.sample, runtime);
185
+ }
186
+ else {
187
+ handleCompletedResult(message.result, runtime);
188
+ }
189
+ }
190
+ export function handleCollectionSample(sample, runtime) {
191
+ if (runtime.terminalFailure.read()) {
192
+ return;
193
+ }
194
+ const breach = findResourceBudgetBreach(runtime.command.resourceBudgets, sample, runtime.previousSample.read());
195
+ runtime.previousSample.write(sample);
196
+ if (breach !== null) {
197
+ runtime.terminalFailure.write(true);
198
+ runtime.state.recordRunnerError(resourceExhaustionError(breach, runtime.state));
199
+ kill(runtime.child);
200
+ }
201
+ }
202
+ export async function observeChild(runtime) {
203
+ observeSupervisedChildOutput(runtime);
204
+ return new Promise(function waitForChild(resolve) {
205
+ runtime.child.on('message', function receiveMessage(message) {
206
+ handleChildMessage(message, runtime);
207
+ });
208
+ runtime.child.on('error', function recordChildError(error) {
209
+ if (!runtime.terminalFailure.read()) {
210
+ runtime.terminalFailure.write(true);
211
+ runtime.state.recordRunnerError(crashError(runtime.state, error.message));
212
+ runtime.state.recordTerminalActiveCases('crashed');
213
+ }
214
+ });
215
+ runtime.child.on('exit', function resolveExit() {
216
+ resolve();
217
+ });
218
+ });
219
+ }
220
+ export async function reportRunStart(runtime, collectedPlan, startedAtMs) {
221
+ await recordReporterEventErrors({
222
+ facts: runtime.resolvedRun.facts,
223
+ kind: 'run-start',
224
+ root: {
225
+ metadata: {},
226
+ name: collectedPlan.root.name
227
+ },
228
+ startedAt: runStartTimeFromMilliseconds(startedAtMs)
229
+ }, runtime.state, runtime.reporterContext, runtime.dependencies);
230
+ }
231
+ function selectRunResult(runtime, startedAtMs) {
232
+ const completedResult = runtime.completedResult.read();
233
+ if (completedResult === null) {
234
+ const collectedPlan = runtime.collectedPlan.read() ?? supervisedCollectedPlan(runtime.resolvedRun);
235
+ return createPartialRunResult(collectedPlan, runtime.state, runtime.dependencies, startedAtMs);
236
+ }
237
+ return completedResult;
238
+ }
239
+ async function reportFinalResult(result, runtime) {
240
+ const runEndErrors = await runtime.dependencies.reporterDispatcher.reportEvent(runtime.reporterContext.reporters, { kind: 'run-end', result }, runtime.reporterContext.outputRenderer);
241
+ const resultForFinalReporting = {
242
+ ...result,
243
+ runnerErrors: [...result.runnerErrors, ...runEndErrors]
244
+ };
245
+ const finalReporterErrors = await runtime.dependencies.reporterDispatcher.reportResult(runtime.reporterContext.reporters, resultForFinalReporting, runtime.reporterContext.outputRenderer);
246
+ const disposeErrors = await runtime.dependencies.reporterDispatcher.disposeReporters(runtime.reporterContext.reporters);
247
+ return {
248
+ ...resultForFinalReporting,
249
+ runnerErrors: [...resultForFinalReporting.runnerErrors, ...finalReporterErrors, ...disposeErrors]
250
+ };
251
+ }
252
+ export async function finishSupervisedRuntime(runtime, startedAtMs) {
253
+ runtime.timeout.clear();
254
+ await runtime.reporterEvents.wait();
255
+ return await reportFinalResult(selectRunResult(runtime, startedAtMs), runtime);
256
+ }
257
+ //# sourceMappingURL=supervised-run-runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supervised-run-runtime.js","sourceRoot":"","sources":["../../../../source/run/supervised-run-runtime.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"supervised-run-state.js","sourceRoot":"","sources":["../../../../source/run/supervised-run-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"supervised-run-state.js","sourceRoot":"","sources":["../../../../source/run/supervised-run-state.ts"],"names":[],"mappings":"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"}