@overkill-dev/run 0.0.55 → 0.0.57

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 (197) hide show
  1. package/engine/async-leak-diagnostics.d.ts.map +1 -1
  2. package/engine/async-leak-diagnostics.js +10 -0
  3. package/engine/async-leak-diagnostics.js.map +1 -1
  4. package/engine/case-execution.d.ts.map +1 -1
  5. package/engine/case-execution.js +2 -0
  6. package/engine/case-execution.js.map +1 -1
  7. package/engine/execution-async-leak-policy.d.ts.map +1 -1
  8. package/engine/execution-async-leak-policy.js +1 -0
  9. package/engine/execution-async-leak-policy.js.map +1 -1
  10. package/engine/execution-global-error-observer.d.ts.map +1 -1
  11. package/engine/execution-global-error-observer.js +3 -0
  12. package/engine/execution-global-error-observer.js.map +1 -1
  13. package/engine/execution-supervision.d.ts.map +1 -1
  14. package/engine/execution-supervision.js +11 -5
  15. package/engine/execution-supervision.js.map +1 -1
  16. package/engine/reporter-dispatcher.d.ts.map +1 -1
  17. package/engine/reporter-dispatcher.js +1 -0
  18. package/engine/reporter-dispatcher.js.map +1 -1
  19. package/engine/run-result.d.ts +6 -0
  20. package/engine/run-result.d.ts.map +1 -1
  21. package/engine/run-result.js +2 -0
  22. package/engine/run-result.js.map +1 -1
  23. package/package.json +10 -4
  24. package/packages/reporter-line/reporter-line.entry-point.js +19 -1
  25. package/packages/reporter-line/reporter-line.entry-point.js.map +1 -1
  26. package/packages/run/run.entry-point.d.ts +2 -1
  27. package/packages/run/run.entry-point.d.ts.map +1 -1
  28. package/readme.md +7 -1
  29. package/reporters/failure-summary.js +16 -0
  30. package/reporters/failure-summary.js.map +1 -0
  31. package/reporters/human-reporter-rendering.js +214 -0
  32. package/reporters/human-reporter-rendering.js.map +1 -0
  33. package/reporters/line-reporter.js +92 -97
  34. package/reporters/line-reporter.js.map +1 -1
  35. package/reporters/run-timing-summary.js +11 -0
  36. package/reporters/run-timing-summary.js.map +1 -0
  37. package/reporters/terminal.js +5 -1
  38. package/reporters/terminal.js.map +1 -1
  39. package/run/capability-policy.js +5 -0
  40. package/run/capability-policy.js.map +1 -1
  41. package/run/command-line-runner.d.ts.map +1 -1
  42. package/run/command-line-runner.js +10 -5
  43. package/run/command-line-runner.js.map +1 -1
  44. package/run/duration-history.d.ts +10 -1
  45. package/run/duration-history.d.ts.map +1 -1
  46. package/run/duration-history.js +3 -2
  47. package/run/duration-history.js.map +1 -1
  48. package/run/node-child-process-starters.js +1 -1
  49. package/run/node-child-process-starters.js.map +1 -1
  50. package/run/placement-trace.d.ts +9 -0
  51. package/run/placement-trace.d.ts.map +1 -1
  52. package/run/placement-trace.js.map +1 -1
  53. package/run/resource-lifecycle-boundaries.js +73 -0
  54. package/run/resource-lifecycle-boundaries.js.map +1 -0
  55. package/run/resource-lifecycle-projection.js +48 -0
  56. package/run/resource-lifecycle-projection.js.map +1 -0
  57. package/run/resource-lifecycle-session-acquirer.js +177 -0
  58. package/run/resource-lifecycle-session-acquirer.js.map +1 -0
  59. package/run/resource-lifecycle-startup-budget.js +81 -0
  60. package/run/resource-lifecycle-startup-budget.js.map +1 -0
  61. package/run/resource-lifecycle-state.d.ts +2 -0
  62. package/run/resource-lifecycle-state.d.ts.map +1 -1
  63. package/run/resource-lifecycle-state.js.map +1 -1
  64. package/run/resource-lifecycle-timing.js +85 -0
  65. package/run/resource-lifecycle-timing.js.map +1 -0
  66. package/run/resource-lifecycle.js +130 -235
  67. package/run/resource-lifecycle.js.map +1 -1
  68. package/run/run-collected-planning.js +23 -6
  69. package/run/run-collected-planning.js.map +1 -1
  70. package/run/run-collected-resolution.js +3 -2
  71. package/run/run-collected-resolution.js.map +1 -1
  72. package/run/run-collection-error-result.js +2 -2
  73. package/run/run-collection-error-result.js.map +1 -1
  74. package/run/run-config-schema.d.ts +7 -0
  75. package/run/run-config-schema.d.ts.map +1 -1
  76. package/run/run-config-schema.js +4 -0
  77. package/run/run-config-schema.js.map +1 -1
  78. package/run/run-config.d.ts.map +1 -1
  79. package/run/run-config.js +4 -4
  80. package/run/run-config.js.map +1 -1
  81. package/run/run-empty-shard.js +2 -2
  82. package/run/run-empty-shard.js.map +1 -1
  83. package/run/run-errors.d.ts.map +1 -1
  84. package/run/run-errors.js +1 -0
  85. package/run/run-errors.js.map +1 -1
  86. package/run/run-facts.js +4 -0
  87. package/run/run-facts.js.map +1 -1
  88. package/run/run-if-main-facts.js +2 -1
  89. package/run/run-if-main-facts.js.map +1 -1
  90. package/run/run-in-process-execution.js +3 -3
  91. package/run/run-in-process-execution.js.map +1 -1
  92. package/run/run-input-resolution.js +6 -0
  93. package/run/run-input-resolution.js.map +1 -1
  94. package/run/run-isolated-process.js +39 -24
  95. package/run/run-isolated-process.js.map +1 -1
  96. package/run/run-local-execution.js +12 -3
  97. package/run/run-local-execution.js.map +1 -1
  98. package/run/run-local-resolution.js +4 -2
  99. package/run/run-local-resolution.js.map +1 -1
  100. package/run/run-orchestrator-dependencies.d.ts +2 -0
  101. package/run/run-orchestrator-dependencies.d.ts.map +1 -1
  102. package/run/run-orchestrator-dependencies.js.map +1 -1
  103. package/run/run-support.js +14 -6
  104. package/run/run-support.js.map +1 -1
  105. package/run/run-timing-collection.d.ts +43 -0
  106. package/run/run-timing-collection.d.ts.map +1 -0
  107. package/run/run-timing-collection.js +173 -8
  108. package/run/run-timing-collection.js.map +1 -1
  109. package/run/run-types.d.ts +13 -3
  110. package/run/run-types.d.ts.map +1 -1
  111. package/run/run-types.js.map +1 -1
  112. package/run/run-validation.js +2 -0
  113. package/run/run-validation.js.map +1 -1
  114. package/run/run.js +31 -20
  115. package/run/run.js.map +1 -1
  116. package/run/supervised-child-process.d.ts +1 -0
  117. package/run/supervised-child-process.d.ts.map +1 -1
  118. package/run/supervised-child-process.js +5 -0
  119. package/run/supervised-child-process.js.map +1 -1
  120. package/run/supervised-child-test-plan.js +2 -0
  121. package/run/supervised-child-test-plan.js.map +1 -1
  122. package/run/supervised-child.js +3 -2
  123. package/run/supervised-child.js.map +1 -1
  124. package/run/supervised-protocol.js +14 -0
  125. package/run/supervised-protocol.js.map +1 -1
  126. package/run/supervised-run-collection.js +123 -0
  127. package/run/supervised-run-collection.js.map +1 -0
  128. package/run/supervised-run-resource-policy.js +6 -0
  129. package/run/supervised-run-resource-policy.js.map +1 -1
  130. package/run/supervised-run-runtime.js +9 -13
  131. package/run/supervised-run-runtime.js.map +1 -1
  132. package/run/supervised-run-state.d.ts +1 -0
  133. package/run/supervised-run-state.d.ts.map +1 -1
  134. package/run/supervised-run-state.js +17 -5
  135. package/run/supervised-run-state.js.map +1 -1
  136. package/run/supervised-run.js +76 -104
  137. package/run/supervised-run.js.map +1 -1
  138. package/run/work-unit-resource-constraints.js +6 -6
  139. package/run/work-unit-resource-constraints.js.map +1 -1
  140. package/run/worker-pool-collection.js +47 -20
  141. package/run/worker-pool-collection.js.map +1 -1
  142. package/run/worker-pool-command.js +68 -0
  143. package/run/worker-pool-command.js.map +1 -0
  144. package/run/worker-pool-dispatch-state.js +59 -0
  145. package/run/worker-pool-dispatch-state.js.map +1 -1
  146. package/run/worker-pool-dynamic-plan.js +62 -0
  147. package/run/worker-pool-dynamic-plan.js.map +1 -0
  148. package/run/worker-pool-execution.js +53 -83
  149. package/run/worker-pool-execution.js.map +1 -1
  150. package/run/worker-pool-hedge-dispatch.js +2 -1
  151. package/run/worker-pool-hedge-dispatch.js.map +1 -1
  152. package/run/worker-pool-host-process-starter.js +13 -0
  153. package/run/worker-pool-host-process-starter.js.map +1 -0
  154. package/run/worker-pool-host-process.js +53 -79
  155. package/run/worker-pool-host-process.js.map +1 -1
  156. package/run/worker-pool-host-protocol.js.map +1 -1
  157. package/run/worker-pool-host-signal.js +21 -0
  158. package/run/worker-pool-host-signal.js.map +1 -0
  159. package/run/worker-pool-host-task.js +55 -0
  160. package/run/worker-pool-host-task.js.map +1 -0
  161. package/run/worker-pool-lanes.js +51 -28
  162. package/run/worker-pool-lanes.js.map +1 -1
  163. package/run/worker-pool-lease-selection.js +85 -0
  164. package/run/worker-pool-lease-selection.js.map +1 -0
  165. package/run/worker-pool-lifecycle-lanes.js +4 -56
  166. package/run/worker-pool-lifecycle-lanes.js.map +1 -1
  167. package/run/worker-pool-placement-planning.js +9 -4
  168. package/run/worker-pool-placement-planning.js.map +1 -1
  169. package/run/worker-pool-protocol.js +2 -0
  170. package/run/worker-pool-protocol.js.map +1 -0
  171. package/run/worker-pool-resource-lifecycle-execution.js +155 -0
  172. package/run/worker-pool-resource-lifecycle-execution.js.map +1 -0
  173. package/run/worker-pool-routing.js +6 -3
  174. package/run/worker-pool-routing.js.map +1 -1
  175. package/run/worker-pool-run.js +74 -19
  176. package/run/worker-pool-run.js.map +1 -1
  177. package/run/worker-pool-runtime.js +77 -17
  178. package/run/worker-pool-runtime.js.map +1 -1
  179. package/run/worker-pool-task-events.js +20 -0
  180. package/run/worker-pool-task-events.js.map +1 -1
  181. package/run/worker-pool-task-validation.js +11 -0
  182. package/run/worker-pool-task-validation.js.map +1 -0
  183. package/run/worker-pool-warm-lane-affinity.d.ts +13 -0
  184. package/run/worker-pool-warm-lane-affinity.d.ts.map +1 -0
  185. package/run/worker-pool-warm-lane-affinity.js +147 -0
  186. package/run/worker-pool-warm-lane-affinity.js.map +1 -0
  187. package/run/worker-pool-work-dispatcher.js +78 -154
  188. package/run/worker-pool-work-dispatcher.js.map +1 -1
  189. package/run/worker-pool-worker-plan.js +1 -0
  190. package/run/worker-pool-worker-plan.js.map +1 -1
  191. package/run/worker-pool-worker-resources.js +99 -0
  192. package/run/worker-pool-worker-resources.js.map +1 -0
  193. package/run/worker-pool-worker-timing.js +63 -0
  194. package/run/worker-pool-worker-timing.js.map +1 -0
  195. package/run/worker-pool-worker.js +93 -32
  196. package/run/worker-pool-worker.js.map +1 -1
  197. package/sbom.cdx.json +9 -9
@@ -1,74 +1,10 @@
1
- import { workIdentityKey } from "../engine/identity.js";
2
- import { assertResourceDependencyScopes, callableResourceDefinition, createResourceGraph, resourceEntries } from "../resources/resource-graph.js";
1
+ import { assertResourceDependencyScopes, callableResourceDefinition, createResourceGraph } from "../resources/resource-graph.js";
3
2
  import { combinedResourceEntries, composedResourceSession, directResourceEntries, resourceMapFromEntries, stepRuntimeGraphs } from "./resource-lifecycle-composition.js";
4
3
  import { currentLifecycleCase, runWithLifecycleCase, runWithManagedLifecycle } from "./resource-lifecycle-state.js";
5
4
  import { resourceWrapperErrorFromUnknown, resourceWrapperLifecycleError } from "./resource-lifecycle-error.js";
6
5
  import { managedResourceSession } from "./resource-lifecycle-managed-session.js";
7
- const resourceScopes = new Set([
8
- 'per-case',
9
- 'per-file',
10
- 'per-run',
11
- 'per-suite',
12
- 'shared-per-worker'
13
- ]);
14
- function isResourceScope(scope) {
15
- return resourceScopes.has(scope);
16
- }
17
- function isProjectionScalar(value) {
18
- return value === null ||
19
- typeof value === 'string' ||
20
- typeof value === 'boolean' ||
21
- typeof value === 'number' && Number.isFinite(value);
22
- }
23
- function isProjectionObject(value) {
24
- return typeof value === 'object' && value !== null && !Array.isArray(value);
25
- }
26
- function isProjectionPayload(value) {
27
- if (isProjectionScalar(value)) {
28
- return true;
29
- }
30
- if (Array.isArray(value)) {
31
- return value.every(isProjectionPayload);
32
- }
33
- return isProjectionObject(value) &&
34
- Object.values(value).every(isProjectionPayload);
35
- }
36
- function resourceHasProjection(resource) {
37
- return typeof resource.serializeHandle === 'function' &&
38
- typeof resource.deserializeHandle === 'function';
39
- }
40
- function projectedHandle(resource, ownerHandle, dependencyContext) {
41
- if (!resourceHasProjection(resource)) {
42
- return ownerHandle;
43
- }
44
- const context = { dependencies: dependencyContext };
45
- const payload = resource.serializeHandle(ownerHandle, context);
46
- if (!isProjectionPayload(payload)) {
47
- throw resourceWrapperLifecycleError(`Resource "${resource.name}" returned a non-JSON projection payload.`, payload);
48
- }
49
- return resource.deserializeHandle(payload, context);
50
- }
51
- function suiteBoundary(testCase) {
52
- return JSON.stringify(testCase.id.suite);
53
- }
54
- function resourceBoundaryForCase(resourceName, scope, testCase) {
55
- return scope === 'shared-per-worker'
56
- ? { key: `worker:${resourceName}`, scope }
57
- : { key: `case:${workIdentityKey(testCase.workId)}:${resourceName}`, scope };
58
- }
59
- function resourceBoundary(resourceName, scope, testCase) {
60
- const file = testCase.id.file ?? '<no-file>';
61
- if (scope === 'per-run') {
62
- return { key: `run:${resourceName}`, scope };
63
- }
64
- if (scope === 'per-file') {
65
- return { key: `file:${file}:${resourceName}`, scope };
66
- }
67
- if (scope === 'per-suite') {
68
- return { key: `suite:${file}:${suiteBoundary(testCase)}:${resourceName}`, scope };
69
- }
70
- return resourceBoundaryForCase(resourceName, scope, testCase);
71
- }
6
+ import { caseResourceBoundaryKeys, resourceLifecycleBoundaryUseCounts, resourceScopes } from "./resource-lifecycle-boundaries.js";
7
+ import { createManagedResourceAcquirer, createManagedStores, resourceProjectionRecordsFromStores } from "./resource-lifecycle-session-acquirer.js";
72
8
  function currentRunningCase() {
73
9
  const testCase = currentLifecycleCase();
74
10
  if (testCase === null) {
@@ -76,172 +12,59 @@ function currentRunningCase() {
76
12
  }
77
13
  return testCase;
78
14
  }
79
- function caseResourceBoundaries(testCase) {
80
- return Array.from(new Set(testCase.resourceAttachments.resourceGraph.flatMap(function toBoundary(resource) {
81
- return isResourceScope(resource.scope)
82
- ? [resourceBoundary(resource.name, resource.scope, testCase).key]
83
- : [];
84
- })));
85
- }
86
- function initialBoundaryUseCounts(testCases) {
87
- const counts = new Map();
88
- for (const testCase of testCases) {
89
- for (const boundary of caseResourceBoundaries(testCase)) {
90
- counts.set(boundary, (counts.get(boundary) ?? 0) + 1);
91
- }
92
- }
93
- return counts;
94
- }
95
- function caseKey(testCase) {
96
- return workIdentityKey(testCase.workId);
97
- }
98
- function mutableDependencyContext() {
99
- return {};
100
- }
101
- function createManagedStores(testCases) {
102
- const acquisitions = new Map();
103
- const boundaryUseCounts = new Map(initialBoundaryUseCounts(testCases));
104
- const errorsByCase = new Map();
105
- const records = new Map();
106
- const runErrors = [];
15
+ function defaultLifecycleOptions(testCases, timing) {
107
16
  return {
108
- deleteAcquisition(boundaryKey) {
109
- acquisitions.delete(boundaryKey);
110
- },
111
- deleteRecord(boundaryKey) {
112
- records.delete(boundaryKey);
113
- },
114
- async existingAcquisition(boundaryKey) {
115
- return await (acquisitions.get(boundaryKey) ?? Promise.resolve(null));
116
- },
117
- existingRecord(boundaryKey) {
118
- return records.get(boundaryKey);
119
- },
120
- recordCaseError(testCase, message, cause) {
121
- const key = caseKey(testCase);
122
- const errors = errorsByCase.get(key) ?? [];
123
- errors.push(resourceWrapperLifecycleError(message, cause).runnerError(testCase.id, testCase.workId));
124
- errorsByCase.set(key, errors);
125
- },
126
- remainingBoundaryUses(boundaryKey) {
127
- const remaining = (boundaryUseCounts.get(boundaryKey) ?? 0) - 1;
128
- boundaryUseCounts.set(boundaryKey, remaining);
129
- return remaining;
130
- },
131
- rememberAcquisition(boundaryKey, acquisition) {
132
- acquisitions.set(boundaryKey, acquisition);
133
- },
134
- rememberRecord(boundaryKey, record) {
135
- records.set(boundaryKey, record);
136
- },
137
- takeCaseErrors(testCase) {
138
- const key = caseKey(testCase);
139
- const errors = errorsByCase.get(key) ?? [];
140
- errorsByCase.delete(key);
141
- return errors;
142
- },
143
- takePendingRunErrors() {
144
- const errors = Array.from(runErrors);
145
- runErrors.length = 0;
146
- return errors;
147
- },
148
- takeRunErrors() {
149
- const errors = Array.from(runErrors);
150
- runErrors.length = 0;
151
- return errors;
152
- }
17
+ boundaryUseCounts: resourceLifecycleBoundaryUseCounts(testCases),
18
+ caseDisposalScopes: new Set(resourceScopes),
19
+ projectedResources: { resources: [] },
20
+ timing
153
21
  };
154
22
  }
155
- function boundaryFor(resource, testCase) {
156
- return resourceBoundary(resource.name, resource.scope, testCase);
157
- }
158
- function assertCompatibleResource(stores, boundary, resource) {
159
- const record = stores.existingRecord(boundary.key);
160
- if (record !== undefined && record.descriptor !== resource) {
161
- throw resourceWrapperLifecycleError(`Resource name "${resource.name}" is used by multiple descriptors in one lifecycle boundary.`, resource);
162
- }
163
- }
164
- function createManagedResourceAcquirer(stores) {
165
- let acquireResource = async function acquireBeforeReady() {
166
- throw resourceWrapperLifecycleError('Resource lifecycle is not ready.', null);
167
- };
168
- async function acquireDependencyContext(resource, testCase, signal) {
169
- const context = mutableDependencyContext();
170
- await Promise.all(resourceEntries(resource.dependencies).map(async function acquireDependency([key, dependency]) {
171
- const record = await acquireResource(dependency, testCase, signal);
172
- context[key] = record.exposedHandle;
173
- }));
174
- return Object.freeze(context);
23
+ async function disposeResourceRecord(record, signal, timing) {
24
+ const { dispose } = callableResourceDefinition(record.descriptor);
25
+ if (record.external || dispose === null) {
26
+ return;
175
27
  }
176
- async function startResource(resource, boundary, testCase, signal) {
177
- const dependencyContext = await acquireDependencyContext(resource, testCase, signal);
178
- const ownerHandle = await callableResourceDefinition(resource).acquire({
179
- dependencies: dependencyContext,
28
+ const disposeHandle = async function disposeResourceHandle() {
29
+ await dispose(record.ownerHandle, {
30
+ dependencies: record.dependencyContext,
180
31
  signal
181
32
  });
182
- const record = {
183
- boundary,
184
- dependencyContext,
185
- descriptor: resource,
186
- exposedHandle: projectedHandle(resource, ownerHandle, dependencyContext),
187
- ownerHandle
188
- };
189
- stores.rememberRecord(boundary.key, record);
190
- return record;
191
- }
192
- async function acquireNewResource(resource, boundary, testCase, signal) {
193
- const acquisition = startResource(resource, boundary, testCase, signal);
194
- stores.rememberAcquisition(boundary.key, acquisition);
195
- try {
196
- return await acquisition;
197
- }
198
- catch (error) {
199
- stores.deleteAcquisition(boundary.key);
200
- throw error;
201
- }
33
+ };
34
+ if (timing === null) {
35
+ await disposeHandle();
202
36
  }
203
- async function acquire(resource, testCase, signal) {
204
- const boundary = boundaryFor(resource, testCase);
205
- const existingRecord = stores.existingRecord(boundary.key);
206
- assertCompatibleResource(stores, boundary, resource);
207
- if (existingRecord !== undefined) {
208
- return existingRecord;
209
- }
210
- const existingAcquisition = await stores.existingAcquisition(boundary.key);
211
- return existingAcquisition ?? await acquireNewResource(resource, boundary, testCase, signal);
37
+ else {
38
+ await timing.measure({
39
+ phase: 'dispose',
40
+ resource: { name: record.descriptor.name, scope: record.descriptor.scope },
41
+ signal
42
+ }, disposeHandle);
212
43
  }
213
- acquireResource = acquire;
214
- return { acquire };
215
44
  }
216
- async function disposeBoundary(stores, boundaryKey, signal) {
45
+ async function disposeBoundary(stores, boundaryKey, signal, timing) {
217
46
  const record = stores.existingRecord(boundaryKey);
218
47
  if (record === undefined) {
219
48
  return;
220
49
  }
221
- const { dispose } = callableResourceDefinition(record.descriptor);
222
50
  stores.deleteRecord(boundaryKey);
223
51
  stores.deleteAcquisition(boundaryKey);
224
- if (dispose !== null) {
225
- await dispose(record.ownerHandle, {
226
- dependencies: record.dependencyContext,
227
- signal
228
- });
229
- }
52
+ await disposeResourceRecord(record, signal, timing);
230
53
  }
231
54
  function freshDisposalSignal() {
232
55
  const controller = new AbortController();
233
56
  return controller.signal;
234
57
  }
235
- async function disposeCompletedBoundary(stores, boundary) {
58
+ async function disposeCompletedBoundary(stores, boundary, timing) {
236
59
  const remaining = stores.remainingBoundaryUses(boundary);
237
60
  if (remaining <= 0) {
238
- await disposeBoundary(stores, boundary, freshDisposalSignal());
61
+ await disposeBoundary(stores, boundary, freshDisposalSignal(), timing);
239
62
  }
240
63
  }
241
- async function disposeCompletedBoundaries(stores, testCase) {
242
- for (const boundary of caseResourceBoundaries(testCase)) {
64
+ async function disposeCompletedBoundaries(stores, options, testCase) {
65
+ for (const boundary of caseResourceBoundaryKeys(testCase, options.caseDisposalScopes)) {
243
66
  try {
244
- await disposeCompletedBoundary(stores, boundary);
67
+ await disposeCompletedBoundary(stores, boundary, options.timing);
245
68
  }
246
69
  catch (error) {
247
70
  stores.recordCaseError(testCase, 'Resource disposal failed.', error);
@@ -261,53 +84,92 @@ async function managedResourceHandles(acquirer, graph, testCase, signal) {
261
84
  }
262
85
  return handles;
263
86
  }
264
- async function acquireComposedResourcesWithLifecycle(stores, steps, signal) {
87
+ async function acquireComposedResourcesWithLifecycle(stores, options, steps, signal) {
265
88
  const testCase = currentRunningCase();
266
89
  const directResources = resourceMapFromEntries(directResourceEntries(steps));
267
90
  const runtimes = stepRuntimeGraphs(steps);
268
91
  const combinedResources = combinedResourceEntries(steps, testCase.workId);
269
92
  const graph = createResourceGraph(combinedResources);
270
- const acquirer = createManagedResourceAcquirer(stores);
93
+ const acquirer = createManagedResourceAcquirer(stores, options);
271
94
  assertResourceDependencyScopes(combinedResources);
272
95
  await acquireTopLevelResources(acquirer, graph, testCase, signal);
273
96
  const handles = await managedResourceHandles(acquirer, graph, testCase, signal);
274
97
  return composedResourceSession(directResources, runtimes, managedResourceSession(combinedResources, handles), testCase.workId);
275
98
  }
276
- async function acquireManagedComposedResources(stores, steps, signal, messages) {
99
+ async function acquireManagedComposedResources(request) {
277
100
  try {
278
- return await acquireComposedResourcesWithLifecycle(stores, steps, signal);
101
+ return await acquireComposedResourcesWithLifecycle(request.stores, request.options, request.steps, request.signal);
279
102
  }
280
103
  catch (error) {
281
- throw resourceWrapperErrorFromUnknown(messages.acquisitionFailure, error);
104
+ throw resourceWrapperErrorFromUnknown(request.messages.acquisitionFailure, error);
105
+ }
106
+ }
107
+ async function acquireManagedResourceScopes(request) {
108
+ const combinedResources = combinedResourceEntries(request.steps, request.testCase.workId);
109
+ const graph = createResourceGraph(combinedResources);
110
+ const acquirer = createManagedResourceAcquirer(request.stores, request.options);
111
+ assertResourceDependencyScopes(combinedResources);
112
+ for (const node of graph.order) {
113
+ if (request.scopes.has(node.descriptor.scope)) {
114
+ await acquirer.acquire(node.descriptor, request.testCase, request.signal);
115
+ }
116
+ }
117
+ }
118
+ async function disposeAllManagedResources(stores, signal, timing) {
119
+ const errors = [];
120
+ for (const record of stores.records().toReversed()) {
121
+ try {
122
+ await disposeBoundary(stores, record.boundary.key, signal, timing);
123
+ }
124
+ catch (error) {
125
+ errors.push({
126
+ attributedTo: null,
127
+ attributedToWork: null,
128
+ cause: error,
129
+ diagnostics: [],
130
+ message: 'Resource disposal failed.',
131
+ subtype: 'runtime-policy'
132
+ });
133
+ }
282
134
  }
135
+ return errors;
283
136
  }
284
- function createManagedLifecycle(testCases) {
285
- const stores = createManagedStores(testCases);
137
+ function createManagedLifecycleState(options) {
138
+ const stores = createManagedStores(options);
139
+ const context = { options, stores };
286
140
  return {
287
- async acquireComposedResources(steps, signal, messages) {
288
- return await acquireManagedComposedResources(stores, steps, signal, messages);
289
- },
290
- async runCase(testCase, run) {
291
- try {
292
- return await runWithLifecycleCase(testCase, run);
293
- }
294
- finally {
295
- await disposeCompletedBoundaries(stores, testCase);
141
+ stores,
142
+ lifecycle: {
143
+ async acquireComposedResources(steps, signal, messages) {
144
+ return await acquireManagedComposedResources({ ...context, messages, signal, steps });
145
+ },
146
+ async acquireResourceScopes(steps, testCase, signal, scopes) {
147
+ await acquireManagedResourceScopes({ ...context, scopes, signal, steps, testCase });
148
+ },
149
+ async disposeAll(signal) {
150
+ return await disposeAllManagedResources(stores, signal, options.timing);
151
+ },
152
+ async runCase(testCase, run) {
153
+ try {
154
+ return await runWithLifecycleCase(testCase, run);
155
+ }
156
+ finally {
157
+ await disposeCompletedBoundaries(stores, options, testCase);
158
+ }
159
+ },
160
+ takeCaseErrors(testCase) {
161
+ return stores.takeCaseErrors(testCase);
162
+ },
163
+ takePendingRunErrors() {
164
+ return stores.takePendingRunErrors();
165
+ },
166
+ takeRunErrors() {
167
+ return stores.takeRunErrors();
296
168
  }
297
- },
298
- takeCaseErrors(testCase) {
299
- return stores.takeCaseErrors(testCase);
300
- },
301
- takePendingRunErrors() {
302
- return stores.takePendingRunErrors();
303
- },
304
- takeRunErrors() {
305
- return stores.takeRunErrors();
306
169
  }
307
170
  };
308
171
  }
309
- export function createResourceLifecycleRuntimePolicy(testCases) {
310
- const lifecycle = createManagedLifecycle(testCases);
172
+ function createRuntimePolicyFromLifecycle(lifecycle) {
311
173
  return {
312
174
  async runCase(testCase, run) {
313
175
  return await runWithManagedLifecycle(lifecycle, async function runWithResourceLifecycle() {
@@ -328,4 +190,37 @@ export function createResourceLifecycleRuntimePolicy(testCases) {
328
190
  }
329
191
  };
330
192
  }
193
+ export function createResourceLifecycleRuntimePolicy(testCases, timing) {
194
+ const { lifecycle } = createManagedLifecycleState(defaultLifecycleOptions(testCases, timing));
195
+ return createRuntimePolicyFromLifecycle(lifecycle);
196
+ }
197
+ export function createResourceLifecycleSession(options) {
198
+ const { lifecycle, stores } = createManagedLifecycleState(options);
199
+ return {
200
+ async disposeAll(signal) {
201
+ return await lifecycle.disposeAll(signal);
202
+ },
203
+ projectionRecords() {
204
+ return resourceProjectionRecordsFromStores(stores);
205
+ },
206
+ runtimePolicy: createRuntimePolicyFromLifecycle(lifecycle)
207
+ };
208
+ }
209
+ export async function acquireResourceLifecycleScopes(request) {
210
+ const { lifecycle, stores } = createManagedLifecycleState(request.options);
211
+ await runWithManagedLifecycle(lifecycle, async function acquireSelectedScopes() {
212
+ for (const testCase of request.testCases) {
213
+ await lifecycle.acquireResourceScopes(request.stepsForCase(testCase), testCase, request.signal, request.scopes);
214
+ }
215
+ });
216
+ return {
217
+ async disposeAll(disposalSignal) {
218
+ return await lifecycle.disposeAll(disposalSignal);
219
+ },
220
+ projectionRecords() {
221
+ return resourceProjectionRecordsFromStores(stores);
222
+ },
223
+ runtimePolicy: createRuntimePolicyFromLifecycle(lifecycle)
224
+ };
225
+ }
331
226
  //# sourceMappingURL=resource-lifecycle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resource-lifecycle.js","sourceRoot":"","sources":["../../../../source/run/resource-lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resource-lifecycle.js","sourceRoot":"","sources":["../../../../source/run/resource-lifecycle.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,11 @@ function workerLifecycle(profile) {
24
24
  ? profile.execution.workerLifecycle
25
25
  : 'reuse';
26
26
  }
27
+ function profileMaximumWorkers(profile) {
28
+ return profile.execution.processModel === 'worker-pool'
29
+ ? profile.execution.maxWorkers
30
+ : null;
31
+ }
27
32
  function createPlacementResolution(input, shardHasher) {
28
33
  if (input.planKind !== 'worker-pool') {
29
34
  return null;
@@ -35,6 +40,8 @@ function createPlacementResolution(input, shardHasher) {
35
40
  fileSetForFile: fileSetForDiscoveredFiles(input.files),
36
41
  nowMilliseconds: input.dependencies.wallClock.currentEpochMilliseconds,
37
42
  order: input.request.order,
43
+ profileMaximumWorkers: profileMaximumWorkers(input.profile),
44
+ requestedWorkers: input.request.workers,
38
45
  seed: input.request.seed,
39
46
  selectedPlan: input.collectedPlan,
40
47
  shard: input.request.shard,
@@ -44,17 +51,27 @@ function createPlacementResolution(input, shardHasher) {
44
51
  workerLifecycle: workerLifecycle(input.profile)
45
52
  });
46
53
  }
54
+ function orderedCollectedCases(input, placementPlan, shardHasher) {
55
+ if (placementPlan !== null) {
56
+ return collectedRunCaseEntriesFromWorkUnits(input.collectedPlan, placementPlan.units);
57
+ }
58
+ return orderedRunItems(shardCollectedRunPlanCases(input.collectedPlan, input.request.shard, shardHasher), input.request.order, input.request.seed);
59
+ }
47
60
  export async function createCollectedExecutionPlan(input) {
48
61
  const shardHasher = await createRunShardHasher(input.request.shard);
49
62
  const placementResolution = createPlacementResolution(input, shardHasher);
50
- const placementPlan = placementResolution?.placementPlan ?? null;
51
- const orderedCases = placementPlan === null
52
- ? orderedRunItems(shardCollectedRunPlanCases(input.collectedPlan, input.request.shard, shardHasher), input.request.order, input.request.seed)
53
- : collectedRunCaseEntriesFromWorkUnits(input.collectedPlan, placementPlan.units);
63
+ const planningFacts = placementResolution ?? {
64
+ durationHistory: null,
65
+ placementPlan: null,
66
+ workerCount: null
67
+ };
68
+ const { placementPlan, workerCount } = planningFacts;
69
+ const orderedCases = orderedCollectedCases(input, placementPlan, shardHasher);
54
70
  return {
55
- durationHistory: placementResolution?.durationHistory ?? null,
71
+ durationHistory: planningFacts.durationHistory,
56
72
  orderedCases,
57
- placementPlan
73
+ placementPlan,
74
+ workerCount
58
75
  };
59
76
  }
60
77
  //# sourceMappingURL=run-collected-planning.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"run-collected-planning.js","sourceRoot":"","sources":["../../../../source/run/run-collected-planning.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-collected-planning.js","sourceRoot":"","sources":["../../../../source/run/run-collected-planning.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,7 @@ async function createResolvedRunFromCollectedPlan(input) {
17
17
  if (!input.allowEmptySelection) {
18
18
  assertCollectedRunPlanHasCases(input.collectedPlan);
19
19
  }
20
- const { durationHistory, orderedCases, placementPlan } = await createCollectedExecutionPlan(input);
20
+ const { durationHistory, orderedCases, placementPlan, workerCount } = await createCollectedExecutionPlan(input);
21
21
  const plannedCollectedPlan = collectedRunPlanFromEntries(input.collectedPlan, orderedCases);
22
22
  const facts = freezeValue(createRunFacts({
23
23
  cases: collectedRunCaseFactsFromEntries(orderedCases, fileSetForDiscoveredFiles(input.files)),
@@ -27,7 +27,8 @@ async function createResolvedRunFromCollectedPlan(input) {
27
27
  engine: input.engine,
28
28
  placementPlan,
29
29
  projectRoot: input.projectRoot,
30
- request: input.request
30
+ request: input.request,
31
+ workerCount
31
32
  }));
32
33
  return freezeValue({
33
34
  collectionRunnerErrors: input.collectionRunnerErrors,
@@ -1 +1 @@
1
- {"version":3,"file":"run-collected-resolution.js","sourceRoot":"","sources":["../../../../source/run/run-collected-resolution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-collected-resolution.js","sourceRoot":"","sources":["../../../../source/run/run-collected-resolution.ts"],"names":[],"mappings":"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"}
@@ -83,11 +83,11 @@ async function reportCollectionResultWithDelivery(reporterDelivery, result) {
83
83
  return await throwWithReporterCleanupErrors(error, reporterDelivery);
84
84
  }
85
85
  }
86
- export async function reportCollectionErrorResult(command, dependencies, result) {
86
+ export async function reportCollectionErrorResult(command, dependencies, result, timing = null) {
87
87
  const profile = selectedProfile(command.request, command.config);
88
88
  const reporters = resolveRunReporters(profile, command.config.reporters);
89
89
  const reporterDelivery = await dependencies.reporterDispatcher.createDelivery(reporters, command.config.outputRenderer);
90
- const timedResult = resultWithTimingCollection(resolveTimingCollection(command.request, profile), result);
90
+ const timedResult = resultWithTimingCollection(resolveTimingCollection(command.request, profile), result, timing);
91
91
  return await reportCollectionResultWithDelivery(reporterDelivery, timedResult);
92
92
  }
93
93
  //# sourceMappingURL=run-collection-error-result.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"run-collection-error-result.js","sourceRoot":"","sources":["../../../../source/run/run-collection-error-result.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-collection-error-result.js","sourceRoot":"","sources":["../../../../source/run/run-collection-error-result.ts"],"names":[],"mappings":"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"}