@overkill-dev/engine 0.0.47 → 0.0.49

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 (143) hide show
  1. package/assertion-protocol/assertions/boolean.d.ts +0 -7
  2. package/assertion-protocol/assertions/boolean.d.ts.map +1 -1
  3. package/assertion-protocol/assertions/collection.d.ts +0 -9
  4. package/assertion-protocol/assertions/collection.d.ts.map +1 -1
  5. package/assertion-protocol/assertions/equality.d.ts +0 -11
  6. package/assertion-protocol/assertions/equality.d.ts.map +1 -1
  7. package/assertion-protocol/assertions/fail.d.ts +0 -5
  8. package/assertion-protocol/assertions/fail.d.ts.map +1 -1
  9. package/assertion-protocol/assertions/numeric.d.ts +0 -13
  10. package/assertion-protocol/assertions/numeric.d.ts.map +1 -1
  11. package/assertion-protocol/assertions/partial.d.ts +0 -9
  12. package/assertion-protocol/assertions/partial.d.ts.map +1 -1
  13. package/assertion-protocol/assertions/presence.d.ts +0 -11
  14. package/assertion-protocol/assertions/presence.d.ts.map +1 -1
  15. package/assertion-protocol/assertions/string.d.ts +0 -13
  16. package/assertion-protocol/assertions/string.d.ts.map +1 -1
  17. package/assertion-protocol/assertions/type-shape.d.ts +0 -19
  18. package/assertion-protocol/assertions/type-shape.d.ts.map +1 -1
  19. package/assertion-protocol/source-location-forwarding.d.ts +0 -1
  20. package/assertion-protocol/source-location-forwarding.d.ts.map +1 -1
  21. package/assertion-protocol/source-location-forwarding.js +15 -3
  22. package/assertion-protocol/source-location-forwarding.js.map +1 -1
  23. package/assertion-protocol/source-location.d.ts +0 -1
  24. package/assertion-protocol/source-location.d.ts.map +1 -1
  25. package/assertion-protocol/source-location.js +1 -0
  26. package/assertion-protocol/source-location.js.map +1 -1
  27. package/assertion-protocol/thrown-matcher.d.ts +1 -2
  28. package/assertion-protocol/thrown-matcher.d.ts.map +1 -1
  29. package/compare/serialized-value-shape.d.ts +0 -1
  30. package/compare/serialized-value-shape.d.ts.map +1 -1
  31. package/compare/value-classification.d.ts +0 -23
  32. package/compare/value-classification.d.ts.map +1 -1
  33. package/engine/assertion-facade.d.ts +2 -5
  34. package/engine/assertion-facade.d.ts.map +1 -1
  35. package/engine/async-control.d.ts +0 -26
  36. package/engine/async-control.d.ts.map +1 -1
  37. package/engine/async-leak-diagnostics.js +9 -9
  38. package/engine/async-leak-diagnostics.js.map +1 -1
  39. package/engine/case-attempt-execution.js +191 -0
  40. package/engine/case-attempt-execution.js.map +1 -0
  41. package/engine/case-execution.d.ts +5 -16
  42. package/engine/case-execution.d.ts.map +1 -1
  43. package/engine/case-execution.js +25 -24
  44. package/engine/case-execution.js.map +1 -1
  45. package/engine/coverage-artifact.d.ts +1 -0
  46. package/engine/coverage-artifact.d.ts.map +1 -1
  47. package/engine/custom-assertion-recording.js +1 -1
  48. package/engine/custom-assertion-recording.js.map +1 -1
  49. package/engine/engine.d.ts +1 -8
  50. package/engine/engine.d.ts.map +1 -1
  51. package/engine/execution-async-leak-policy.js +3 -10
  52. package/engine/execution-async-leak-policy.js.map +1 -1
  53. package/engine/execution-global-error-observer.d.ts +2 -4
  54. package/engine/execution-global-error-observer.d.ts.map +1 -1
  55. package/engine/execution-global-error-observer.js +20 -46
  56. package/engine/execution-global-error-observer.js.map +1 -1
  57. package/engine/execution-options.d.ts +4 -7
  58. package/engine/execution-options.d.ts.map +1 -1
  59. package/engine/execution-options.js +7 -2
  60. package/engine/execution-options.js.map +1 -1
  61. package/engine/execution-resource-budget-breach.d.ts +0 -9
  62. package/engine/execution-resource-budget-breach.d.ts.map +1 -1
  63. package/engine/execution-resource-budget-tracking.js.map +1 -1
  64. package/engine/execution-resource-tracked-cases.js.map +1 -1
  65. package/engine/execution-result.js.map +1 -1
  66. package/engine/execution-supervision-state.js.map +1 -1
  67. package/engine/execution-supervision.d.ts +0 -16
  68. package/engine/execution-supervision.d.ts.map +1 -1
  69. package/engine/execution-supervision.js +50 -33
  70. package/engine/execution-supervision.js.map +1 -1
  71. package/engine/execution-test-plan-cases.js +6 -126
  72. package/engine/execution-test-plan-cases.js.map +1 -1
  73. package/engine/execution-test-plan-resource-usage.js.map +1 -1
  74. package/engine/execution.d.ts +0 -10
  75. package/engine/execution.d.ts.map +1 -1
  76. package/engine/execution.js +3 -3
  77. package/engine/execution.js.map +1 -1
  78. package/engine/identity.d.ts +3 -0
  79. package/engine/identity.d.ts.map +1 -1
  80. package/engine/identity.js +6 -1
  81. package/engine/identity.js.map +1 -1
  82. package/engine/reporter-dispatcher.d.ts +0 -4
  83. package/engine/reporter-dispatcher.d.ts.map +1 -1
  84. package/engine/reporter-dispatcher.js +1 -0
  85. package/engine/reporter-dispatcher.js.map +1 -1
  86. package/engine/reporter-event-queue.js.map +1 -1
  87. package/engine/reporter-output-scope.js +1 -21
  88. package/engine/reporter-output-scope.js.map +1 -1
  89. package/engine/reporter.d.ts +2 -1
  90. package/engine/reporter.d.ts.map +1 -1
  91. package/engine/reporter.js.map +1 -1
  92. package/engine/require-assertion-facade.d.ts +2 -5
  93. package/engine/require-assertion-facade.d.ts.map +1 -1
  94. package/engine/resource-usage.d.ts +22 -0
  95. package/engine/resource-usage.d.ts.map +1 -0
  96. package/engine/retry-policy.d.ts +4 -0
  97. package/engine/retry-policy.d.ts.map +1 -0
  98. package/engine/retry-policy.js +22 -0
  99. package/engine/retry-policy.js.map +1 -0
  100. package/engine/run-artifact.d.ts +45 -0
  101. package/engine/run-artifact.d.ts.map +1 -0
  102. package/engine/run-result.d.ts +17 -72
  103. package/engine/run-result.d.ts.map +1 -1
  104. package/engine/run-result.js +15 -12
  105. package/engine/run-result.js.map +1 -1
  106. package/engine/run-timings.d.ts +0 -18
  107. package/engine/run-timings.d.ts.map +1 -1
  108. package/engine/run-timings.js +1 -51
  109. package/engine/run-timings.js.map +1 -1
  110. package/engine/runner-error-reporting.js.map +1 -1
  111. package/engine/test-attempt-history.js +24 -0
  112. package/engine/test-attempt-history.js.map +1 -0
  113. package/engine/test-data.d.ts +0 -6
  114. package/engine/test-data.d.ts.map +1 -1
  115. package/engine/test-node.d.ts +0 -19
  116. package/engine/test-node.d.ts.map +1 -1
  117. package/engine/test-plan.d.ts +1 -3
  118. package/engine/test-plan.d.ts.map +1 -1
  119. package/package.json +14 -4
  120. package/packages/engine/engine.entry-point.d.ts +6 -1
  121. package/packages/engine/engine.entry-point.d.ts.map +1 -1
  122. package/packages/engine/engine.entry-point.js +29 -1
  123. package/packages/engine/engine.entry-point.js.map +1 -1
  124. package/readme.md +16 -1
  125. package/sbom.cdx.json +5 -5
  126. package/assertion-protocol/assertion-evaluation.d.ts +0 -13
  127. package/assertion-protocol/assertion-evaluation.d.ts.map +0 -1
  128. package/assertion-protocol/evaluation.d.ts +0 -32
  129. package/assertion-protocol/evaluation.d.ts.map +0 -1
  130. package/compare/comparison-result.d.ts +0 -25
  131. package/compare/comparison-result.d.ts.map +0 -1
  132. package/compare/comparison.d.ts +0 -12
  133. package/compare/comparison.d.ts.map +0 -1
  134. package/engine/async-leak-diagnostics.d.ts +0 -27
  135. package/engine/async-leak-diagnostics.d.ts.map +0 -1
  136. package/engine/custom-assertion-recording.d.ts +0 -33
  137. package/engine/custom-assertion-recording.d.ts.map +0 -1
  138. package/engine/execution-async-leak-policy.d.ts +0 -24
  139. package/engine/execution-async-leak-policy.d.ts.map +0 -1
  140. package/engine/execution-supervision-state.d.ts +0 -30
  141. package/engine/execution-supervision-state.d.ts.map +0 -1
  142. package/engine/reporter-disposal.d.ts +0 -6
  143. package/engine/reporter-disposal.d.ts.map +0 -1
@@ -1,6 +1,7 @@
1
1
  import { AsyncLocalStorage } from 'node:async_hooks';
2
- import { caseIdentityKey } from "./identity.js";
3
2
  import { permissionDeniedRunnerErrorFromThrown } from "./run-result.js";
3
+ const runScopeStorage = new AsyncLocalStorage();
4
+ const activeCaseStorage = new AsyncLocalStorage();
4
5
  function createStoredValue(initialValue) {
5
6
  let currentValue = initialValue;
6
7
  return {
@@ -111,41 +112,7 @@ function createActiveScopes() {
111
112
  }
112
113
  };
113
114
  }
114
- export function createDisabledExecutionGlobalErrorObserver() {
115
- const neverFatal = Promise.race([]);
116
- return {
117
- async fatalSignal() {
118
- await neverFatal;
119
- },
120
- hasFatalError() {
121
- return false;
122
- },
123
- onFatalError() {
124
- return function removeDisabledFatalHandler() {
125
- return undefined;
126
- };
127
- },
128
- async runBoundary(run) {
129
- return await run();
130
- },
131
- async runCase(_testCase, run) {
132
- return await run();
133
- },
134
- async runPhase(_phase, run) {
135
- return await run();
136
- },
137
- stop() {
138
- return undefined;
139
- },
140
- takeErrors() {
141
- return [];
142
- }
143
- };
144
- }
145
- const runScopeStorage = new AsyncLocalStorage();
146
- const activeCaseStorage = new AsyncLocalStorage();
147
- const activeScopes = createActiveScopes();
148
- const listenersInstalled = createStoredValue(false);
115
+
149
116
  function serializedReason(reason) {
150
117
  if (reason instanceof Error) {
151
118
  return {
@@ -167,14 +134,16 @@ function hookMessage(hook, reason) {
167
134
  const label = hook === 'uncaughtException' ? 'Uncaught exception' : 'Unhandled rejection';
168
135
  return `${label}: ${reason.message}`;
169
136
  }
137
+ function hookOrigin(activeCase) {
138
+ return activeCase === null
139
+ ? { attempt: null, case: null, work: null }
140
+ : { attempt: activeCase.attempt, case: activeCase.id, work: activeCase.workId };
141
+ }
170
142
  function hookCause(scope, hook, reason, activeCase) {
171
143
  return {
172
144
  boundary: scope.boundary,
173
145
  hook,
174
- origin: {
175
- case: activeCase?.id ?? null,
176
- work: activeCase?.workId ?? null
177
- },
146
+ origin: hookOrigin(activeCase),
178
147
  phase: activeCase === null ? scope.phase() : 'body',
179
148
  reason: serializedReason(reason)
180
149
  };
@@ -182,6 +151,7 @@ function hookCause(scope, hook, reason, activeCase) {
182
151
  function attributedError(scope, hook, reason, activeCase) {
183
152
  const cause = hookCause(scope, hook, reason, activeCase);
184
153
  return {
154
+ attributedToAttempt: activeCase.attempt,
185
155
  attributedTo: activeCase.id,
186
156
  attributedToWork: activeCase.workId,
187
157
  cause,
@@ -193,6 +163,7 @@ function attributedError(scope, hook, reason, activeCase) {
193
163
  function runLevelHookError(scope, hook, reason) {
194
164
  const cause = hookCause(scope, hook, reason, null);
195
165
  return {
166
+ attributedToAttempt: null,
196
167
  attributedTo: null,
197
168
  attributedToWork: null,
198
169
  cause,
@@ -204,6 +175,7 @@ function runLevelHookError(scope, hook, reason) {
204
175
  function attributionDriftError(scope, hook, reason, activeCase) {
205
176
  const cause = hookCause(scope, hook, reason, activeCase);
206
177
  return {
178
+ attributedToAttempt: null,
207
179
  attributedTo: null,
208
180
  attributedToWork: null,
209
181
  cause,
@@ -219,7 +191,7 @@ function activePermissionCase(input) {
219
191
  if (!scopeIncludesCase(input.scope, input.activeCase)) {
220
192
  return null;
221
193
  }
222
- return input.scope.hasActiveCase(input.activeCase.key) ? input.activeCase : null;
194
+ return input.scope.hasActiveCase(input.activeCase) ? input.activeCase : null;
223
195
  }
224
196
  function permissionErrorForScope(input) {
225
197
  const activeCase = activePermissionCase(input);
@@ -243,11 +215,13 @@ function errorForScope(input) {
243
215
  if (!scopeIncludesCase(input.scope, input.activeCase)) {
244
216
  return runLevelHookError(input.scope, input.hook, input.reason);
245
217
  }
246
- if (input.scope.hasActiveCase(input.activeCase.key)) {
218
+ if (input.scope.hasActiveCase(input.activeCase)) {
247
219
  return attributedError(input.scope, input.hook, input.reason, input.activeCase);
248
220
  }
249
221
  return attributionDriftError(input.scope, input.hook, input.reason, input.activeCase);
250
222
  }
223
+ const activeScopes = createActiveScopes();
224
+ const listenersInstalled = createStoredValue(false);
251
225
  function currentTargetScopes() {
252
226
  const currentScope = runScopeStorage.getStore();
253
227
  if (currentScope !== undefined && activeScopes.includes(currentScope)) {
@@ -311,19 +285,19 @@ export function createExecutionGlobalErrorObserver(boundary) {
311
285
  processHookListeners.removeWhenIdle();
312
286
  }
313
287
  },
314
- async runCase(testCase, run) {
288
+ async runCase(testCase, attempt, run) {
315
289
  const activeCase = {
290
+ attempt,
316
291
  id: testCase.id,
317
- key: caseIdentityKey(testCase.id),
318
292
  scope,
319
293
  workId: testCase.workId
320
294
  };
321
- scope.activeCaseStarted(activeCase.key);
295
+ scope.activeCaseStarted(activeCase);
322
296
  try {
323
297
  return await activeCaseStorage.run(activeCase, run);
324
298
  }
325
299
  finally {
326
- scope.activeCaseStopped(activeCase.key);
300
+ scope.activeCaseStopped(activeCase);
327
301
  }
328
302
  },
329
303
  async runPhase(phase, run) {
@@ -1 +1 @@
1
- {"version":3,"file":"execution-global-error-observer.js","sourceRoot":"","sources":["../../../../source/engine/execution-global-error-observer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execution-global-error-observer.js","sourceRoot":"","sources":["../../../../source/engine/execution-global-error-observer.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,10 @@
1
1
  import { type DefinedOutputRenderer } from './reporter-output.ts';
2
2
  import type { DefinedReporter, RunFacts } from './reporter.ts';
3
- import type { RunResourceUsageTracker, RunResult } from './run-result.ts';
3
+ import type { RunResult } from './run-result.ts';
4
+ import type { RunResourceUsageTracker } from './resource-usage.ts';
4
5
  import type { ExecuteTimeoutPolicy, ExecutionSupervisionDependencies } from './execution-supervision.ts';
5
6
  import type { ExecuteResourceBudgets } from './execution-resource-budget-breach.ts';
7
+ import { type TestRetryPolicy } from './retry-policy.ts';
6
8
  export type ExecuteExecution = {
7
9
  readonly maxConcurrency: number | 'unlimited';
8
10
  readonly mode: 'concurrent-in-process';
@@ -11,6 +13,7 @@ export type ExecuteExecution = {
11
13
  };
12
14
  export type ExecuteResultFinalizer = (result: RunResult) => Promise<RunResult>;
13
15
  export type ExecuteOptions = {
16
+ readonly retryPolicy: TestRetryPolicy | null;
14
17
  readonly execution: ExecuteExecution;
15
18
  readonly finalizeResult?: ExecuteResultFinalizer;
16
19
  readonly outputRenderer?: DefinedOutputRenderer;
@@ -22,12 +25,6 @@ export type ExecuteOptions = {
22
25
  readonly startedAt: string;
23
26
  readonly timeoutPolicy?: ExecuteTimeoutPolicy | null;
24
27
  };
25
- export type NormalizedExecuteOptions = ExecuteOptions & {
26
- readonly finalizeResult: ExecuteResultFinalizer;
27
- readonly outputRenderer: DefinedOutputRenderer;
28
- readonly runtimePolicy: RuntimePolicy | null;
29
- };
30
28
  type RuntimePolicy = NonNullable<ExecutionSupervisionDependencies['runtimePolicy']>;
31
- export declare function executeOptionsWithDefaults(options: ExecuteOptions | undefined): NormalizedExecuteOptions;
32
29
  export {};
33
30
  //# sourceMappingURL=execution-options.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"execution-options.d.ts","sourceRoot":"","sources":["../../../../source/engine/execution-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7F,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,KAAK,EAAE,uBAAuB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,KAAK,EACR,oBAAoB,EACpB,gCAAgC,EACnC,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAEpF,MAAM,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW,CAAC;IAC9C,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAC;CAC1C,GAAG;IACA,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,CAAC,MAAM,EAAE,SAAS,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;AAE/E,MAAM,MAAM,cAAc,GAAG;IACzB,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IACrC,QAAQ,CAAC,cAAc,CAAC,EAAE,sBAAsB,CAAC;IACjD,QAAQ,CAAC,cAAc,CAAC,EAAE,qBAAqB,CAAC;IAChD,QAAQ,CAAC,SAAS,EAAE,SAAS,eAAe,EAAE,CAAC;IAC/C,QAAQ,CAAC,eAAe,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACzD,QAAQ,CAAC,oBAAoB,CAAC,EAAE,uBAAuB,GAAG,IAAI,CAAC;IAC/D,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAC9C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;CACxD,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,cAAc,GAAG;IACpD,QAAQ,CAAC,cAAc,EAAE,sBAAsB,CAAC;IAChD,QAAQ,CAAC,cAAc,EAAE,qBAAqB,CAAC;IAC/C,QAAQ,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;CAChD,CAAC;AAEF,KAAK,aAAa,GAAG,WAAW,CAAC,gCAAgC,CAAC,eAAe,CAAC,CAAC,CAAC;AAiCpF,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,cAAc,GAAG,SAAS,GAAG,wBAAwB,CAExG"}
1
+ {"version":3,"file":"execution-options.d.ts","sourceRoot":"","sources":["../../../../source/engine/execution-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7F,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EACR,oBAAoB,EACpB,gCAAgC,EACnC,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AACpF,OAAO,EAAwC,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;MAGzF,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW,CAAC;IAC9C,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAC;CAC1C,GAAG;IACA,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,CAAC,MAAM,EAAE,SAAS,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;AAE/E,MAAM,MAAM,cAAc,GAAG;IACzB,QAAQ,CAAC,WAAW,EAAE,eAAe,GAAG,IAAI,CAAC;IAC7C,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IACrC,QAAQ,CAAC,cAAc,CAAC,EAAE,sBAAsB,CAAC;IACjD,QAAQ,CAAC,cAAc,CAAC,EAAE,qBAAqB,CAAC;IAChD,QAAQ,CAAC,SAAS,EAAE,SAAS,eAAe,EAAE,CAAC;IAC/C,QAAQ,CAAC,eAAe,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACzD,QAAQ,CAAC,oBAAoB,CAAC,EAAE,uBAAuB,GAAG,IAAI,CAAC;IAC/D,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAC9C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;CACxD,CAAC;qBAQmB,WAAW,CAAC,gCAAgC,CAAC,eAAe,CAAC,CAAC,CAAC;AAmCpF"}
@@ -1,4 +1,5 @@
1
1
  import { createPlainOutputRenderer } from "./reporter-output.js";
2
+ import { assertRetryPolicy, assertRetryFamily } from "./retry-policy.js";
2
3
  const epoch = new Date(0);
3
4
  const keepResult = async function keepResult(result) {
4
5
  return result;
@@ -9,6 +10,7 @@ function defaultExecuteOptions() {
9
10
  finalizeResult: keepResult,
10
11
  outputRenderer: createPlainOutputRenderer(),
11
12
  reporters: [],
13
+ retryPolicy: null,
12
14
  resourceBudgets: null,
13
15
  resourceUsageTracker: null,
14
16
  runtimePolicy: null,
@@ -18,6 +20,7 @@ function defaultExecuteOptions() {
18
20
  };
19
21
  }
20
22
  function executeOptionsWithProvidedDefaults(options) {
23
+ assertRetryPolicy(options.retryPolicy);
21
24
  return {
22
25
  ...options,
23
26
  finalizeResult: options.finalizeResult ?? keepResult,
@@ -27,7 +30,9 @@ function executeOptionsWithProvidedDefaults(options) {
27
30
  timeoutPolicy: options.timeoutPolicy ?? null
28
31
  };
29
32
  }
30
- export function executeOptionsWithDefaults(options) {
31
- return options === undefined ? defaultExecuteOptions() : executeOptionsWithProvidedDefaults(options);
33
+ export function executeOptionsWithDefaults(options, testPlan) {
34
+ const normalized = options === undefined ? defaultExecuteOptions() : executeOptionsWithProvidedDefaults(options);
35
+ assertRetryFamily(normalized.retryPolicy, testPlan);
36
+ return normalized;
32
37
  }
33
38
  //# sourceMappingURL=execution-options.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"execution-options.js","sourceRoot":"","sources":["../../../../source/engine/execution-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAA8B,MAAM,sBAAsB,CAAC;AAuC7F,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;AAC1B,MAAM,UAAU,GAA2B,KAAK,UAAU,UAAU,CAAC,MAAM;IACvE,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAEF,SAAS,qBAAqB;IAC1B,OAAO;QACH,SAAS,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE;QACxC,cAAc,EAAE,UAAU;QAC1B,cAAc,EAAE,yBAAyB,EAAE;QAC3C,SAAS,EAAE,EAAE;QACb,eAAe,EAAE,IAAI;QACrB,oBAAoB,EAAE,IAAI;QAC1B,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,EAAE;QACZ,SAAS,EAAE,KAAK,CAAC,WAAW,EAAE;QAC9B,aAAa,EAAE,IAAI;KACtB,CAAC;AACN,CAAC;AAED,SAAS,kCAAkC,CAAC,OAAuB;IAC/D,OAAO;QACH,GAAG,OAAO;QACV,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,UAAU;QACpD,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,yBAAyB,EAAE;QACrE,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,IAAI;QAChD,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;QAC5C,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;KAC/C,CAAC;AACN,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,OAAmC;IAC1E,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,kCAAkC,CAAC,OAAO,CAAC,CAAC;AACzG,CAAC"}
1
+ {"version":3,"file":"execution-options.js","sourceRoot":"","sources":["../../../../source/engine/execution-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAA8B,MAAM,sBAAsB,CAAC;AAS7F,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAwB,MAAM,mBAAmB,CAAC;AAkC/F,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;AAC1B,MAAM,UAAU,GAA2B,KAAK,UAAU,UAAU,CAAC,MAAM;IACvE,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAEF,SAAS,qBAAqB;IAC1B,OAAO;QACH,SAAS,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE;QACxC,cAAc,EAAE,UAAU;QAC1B,cAAc,EAAE,yBAAyB,EAAE;QAC3C,SAAS,EAAE,EAAE;QACb,WAAW,EAAE,IAAI;QACjB,eAAe,EAAE,IAAI;QACrB,oBAAoB,EAAE,IAAI;QAC1B,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,EAAE;QACZ,SAAS,EAAE,KAAK,CAAC,WAAW,EAAE;QAC9B,aAAa,EAAE,IAAI;KACtB,CAAC;AACN,CAAC;AAED,SAAS,kCAAkC,CAAC,OAAuB;IAC/D,iBAAiB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACvC,OAAO;QACH,GAAG,OAAO;QACV,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,UAAU;QACpD,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,yBAAyB,EAAE;QACrE,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,IAAI;QAChD,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;QAC5C,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;KAC/C,CAAC;AACN,CAAC;AAED,MAAM,UAAU,0BAA0B,CACtC,OAAmC,EACnC,QAAkB;IAElB,MAAM,UAAU,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,kCAAkC,CAAC,OAAO,CAAC,CAAC;IACjH,iBAAiB,CAAC,UAAU,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACpD,OAAO,UAAU,CAAC;AACtB,CAAC"}
@@ -1,17 +1,8 @@
1
- import type { ResourceUsageSnapshot } from './run-result.ts';
2
1
  export type ExecuteResourceBudgets = {
3
2
  readonly activeResourceCount: number | null;
4
3
  readonly javaScriptEngineHeapBytes: number | null;
5
4
  readonly residentSetBytes: number | null;
6
5
  readonly residentSetGrowthBytesPerSecond: number | null;
7
6
  };
8
- type ResourceBudgetMetric = keyof ExecuteResourceBudgets;
9
- export type ResourceBudgetBreach = {
10
- readonly budget: number;
11
- readonly metric: ResourceBudgetMetric;
12
- readonly observed: number;
13
- readonly sample: ResourceUsageSnapshot;
14
- };
15
- export declare function findResourceBudgetBreach(budgets: ExecuteResourceBudgets | null | undefined, sample: ResourceUsageSnapshot, previousSample: ResourceUsageSnapshot | null): ResourceBudgetBreach | null;
16
7
  export {};
17
8
  //# sourceMappingURL=execution-resource-budget-breach.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"execution-resource-budget-breach.d.ts","sourceRoot":"","sources":["../../../../source/engine/execution-resource-budget-breach.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAG7D,MAAM,MAAM,sBAAsB,GAAG;IACjC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,QAAQ,CAAC,yBAAyB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClD,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,QAAQ,CAAC,+BAA+B,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3D,CAAC;AAEF,KAAK,oBAAoB,GAAG,MAAM,sBAAsB,CAAC;AAEzD,MAAM,MAAM,oBAAoB,GAAG;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,oBAAoB,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;CAC1C,CAAC;AAwBF,wBAAgB,wBAAwB,CACpC,OAAO,EAAE,sBAAsB,GAAG,IAAI,GAAG,SAAS,EAClD,MAAM,EAAE,qBAAqB,EAC7B,cAAc,EAAE,qBAAqB,GAAG,IAAI,GAC7C,oBAAoB,GAAG,IAAI,CAe7B"}
1
+ {"version":3,"file":"execution-resource-budget-breach.d.ts","sourceRoot":"","sources":["../../../../source/engine/execution-resource-budget-breach.ts"],"names":[],"mappings":"MAGM,MAAM,sBAAsB,GAAG;IACjC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,QAAQ,CAAC,yBAAyB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClD,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,QAAQ,CAAC,+BAA+B,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3D,CAAC;MAII,CAA6B,EAKlC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"execution-resource-budget-tracking.js","sourceRoot":"","sources":["../../../../source/engine/execution-resource-budget-tracking.ts"],"names":[],"mappings":"AAMA,OAAO,EACH,yBAAyB,EAG5B,MAAM,4BAA4B,CAAC;AAoBpC,MAAM,UAAU,2BAA2B,CAAC,KAAkC;IAC1E,IAAI,cAAc,GAAiC,IAAI,CAAC;IACxD,IAAI,QAAQ,GAAG,KAAK,CAAC;IAErB,SAAS,YAAY,CAAC,MAA6B;QAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,QAAQ,GAAG,yBAAyB,CAAC;gBACjC,OAAO,EAAE,KAAK,CAAC,eAAe;gBAC9B,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,cAAc;gBACd,MAAM;gBACN,WAAW,EAAE,KAAK,CAAC,WAAW;aACjC,CAAC,CAAC;QACP,CAAC;QAED,cAAc,GAAG,MAAM,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAE/C,OAAO;QACH,MAAM;YACF,MAAM,gBAAgB,GAAG,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;YAC/D,MAAM,aAAa,GAAG,KAAK,CAAC,oBAAoB,CAAC,MAAM,EAAE,CAAC;YAC1D,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YAEhC,OAAO;gBACH,aAAa;gBACb,YAAY,EAAE,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC,KAAK,CAAC,gBAAgB,CAAC;aACvE,CAAC;QACN,CAAC;QACD,IAAI;YACA,KAAK,CAAC,oBAAoB,CAAC,MAAM,EAAE,CAAC;QACxC,CAAC;KACJ,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"execution-resource-budget-tracking.js","sourceRoot":"","sources":["../../../../source/engine/execution-resource-budget-tracking.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,yBAAyB,EAG5B,MAAM,4BAA4B,CAAC;AAoBpC,MAAM,UAAU,2BAA2B,CAAC,KAAkC;IAC1E,IAAI,cAAc,GAAiC,IAAI,CAAC;IACxD,IAAI,QAAQ,GAAG,KAAK,CAAC;IAErB,SAAS,YAAY,CAAC,MAA6B;QAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,QAAQ,GAAG,yBAAyB,CAAC;gBACjC,OAAO,EAAE,KAAK,CAAC,eAAe;gBAC9B,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,cAAc;gBACd,MAAM;gBACN,WAAW,EAAE,KAAK,CAAC,WAAW;aACjC,CAAC,CAAC;QACP,CAAC;QAED,cAAc,GAAG,MAAM,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAE/C,OAAO;QACH,MAAM;YACF,MAAM,gBAAgB,GAAG,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;YAC/D,MAAM,aAAa,GAAG,KAAK,CAAC,oBAAoB,CAAC,MAAM,EAAE,CAAC;YAC1D,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YAEhC,OAAO;gBACH,aAAa;gBACb,YAAY,EAAE,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC,KAAK,CAAC,gBAAgB,CAAC;aACvE,CAAC;QACN,CAAC;QACD,IAAI;YACA,KAAK,CAAC,oBAAoB,CAAC,MAAM,EAAE,CAAC;QACxC,CAAC;KACJ,CAAC;AACN,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"execution-resource-tracked-cases.js","sourceRoot":"","sources":["../../../../source/engine/execution-resource-tracked-cases.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,2BAA2B,EAE9B,MAAM,yCAAyC,CAAC;AAIjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAiCjE,KAAK,UAAU,6BAA6B,CAIxC,KAAY,EACZ,YAAkE,EAClE,sBAA8C;IAE9C,MAAM,gBAAgB,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,CAAC;IACnD,MAAM,oBAAoB,GAAG,sBAAsB,CAAC,MAAM,EAAE,CAAC;IAC7D,MAAM,YAAY,GAAG,MAAM,kBAAkB,CACzC,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAC9B,oBAAoB,CAAC,YAAY,CACpC,CAAC;IAEF,OAAO;QACH,gBAAgB,EAAE;YACd,GAAG,gBAAgB;YACnB,cAAc,EAAE;gBACZ,GAAG,gBAAgB,CAAC,cAAc;gBAClC,GAAG,YAAY;aAClB;SACJ;QACD,aAAa,EAAE,oBAAoB,CAAC,aAAa;KACpD,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAI7C,KAAY,EACZ,YAAkE;IAElE,MAAM,EAAE,oBAAoB,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC;IAE/C,IAAI,oBAAoB,KAAK,IAAI,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;QACtE,OAAO;YACH,gBAAgB,EAAE,MAAM,YAAY,CAAC,KAAK,CAAC;YAC3C,aAAa,EAAE,IAAI;SACtB,CAAC;IACN,CAAC;IAED,MAAM,sBAAsB,GAAG,2BAA2B,CAAC;QACvD,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,YAAY;QACxC,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,eAAe,IAAI,IAAI;QACtD,oBAAoB;QACpB,WAAW,EAAE,KAAK,CAAC,WAAW;KACjC,CAAC,CAAC;IAEH,IAAI,CAAC;QACD,OAAO,MAAM,6BAA6B,CAAC,KAAK,EAAE,YAAY,EAAE,sBAAsB,CAAC,CAAC;IAC5F,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACtB,sBAAsB,CAAC,IAAI,EAAE,CAAC;QAE9B,MAAM,KAAK,CAAC;IAChB,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"execution-resource-tracked-cases.js","sourceRoot":"","sources":["../../../../source/engine/execution-resource-tracked-cases.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,2BAA2B,EAE9B,MAAM,yCAAyC,CAAC;AAIjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AA8BjE,KAAK,UAAU,6BAA6B,CAIxC,KAAY,EACZ,YAAkE,EAClE,sBAA8C;IAE9C,MAAM,gBAAgB,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,CAAC;IACnD,MAAM,oBAAoB,GAAG,sBAAsB,CAAC,MAAM,EAAE,CAAC;IAC7D,MAAM,YAAY,GAAG,MAAM,kBAAkB,CACzC,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAC9B,oBAAoB,CAAC,YAAY,CACpC,CAAC;IAEF,OAAO;QACH,gBAAgB,EAAE;YACd,GAAG,gBAAgB;YACnB,cAAc,EAAE;gBACZ,GAAG,gBAAgB,CAAC,cAAc;gBAClC,GAAG,YAAY;aAClB;SACJ;QACD,aAAa,EAAE,oBAAoB,CAAC,aAAa;KACpD,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAI7C,KAAY,EACZ,YAAkE;IAElE,MAAM,EAAE,oBAAoB,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC;IAE/C,IAAI,oBAAoB,KAAK,IAAI,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;QACtE,OAAO;YACH,gBAAgB,EAAE,MAAM,YAAY,CAAC,KAAK,CAAC;YAC3C,aAAa,EAAE,IAAI;SACtB,CAAC;IACN,CAAC;IAED,MAAM,sBAAsB,GAAG,2BAA2B,CAAC;QACvD,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,YAAY;QACxC,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,eAAe,IAAI,IAAI;QACtD,oBAAoB;QACpB,WAAW,EAAE,KAAK,CAAC,WAAW;KACjC,CAAC,CAAC;IAEH,IAAI,CAAC;QACD,OAAO,MAAM,6BAA6B,CAAC,KAAK,EAAE,YAAY,EAAE,sBAAsB,CAAC,CAAC;IAC5F,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACtB,sBAAsB,CAAC,IAAI,EAAE,CAAC;QAE9B,MAAM,KAAK,CAAC;IAChB,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"execution-result.js","sourceRoot":"","sources":["../../../../source/engine/execution-result.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EACH,iBAAiB,EACjB,oBAAoB,EAMvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAWrD,MAAM,UAAU,kBAAkB,CAAC,MAAiB,EAAE,YAAoC;IACtF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,MAAM,mBAAmB,GAAG,CAAE,GAAG,MAAM,CAAC,YAAY,EAAE,GAAG,YAAY,CAAE,CAAC;IAExE,OAAO;QACH,GAAG,MAAM;QACT,YAAY,EAAE,mBAAmB;QACjC,MAAM,EAAE,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,mBAAmB,CAAC;KACpE,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CACxC,KAAc,EACd,OAA0C;IAE1C,MAAM,aAAa,GAAG,MAAM,OAAO,EAAE,CAAC;IAEtC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,cAAc,CACpB,CAAE,KAAK,EAAE,GAAG,aAAa,CAAE,EAC3B,+CAA+C,EAC/C,EAAE,KAAK,EAAE,KAAK,EAAE,CACnB,CAAC;IACN,CAAC;IAED,MAAM,KAAK,CAAC;AAChB,CAAC;AAED,SAAS,SAAS,CAAC,UAAyB;IACxC,OAAO,UAAU,CAAC,OAAO,KAAK,MAAM,CAAC;AACzC,CAAC;AAED,SAAS,cAAc,CAAC,UAAyB;IAC7C,OAAO,UAAU,CAAC,OAAO,KAAK,cAAc,CAAC;AACjD,CAAC;AAED,SAAS,SAAS,CAAC,UAAyB;IACxC,OAAO,UAAU,CAAC,OAAO,KAAK,MAAM,CAAC;AACzC,CAAC;AAED,SAAS,UAAU,CAAC,UAAyB;IACzC,OAAO,UAAU,CAAC,OAAO,KAAK,MAAM,CAAC;AACzC,CAAC;AAED,SAAS,iBAAiB,CAAC,UAAyB;IAChD,OAAO,UAAU,CAAC,OAAO,KAAK,oBAAoB,CAAC;AACvD,CAAC;AAED,SAAS,OAAO,CAAC,UAAyB;IACtC,OAAO,UAAU,CAAC,OAAO,KAAK,SAAS,CAAC;AAC5C,CAAC;AAED,SAAS,aAAa,CAAC,UAAyB;IAC5C,OAAO,UAAU,CAAC,OAAO,KAAK,gBAAgB,CAAC;AACnD,CAAC;AAED,SAAS,aAAa,CAAC,QAAkB,EAAE,OAAiC;IACxE,OAAO;QACH,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM;QACvC,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,UAAU,EAAE,QAAQ,CAAC,eAAe,CAAC,MAAM;QAC3C,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM;QACxC,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,MAAM;QACnD,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM;QACxC,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM;QAC9B,iBAAiB,EAAE,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,MAAM;QAC3D,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,MAAM;QACnD,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM;KAC7C,CAAC;AACN,CAAC;AAED,SAAS,QAAQ,CAAC,SAA4B;IAC1C,OAAO,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,WAAW,CAAC,SAAiD;IAClE,OAAO,SAAS,CAAC,GAAG,CAAC,SAAS,OAAO,CAAC,KAAK;QACvC,OAAO,KAAK,CAAC,KAAK,CAAC;IACvB,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,mBAAmB;IACxB,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;AACtD,CAAC;AAED,SAAS,uBAAuB,CAC5B,MAAoC,EACpC,KAA4C;IAE5C,OAAO;QACH,UAAU,EAAE,MAAM,CAAC,UAAU,GAAG,CAAC,KAAK,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,QAAQ,EAAE,MAAM,CAAC,QAAQ,GAAG,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,OAAO,EAAE,MAAM,CAAC,OAAO,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAC1D,CAAC;AACN,CAAC;AAED,SAAS,cAAc,CACnB,MAA4B,EAC5B,SAA4B,EAC5B,KAA4C;IAE5C,IAAI,aAAa,GAAG,MAAM,CAAC;IAE3B,KAAK,IAAI,UAAU,GAAG,CAAC,EAAE,UAAU,IAAI,SAAS,CAAC,MAAM,EAAE,UAAU,IAAI,CAAC,EAAE,CAAC;QACvE,MAAM,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;QACrD,aAAa,GAAG;YACZ,GAAG,aAAa;YAChB,CAAC,GAAG,CAAC,EAAE,uBAAuB,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,mBAAmB,EAAE,EAAE,KAAK,CAAC;SACrF,CAAC;IACN,CAAC;IAED,OAAO,aAAa,CAAC;AACzB,CAAC;AAED,SAAS,WAAW,CAAC,QAAkB,EAAE,OAAiC;IACtE,IAAI,MAAM,GAAyB,EAAE,CAAC;IACtC,MAAM,WAAW,GAAG,IAAI,GAAG,CACvB,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,MAAM;QAC5B,OAAO,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC,CAAC,CACL,CAAC;IAEF,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,eAAe,EAAE,CAAC;QAC9C,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,YAAY,CAAC,CAAC;IACnF,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACpC,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC;QAE5E,IAAI,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YACpD,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC,CAAC;QACjF,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,eAAe,CAC3B,QAAkB,EAClB,OAAiC,EACjC,cAAsC,EACtC,MAAuB;IAEvB,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEjD,OAAO;QACH,SAAS,EAAE,EAAE;QACb,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC;QACvC,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,OAAO;QACP,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,YAAY,EAAE,cAAc;QAC5B,MAAM,EAAE,iBAAiB,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC,UAAU,CAAC;QACrE,OAAO;QACP,OAAO,EAAE,iBAAiB,CAAC;YACvB,iCAAiC,EAAE,MAAM,CAAC,iCAAiC;YAC3E,yBAAyB,EAAE,MAAM,CAAC,uBAAuB,GAAG,MAAM,CAAC,qBAAqB;SAC3F,CAAC;KACL,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"execution-result.js","sourceRoot":"","sources":["../../../../source/engine/execution-result.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"execution-supervision-state.js","sourceRoot":"","sources":["../../../../source/engine/execution-supervision-state.ts"],"names":[],"mappings":"AAiCA,MAAM,UAAU,0BAA0B;IACtC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAsB,CAAC;IAClD,MAAM,YAAY,GAAmD,EAAE,CAAC;IACxE,IAAI,eAAe,GAAG,IAAI,CAAC;IAE3B,OAAO;QACH,eAAe;YACX,OAAO,eAAe,CAAC;QAC3B,CAAC;QACD,WAAW;QACX,aAAa,CAAC,GAAG,EAAE,UAAU;YACzB,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QACrC,CAAC;QACD,iBAAiB,CAAC,KAAK;YACnB,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;QACD,gBAAgB,CAAC,GAAG;YAChB,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC;QACD,YAAY;QACZ,kBAAkB;YACd,eAAe,GAAG,KAAK,CAAC;QAC5B,CAAC;KACJ,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"execution-supervision-state.js","sourceRoot":"","sources":["../../../../source/engine/execution-supervision-state.ts"],"names":[],"mappings":"AAmCA,MAAM,UAAU,0BAA0B;IACtC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAsB,CAAC;IAClD,MAAM,YAAY,GAAmD,EAAE,CAAC;IACxE,IAAI,eAAe,GAAG,IAAI,CAAC;IAE3B,OAAO;QACH,eAAe;YACX,OAAO,eAAe,CAAC;QAC3B,CAAC;QACD,WAAW;QACX,aAAa,CAAC,GAAG,EAAE,UAAU;YACzB,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QACrC,CAAC;QACD,iBAAiB,CAAC,KAAK;YACnB,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;QACD,gBAAgB,CAAC,GAAG;YAChB,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC;QACD,YAAY;QACZ,kBAAkB;YACd,eAAe,GAAG,KAAK,CAAC;QAC5B,CAAC;KACJ,CAAC;AACN,CAAC"}
@@ -1,30 +1,14 @@
1
1
  import type { Clock } from '@enormora/clock';
2
2
  import { type TestRuntimePolicy } from './case-execution.ts';
3
- import { type ResourceUsageSnapshot } from './run-result.ts';
4
- import type { TestPlanCase } from './test-plan.ts';
5
- import { type ExecuteResourceBudgets } from './execution-resource-budget-breach.ts';
6
3
  import type { ExecutionGlobalErrorObserver } from './execution-global-error-observer.ts';
7
- import { type ExecutionConcurrentCase, type ExecutionSupervision as ExecutionSupervisionState } from './execution-supervision-state.ts';
8
4
  export type ExecuteTimeoutPolicy = {
9
5
  readonly hardTimeoutMilliseconds: number;
10
6
  readonly timeoutMilliseconds: number;
11
7
  };
12
- export type ConcurrentCase = ExecutionConcurrentCase;
13
8
  export type ExecutionSupervisionDependencies = {
14
9
  readonly globalErrorObserver: ExecutionGlobalErrorObserver;
15
10
  readonly runtimePolicy?: TestRuntimePolicy | null;
16
11
  readonly wallClock: Clock;
17
12
  };
18
- export type ExecutionSupervision = ExecutionSupervisionState;
19
- type ResourceUsageSampleInput = {
20
- readonly budgets: ExecuteResourceBudgets | null | undefined;
21
- readonly dependencies: ExecutionSupervisionDependencies;
22
- readonly previousSample: ResourceUsageSnapshot | null;
23
- readonly sample: ResourceUsageSnapshot;
24
- readonly supervision: ExecutionSupervision;
25
- };
26
- export declare const createExecutionSupervision: () => ExecutionSupervision;
27
- export declare function recordResourceUsageSample(input: ResourceUsageSampleInput): boolean;
28
- export declare function executeCaseBody(testCase: TestPlanCase, timeoutPolicy: ExecuteTimeoutPolicy | null | undefined, supervision: ExecutionSupervision, dependencies: ExecutionSupervisionDependencies): Promise<ConcurrentCase>;
29
13
  export {};
30
14
  //# sourceMappingURL=execution-supervision.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"execution-supervision.d.ts","sourceRoot":"","sources":["../../../../source/engine/execution-supervision.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAIH,KAAK,iBAAiB,EACzB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAIH,KAAK,qBAAqB,EAG7B,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAEH,KAAK,sBAAsB,EAE9B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AACzF,OAAO,EAIH,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,IAAI,yBAAyB,EACzD,MAAM,kCAAkC,CAAC;AAI1C,MAAM,MAAM,oBAAoB,GAAG;IAC/B,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;IACzC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;CACxC,CAAC;AACF,MAAM,MAAM,cAAc,GAAG,uBAAuB,CAAC;AACrD,MAAM,MAAM,gCAAgC,GAAG;IAC3C,QAAQ,CAAC,mBAAmB,EAAE,4BAA4B,CAAC;IAC3D,QAAQ,CAAC,aAAa,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAClD,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC;CAC7B,CAAC;AAeF,MAAM,MAAM,oBAAoB,GAAG,yBAAyB,CAAC;AAwB7D,KAAK,wBAAwB,GAAG;IAC5B,QAAQ,CAAC,OAAO,EAAE,sBAAsB,GAAG,IAAI,GAAG,SAAS,CAAC;IAC5D,QAAQ,CAAC,YAAY,EAAE,gCAAgC,CAAC;IACxD,QAAQ,CAAC,cAAc,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACtD,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;IACvC,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAAC;CAC9C,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,MAAM,oBAAsD,CAAC;AA2atG,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAUlF;AAED,wBAAsB,eAAe,CACjC,QAAQ,EAAE,YAAY,EACtB,aAAa,EAAE,oBAAoB,GAAG,IAAI,GAAG,SAAS,EACtD,WAAW,EAAE,oBAAoB,EACjC,YAAY,EAAE,gCAAgC,GAC/C,OAAO,CAAC,cAAc,CAAC,CAezB"}
1
+ {"version":3,"file":"execution-supervision.d.ts","sourceRoot":"","sources":["../../../../source/engine/execution-supervision.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAIH,KAAK,iBAAiB,EACzB,MAAM,qBAAqB,CAAC;AAC7B,OAA0B,KASd,EAIH,4BAGiC,EAAE,MAAM,sCAAsC,CAAC;MAM/B,MAK9C,oBAAoB,GAAG;IAC/B,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;IACzC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;CACxC,CAAC;AACF,MAAM,MAAuB,gCACe,GAAG;IAC3C,QAAQ,CAAC,mBAAmB,EAAE,4BAA4B,CAAC;IAC3D,QAAQ,CAAC,aAAa,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAClD,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC;CAC7B,CAAC;AAiBF,MAAM,CAUiB,EAQtB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { invalidTimeoutControlFailure, runTestCase, timeoutFailure } from "./case-execution.js";
2
2
  import { workIdentityKey } from "./identity.js";
3
- import { isPermissionDeniedRunnerError, verdictFromOutcome } from "./run-result.js";
3
+ import { singleAttemptResult, isPermissionDeniedRunnerError, verdictFromOutcome } from "./run-result.js";
4
4
  import { findResourceBudgetBreach } from "./execution-resource-budget-breach.js";
5
5
  import { createExecutionSupervision as createExecutionSupervisionState } from "./execution-supervision-state.js";
6
6
  const microsecondsPerMillisecond = 1000;
@@ -14,14 +14,14 @@ function createCaseCompletion() {
14
14
  }
15
15
  function createTerminalCase(testCase, verdict, durationMicroseconds) {
16
16
  return {
17
- result: {
17
+ result: singleAttemptResult({
18
18
  definitionLocations: testCase.definitionLocations,
19
19
  id: testCase.id,
20
20
  outcome: null,
21
21
  verdict,
22
22
  workId: testCase.workId,
23
23
  durationMicroseconds
24
- },
24
+ }, { index: 0 }),
25
25
  runnerErrors: [],
26
26
  durationMicroseconds
27
27
  };
@@ -31,14 +31,14 @@ function failCase(testCase, failures, durationMicroseconds) {
31
31
  failures,
32
32
  kind: 'fail'
33
33
  };
34
- return {
34
+ return singleAttemptResult({
35
35
  definitionLocations: testCase.definitionLocations,
36
36
  id: testCase.id,
37
37
  outcome,
38
38
  verdict: verdictFromOutcome(outcome),
39
39
  workId: testCase.workId,
40
40
  durationMicroseconds
41
- };
41
+ }, { index: 0 });
42
42
  }
43
43
  function timeoutControlValue(testCase) {
44
44
  return testCase.controls.timeoutMilliseconds;
@@ -88,26 +88,25 @@ function clearTimer(wallClock, timer) {
88
88
  wallClock.clearTimeout(timer);
89
89
  }
90
90
  }
91
- function policyCheckedCase(testCase, executedCase, supervision, dependencies) {
92
- const errors = dependencies.runtimePolicy?.takeCaseErrors(testCase) ?? [];
91
+ function policyCheckedCase(input, executedCase) {
92
+ const errors = input.dependencies.runtimePolicy?.takeAttemptErrors(input.testCase, input.attempt) ?? [];
93
93
  const hasCasePermissionError = executedCase.runnerErrors.some(isPermissionDeniedRunnerError);
94
94
  if (errors.length === 0 && !hasCasePermissionError) {
95
95
  return executedCase;
96
96
  }
97
- for (const error of errors) {
98
- supervision.recordRunnerError(error);
99
- }
100
97
  return {
101
- ...createTerminalCase(testCase, 'runtime-policy', executedCase.durationMicroseconds),
102
- runnerErrors: executedCase.runnerErrors
98
+ ...executedCase,
99
+ result: { ...executedCase.result, outcome: null, verdict: 'runtime-policy' },
100
+ runnerErrors: [...executedCase.runnerErrors, ...errors]
103
101
  };
104
102
  }
105
- async function runTestCaseWithPolicy(testCase, controller, supervision, dependencies) {
106
- const executedCase = await runTestCase(testCase, dependencies.wallClock, {
107
- controller,
108
- runtimePolicy: dependencies.runtimePolicy ?? null
103
+ async function runTestCaseWithPolicy(input) {
104
+ const executedCase = await runTestCase(input.testCase, input.dependencies.wallClock, {
105
+ attempt: input.attempt,
106
+ controller: input.controller,
107
+ runtimePolicy: input.dependencies.runtimePolicy ?? null
109
108
  });
110
- return policyCheckedCase(testCase, executedCase, supervision, dependencies);
109
+ return policyCheckedCase(input, executedCase);
111
110
  }
112
111
  function activeCaseIds(activeCases) {
113
112
  return Array.from(activeCases.values(), function toCaseId(activeCase) {
@@ -119,10 +118,14 @@ function activeWorkIds(activeCases) {
119
118
  return activeCase.testCase.workId;
120
119
  });
121
120
  }
121
+ function soleActiveAttempt(attempts) {
122
+ return attempts.length === 1 ? attempts[0] ?? null : null;
123
+ }
122
124
  function resourceExhaustionError(cause) {
123
125
  const [activeCase = null] = cause.activeCases;
124
126
  const [activeWork = null] = cause.activeWork;
125
127
  return {
128
+ attributedToAttempt: soleActiveAttempt(cause.activeAttempts),
126
129
  attributedTo: cause.activeCases.length === 1 ? activeCase : null,
127
130
  attributedToWork: cause.activeWork.length === 1 ? activeWork : null,
128
131
  cause,
@@ -139,6 +142,7 @@ function crashError(cause) {
139
142
  const [activeCase = null] = cause.activeCases;
140
143
  const [activeWork = null] = cause.activeWork;
141
144
  return {
145
+ attributedToAttempt: soleActiveAttempt(cause.activeAttempts),
142
146
  attributedTo: cause.activeCases.length === 1 ? activeCase : null,
143
147
  attributedToWork: cause.activeWork.length === 1 ? activeWork : null,
144
148
  cause,
@@ -158,6 +162,9 @@ function completeActiveCasesAs(supervision, verdict, dependencies) {
158
162
  }
159
163
  function completeActiveCasesWithCrash(supervision, dependencies) {
160
164
  const cause = {
165
+ activeAttempts: Array.from(supervision.activeCases.values(), function attempt(active) {
166
+ return active.attempt;
167
+ }),
161
168
  activeCases: activeCaseIds(supervision.activeCases),
162
169
  activeWork: activeWorkIds(supervision.activeCases),
163
170
  reason: 'hard-timeout'
@@ -177,6 +184,9 @@ function completeActiveCasesWithResourceExhaustion(breach, supervision, dependen
177
184
  supervision.stopAcceptingCases();
178
185
  const cause = {
179
186
  ...breach,
187
+ activeAttempts: Array.from(supervision.activeCases.values(), function attempt(active) {
188
+ return active.attempt;
189
+ }),
180
190
  activeCases: activeCaseIds(supervision.activeCases),
181
191
  activeWork: activeWorkIds(supervision.activeCases),
182
192
  enforcement: 'sampled'
@@ -193,14 +203,14 @@ function completeActiveCasesWithResourceExhaustion(breach, supervision, dependen
193
203
  }
194
204
  async function runCaseWithSoftTimeout(input) {
195
205
  if (input.timeoutMilliseconds === null) {
196
- return await runTestCaseWithPolicy(input.testCase, input.controller, input.supervision, input.dependencies);
206
+ return await runTestCaseWithPolicy(input);
197
207
  }
198
208
  const timing = { timedOut: false };
199
209
  const softTimeout = input.dependencies.wallClock.setTimeout(function abortTimedOutCase() {
200
210
  timing.timedOut = true;
201
211
  input.controller.abort();
202
212
  }, input.timeoutMilliseconds);
203
- const executedCase = await runTestCaseWithPolicy(input.testCase, input.controller, input.supervision, input.dependencies);
213
+ const executedCase = await runTestCaseWithPolicy(input);
204
214
  clearTimer(input.dependencies.wallClock, softTimeout);
205
215
  const deadlineMicroseconds = input.timeoutMilliseconds * microsecondsPerMillisecond;
206
216
  if (timing.timedOut || executedCase.durationMicroseconds >= deadlineMicroseconds) {
@@ -224,6 +234,7 @@ function registerActiveCase(input) {
224
234
  completeActiveCasesWithCrash(input.supervision, input.dependencies);
225
235
  }, input.timeoutPolicy.hardTimeoutMilliseconds);
226
236
  const activeCase = {
237
+ attempt: input.attempt,
227
238
  abort() {
228
239
  input.controller.abort();
229
240
  },
@@ -249,14 +260,14 @@ function createInconclusiveCaseResult(testCase, error, durationMicroseconds) {
249
260
  kind: 'inconclusive',
250
261
  reason: `Test execution failed before producing a result: ${reason}`
251
262
  };
252
- return {
263
+ return singleAttemptResult({
253
264
  definitionLocations: testCase.definitionLocations,
254
265
  id: testCase.id,
255
266
  outcome,
256
267
  verdict: verdictFromOutcome(outcome),
257
268
  workId: testCase.workId,
258
269
  durationMicroseconds
259
- };
270
+ }, { index: 0 });
260
271
  }
261
272
  function completeUnexpectedBodyError(input, error) {
262
273
  const durationMicroseconds = Number(input.dependencies.wallClock.currentMonotonicMicroseconds) -
@@ -301,14 +312,11 @@ function registerCaseBodyInput(input, timeoutMilliseconds) {
301
312
  timeoutMilliseconds
302
313
  };
303
314
  }
304
- function createActiveCaseInput(testCase, timeoutPolicy, supervision, dependencies) {
315
+ function createActiveCaseInput(input) {
305
316
  return {
317
+ ...input,
306
318
  completion: createCaseCompletion(),
307
- controller: new AbortController(),
308
- dependencies,
309
- supervision,
310
- testCase,
311
- timeoutPolicy
319
+ controller: new AbortController()
312
320
  };
313
321
  }
314
322
  export function recordResourceUsageSample(input) {
@@ -319,14 +327,23 @@ export function recordResourceUsageSample(input) {
319
327
  completeActiveCasesWithResourceExhaustion(breach, input.supervision, input.dependencies);
320
328
  return true;
321
329
  }
322
- export async function executeCaseBody(testCase, timeoutPolicy, supervision, dependencies) {
323
- if (testCase.execution.kind === 'skip') {
324
- return await runTestCase(testCase, dependencies.wallClock);
330
+ function closedBoundaryVerdict(supervision) {
331
+ const exhausted = supervision.runnerErrors.some(function resourceExhausted(error) {
332
+ return error.subtype === 'resource-exhaustion';
333
+ });
334
+ return exhausted ? 'resource-exhausted' : 'crashed';
335
+ }
336
+ export async function executeCaseBody(input) {
337
+ if (input.dependencies.globalErrorObserver.hasFatalError() || !input.supervision.acceptsNewCases()) {
338
+ return createTerminalCase(input.testCase, closedBoundaryVerdict(input.supervision), 0);
339
+ }
340
+ if (input.testCase.execution.kind === 'skip') {
341
+ return await runTestCase(input.testCase, input.dependencies.wallClock);
325
342
  }
326
- const timeoutResolution = resolveSoftTimeout(testCase, timeoutPolicy);
343
+ const timeoutResolution = resolveSoftTimeout(input.testCase, input.timeoutPolicy);
327
344
  if (timeoutResolution.kind === 'failure') {
328
- return invalidTimeoutCase(testCase, timeoutResolution.failure);
345
+ return invalidTimeoutCase(input.testCase, timeoutResolution.failure);
329
346
  }
330
- return await runCaseBodyUnderSupervision(registerCaseBodyInput(createActiveCaseInput(testCase, timeoutPolicy, supervision, dependencies), timeoutResolution.milliseconds));
347
+ return await runCaseBodyUnderSupervision(registerCaseBodyInput(createActiveCaseInput(input), timeoutResolution.milliseconds));
331
348
  }
332
349
  //# sourceMappingURL=execution-supervision.js.map