@overkill-dev/run 0.0.57 → 0.0.59

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 (206) hide show
  1. package/engine/case-execution.d.ts +2 -2
  2. package/engine/case-execution.d.ts.map +1 -1
  3. package/engine/case-execution.js +3 -3
  4. package/engine/case-execution.js.map +1 -1
  5. package/engine/engine.d.ts +2 -2
  6. package/engine/engine.d.ts.map +1 -1
  7. package/engine/execution-supervision.d.ts +3 -3
  8. package/engine/execution-supervision.d.ts.map +1 -1
  9. package/engine/execution-supervision.js +4 -4
  10. package/engine/execution-supervision.js.map +1 -1
  11. package/engine/execution-test-plan-cases.js +4 -4
  12. package/engine/execution-test-plan-cases.js.map +1 -1
  13. package/engine/execution.d.ts +2 -2
  14. package/engine/execution.d.ts.map +1 -1
  15. package/engine/execution.js +2 -2
  16. package/engine/execution.js.map +1 -1
  17. package/engine/reporter-dispatcher.d.ts +2 -2
  18. package/engine/reporter-dispatcher.d.ts.map +1 -1
  19. package/engine/run-timings.d.ts +7 -0
  20. package/engine/run-timings.d.ts.map +1 -1
  21. package/engine/run-timings.js +1 -0
  22. package/engine/run-timings.js.map +1 -1
  23. package/engine/test-body-resource-attachment.d.ts +15 -0
  24. package/engine/test-body-resource-attachment.d.ts.map +1 -1
  25. package/engine/test-body-resource-attachment.js +16 -0
  26. package/engine/test-body-resource-attachment.js.map +1 -1
  27. package/package.json +9 -1
  28. package/packages/engine/engine.entry-point.d.ts +2 -2
  29. package/packages/engine/engine.entry-point.d.ts.map +1 -1
  30. package/packages/engine/engine.entry-point.js +2 -2
  31. package/packages/engine/engine.entry-point.js.map +1 -1
  32. package/packages/reporter-line/reporter-line.entry-point.js +5 -0
  33. package/packages/reporter-line/reporter-line.entry-point.js.map +1 -1
  34. package/packages/run/run.entry-point.d.ts +1 -1
  35. package/packages/run/run.entry-point.d.ts.map +1 -1
  36. package/packages/run/run.entry-point.js +2 -2
  37. package/packages/run/run.entry-point.js.map +1 -1
  38. package/readme.md +15 -2
  39. package/reporters/human-reporter-rendering.js +1 -1
  40. package/reporters/human-reporter-rendering.js.map +1 -1
  41. package/reporters/line-reporter.js +5 -2
  42. package/reporters/line-reporter.js.map +1 -1
  43. package/reporters/progress-reporter.js +6 -0
  44. package/reporters/progress-reporter.js.map +1 -0
  45. package/reporters/run-summary-rendering.js +80 -0
  46. package/reporters/run-summary-rendering.js.map +1 -0
  47. package/reporters/tree-reporter.js +111 -0
  48. package/reporters/tree-reporter.js.map +1 -0
  49. package/resources/resource-definition-brand.d.ts +2 -0
  50. package/resources/resource-definition-brand.d.ts.map +1 -0
  51. package/resources/resource-definition-brand.js +2 -0
  52. package/resources/resource-definition-brand.js.map +1 -0
  53. package/resources/resource-definition-shape.d.ts +3 -0
  54. package/resources/resource-definition-shape.d.ts.map +1 -1
  55. package/resources/resource-definition-types.d.ts +104 -0
  56. package/resources/resource-definition-types.d.ts.map +1 -0
  57. package/resources/resource-definition.js +52 -0
  58. package/resources/resource-definition.js.map +1 -0
  59. package/resources/resource-graph.d.ts +3 -3
  60. package/resources/resource-graph.d.ts.map +1 -1
  61. package/resources/resource-graph.js.map +1 -1
  62. package/resources/resource-scenario-binding.d.ts +37 -0
  63. package/resources/resource-scenario-binding.d.ts.map +1 -0
  64. package/resources/resource-scenario-binding.js +99 -0
  65. package/resources/resource-scenario-binding.js.map +1 -0
  66. package/resources/resource-scenario.d.ts +31 -0
  67. package/resources/resource-scenario.d.ts.map +1 -0
  68. package/resources/resource-scenario.js +68 -0
  69. package/resources/resource-scenario.js.map +1 -0
  70. package/resources/resource-session.d.ts +3 -2
  71. package/resources/resource-session.d.ts.map +1 -1
  72. package/resources/resources.d.ts +46 -76
  73. package/resources/resources.d.ts.map +1 -1
  74. package/resources/resources.js +90 -10
  75. package/resources/resources.js.map +1 -1
  76. package/resources/runtime-definition.d.ts +11 -2
  77. package/resources/runtime-definition.d.ts.map +1 -1
  78. package/resources/runtime-definition.js +66 -0
  79. package/resources/runtime-definition.js.map +1 -1
  80. package/resources/runtime-matrix-definition.d.ts +25 -6
  81. package/resources/runtime-matrix-definition.d.ts.map +1 -1
  82. package/resources/runtime-matrix-definition.js +226 -4
  83. package/resources/runtime-matrix-definition.js.map +1 -1
  84. package/run/default-run-engine.js +2 -2
  85. package/run/default-run-engine.js.map +1 -1
  86. package/run/placement-trace.d.ts +83 -40
  87. package/run/placement-trace.d.ts.map +1 -1
  88. package/run/placement-trace.js +80 -0
  89. package/run/placement-trace.js.map +1 -1
  90. package/run/resource-lifecycle-boundaries.js +122 -13
  91. package/run/resource-lifecycle-boundaries.js.map +1 -1
  92. package/run/resource-lifecycle-cache-identity.js +65 -0
  93. package/run/resource-lifecycle-cache-identity.js.map +1 -0
  94. package/run/resource-lifecycle-composition.d.ts +2 -0
  95. package/run/resource-lifecycle-composition.d.ts.map +1 -1
  96. package/run/resource-lifecycle-composition.js +48 -11
  97. package/run/resource-lifecycle-composition.js.map +1 -1
  98. package/run/resource-lifecycle-session-acquirer.js +11 -6
  99. package/run/resource-lifecycle-session-acquirer.js.map +1 -1
  100. package/run/resource-lifecycle-startup-budget.js +1 -0
  101. package/run/resource-lifecycle-startup-budget.js.map +1 -1
  102. package/run/resource-lifecycle-timing.js +3 -1
  103. package/run/resource-lifecycle-timing.js.map +1 -1
  104. package/run/resource-lifecycle.js +4 -3
  105. package/run/resource-lifecycle.js.map +1 -1
  106. package/run/resource-usage.d.ts +3 -3
  107. package/run/resource-usage.d.ts.map +1 -1
  108. package/run/resource-usage.js +1 -1
  109. package/run/resource-usage.js.map +1 -1
  110. package/run/run-collected-planning.js +12 -1
  111. package/run/run-collected-planning.js.map +1 -1
  112. package/run/run-collected-resolution.js +2 -1
  113. package/run/run-collected-resolution.js.map +1 -1
  114. package/run/run-empty-shard.js +3 -3
  115. package/run/run-empty-shard.js.map +1 -1
  116. package/run/run-facts.js +1 -1
  117. package/run/run-facts.js.map +1 -1
  118. package/run/run-if-main.d.ts +3 -3
  119. package/run/run-if-main.d.ts.map +1 -1
  120. package/run/run-if-main.js +2 -2
  121. package/run/run-if-main.js.map +1 -1
  122. package/run/run-isolated-process.js +4 -4
  123. package/run/run-isolated-process.js.map +1 -1
  124. package/run/run-local-execution.js +1 -1
  125. package/run/run-local-execution.js.map +1 -1
  126. package/run/run-local-resolution.js +4 -2
  127. package/run/run-local-resolution.js.map +1 -1
  128. package/run/run-orchestrator-dependencies.d.ts +2 -2
  129. package/run/run-orchestrator-dependencies.d.ts.map +1 -1
  130. package/run/run-orchestrator.js +2 -2
  131. package/run/run-orchestrator.js.map +1 -1
  132. package/run/run-support.js +1 -1
  133. package/run/run-support.js.map +1 -1
  134. package/run/run-timing-collection.d.ts +2 -2
  135. package/run/run-timing-collection.d.ts.map +1 -1
  136. package/run/run-timing-collection.js +28 -22
  137. package/run/run-timing-collection.js.map +1 -1
  138. package/run/supervised-child-process.d.ts +2 -2
  139. package/run/supervised-child-process.d.ts.map +1 -1
  140. package/run/supervised-child-process.js +1 -1
  141. package/run/supervised-child-process.js.map +1 -1
  142. package/run/supervised-child.entry-point.js +2 -2
  143. package/run/supervised-child.entry-point.js.map +1 -1
  144. package/run/supervised-child.js +4 -4
  145. package/run/supervised-child.js.map +1 -1
  146. package/run/supervised-protocol.js.map +1 -1
  147. package/run/supervised-run-collection.js +3 -3
  148. package/run/supervised-run-collection.js.map +1 -1
  149. package/run/supervised-run-runtime.js +5 -5
  150. package/run/supervised-run-runtime.js.map +1 -1
  151. package/run/supervised-run.js +8 -8
  152. package/run/supervised-run.js.map +1 -1
  153. package/run/work-unit-planning.js +4 -2
  154. package/run/work-unit-planning.js.map +1 -1
  155. package/run/work-unit-resource-constraints.js +17 -0
  156. package/run/work-unit-resource-constraints.js.map +1 -1
  157. package/run/worker-pool-collection.js +2 -2
  158. package/run/worker-pool-collection.js.map +1 -1
  159. package/run/worker-pool-compatible-batching.js +0 -10
  160. package/run/worker-pool-compatible-batching.js.map +1 -1
  161. package/run/worker-pool-dispatch-state.js +2 -4
  162. package/run/worker-pool-dispatch-state.js.map +1 -1
  163. package/run/worker-pool-execution.js +37 -36
  164. package/run/worker-pool-execution.js.map +1 -1
  165. package/run/worker-pool-hedge-dispatch.js +1 -1
  166. package/run/worker-pool-hedge-dispatch.js.map +1 -1
  167. package/run/worker-pool-hedged-arbitration.js +31 -20
  168. package/run/worker-pool-hedged-arbitration.js.map +1 -1
  169. package/run/worker-pool-host.entry-point.js +2 -2
  170. package/run/worker-pool-host.entry-point.js.map +1 -1
  171. package/run/worker-pool-lanes.js +7 -3
  172. package/run/worker-pool-lanes.js.map +1 -1
  173. package/run/worker-pool-lease-selection.js.map +1 -1
  174. package/run/worker-pool-output.js +1 -1
  175. package/run/worker-pool-output.js.map +1 -1
  176. package/run/worker-pool-pending-splitting.js +4 -2
  177. package/run/worker-pool-pending-splitting.js.map +1 -1
  178. package/run/worker-pool-resource-tracking.js +1 -1
  179. package/run/worker-pool-resource-tracking.js.map +1 -1
  180. package/run/worker-pool-results.js +9 -6
  181. package/run/worker-pool-results.js.map +1 -1
  182. package/run/worker-pool-run.js +12 -8
  183. package/run/worker-pool-run.js.map +1 -1
  184. package/run/worker-pool-runtime.js +28 -13
  185. package/run/worker-pool-runtime.js.map +1 -1
  186. package/run/worker-pool-static-dispatcher.js +18 -8
  187. package/run/worker-pool-static-dispatcher.js.map +1 -1
  188. package/run/worker-pool-task-events.js +83 -25
  189. package/run/worker-pool-task-events.js.map +1 -1
  190. package/run/worker-pool-work-dispatcher.js +21 -13
  191. package/run/worker-pool-work-dispatcher.js.map +1 -1
  192. package/run/worker-pool-worker-resources.js +2 -2
  193. package/run/worker-pool-worker-resources.js.map +1 -1
  194. package/run/worker-pool-worker-timing.js +14 -7
  195. package/run/worker-pool-worker-timing.js.map +1 -1
  196. package/run/worker-pool-worker.js +20 -12
  197. package/run/worker-pool-worker.js.map +1 -1
  198. package/sbom.cdx.json +38 -4
  199. package/clock/overkill-clock.d.ts +0 -30
  200. package/clock/overkill-clock.d.ts.map +0 -1
  201. package/clock/overkill-clock.js +0 -53
  202. package/clock/overkill-clock.js.map +0 -1
  203. package/reporters/run-fact-summary.js +0 -20
  204. package/reporters/run-fact-summary.js.map +0 -1
  205. package/reporters/run-timing-summary.js +0 -11
  206. package/reporters/run-timing-summary.js.map +0 -1
@@ -1,4 +1,5 @@
1
- import { workIdentityKey } from "../engine/identity.js";
1
+ import { runtimeIdentityKey, workIdentityKey } from "../engine/identity.js";
2
+ import { resourceAcquisitionCacheIdentity, resourceDescriptorCacheIdentityNode } from "./resource-lifecycle-cache-identity.js";
2
3
  const resourceScopeValues = [
3
4
  'per-case',
4
5
  'per-file',
@@ -19,28 +20,136 @@ function resourceBoundaryForCase(resourceName, scope, testCase) {
19
20
  ? { key: `worker:${resourceName}`, scope }
20
21
  : { key: `case:${workIdentityKey(testCase.workId)}:${resourceName}`, scope };
21
22
  }
22
- function resourceBoundary(resourceName, scope, testCase) {
23
+ function resourceNameWithAcquisitionIdentity(resourceName, acquisitionIdentity) {
24
+ return acquisitionIdentity === ''
25
+ ? resourceName
26
+ : `${resourceName}:acquisition:${acquisitionIdentity}`;
27
+ }
28
+ function resourceBoundary(resourceName, scope, testCase, acquisitionIdentity) {
29
+ const identifiedResourceName = resourceNameWithAcquisitionIdentity(resourceName, acquisitionIdentity);
23
30
  const file = testCase.id.file ?? '<no-file>';
24
31
  if (scope === 'per-run') {
25
- return { key: `run:${resourceName}`, scope };
32
+ return { key: `run:${identifiedResourceName}`, scope };
26
33
  }
27
34
  if (scope === 'per-file') {
28
- return { key: `file:${file}:${resourceName}`, scope };
35
+ return { key: `file:${file}:${identifiedResourceName}`, scope };
29
36
  }
30
37
  if (scope === 'per-suite') {
31
- return { key: `suite:${file}:${suiteBoundary(testCase)}:${resourceName}`, scope };
38
+ return { key: `suite:${file}:${suiteBoundary(testCase)}:${identifiedResourceName}`, scope };
32
39
  }
33
- return resourceBoundaryForCase(resourceName, scope, testCase);
40
+ return resourceBoundaryForCase(identifiedResourceName, scope, testCase);
34
41
  }
35
- function caseResourceBoundaries(testCase) {
36
- const boundaryEntries = testCase.resourceAttachments.resourceGraph.flatMap(function toBoundaryEntry(resource) {
42
+ function selectedRuntimeId(testCase, runtime) {
43
+ const selected = testCase.workId.runtimes.find(function runtimeNameMatches(candidate) {
44
+ return candidate.name === runtime.name;
45
+ });
46
+ if (selected !== undefined) {
47
+ return selected;
48
+ }
49
+ if (runtime.kind === 'runtime-matrix') {
50
+ const variant = runtime.variants[0];
51
+ if (variant === undefined) {
52
+ throw new TypeError(`Runtime matrix "${runtime.name}" has no selected variant.`);
53
+ }
54
+ return { dimensions: variant.runtime.dimensions, name: runtime.name, variantId: variant.id };
55
+ }
56
+ return { dimensions: runtime.dimensions, name: runtime.name, variantId: null };
57
+ }
58
+ function selectedLeafRuntime(testCase, runtime) {
59
+ if (runtime.kind !== 'runtime-matrix') {
60
+ return runtime;
61
+ }
62
+ const selected = selectedRuntimeId(testCase, runtime);
63
+ const variant = runtime.variants.find(function variantMatches(candidate) {
64
+ return candidate.id === selected.variantId;
65
+ });
66
+ if (variant === undefined) {
67
+ throw new TypeError(`Runtime matrix "${runtime.name}" has no selected variant.`);
68
+ }
69
+ return variant.runtime;
70
+ }
71
+ function scenarioBindingsByResource(runtime) {
72
+ const bindings = new Map();
73
+ for (const binding of runtime.scenarioBindings) {
74
+ const resourceBindings = bindings.get(binding.owner.resourceName) ??
75
+ new Map();
76
+ resourceBindings.set(binding.name, binding);
77
+ bindings.set(binding.owner.resourceName, resourceBindings);
78
+ }
79
+ return bindings;
80
+ }
81
+ function resourceSummaryCacheIdentityNode(resource, resourcesByName, bindingsByResource) {
82
+ const bindings = bindingsByResource.get(resource.name) ??
83
+ new Map();
84
+ return {
85
+ dependencies: resource.dependencies.flatMap(function dependencyNode(dependencyName) {
86
+ const dependency = resourcesByName.get(dependencyName);
87
+ return dependency === undefined
88
+ ? []
89
+ : [{
90
+ key: dependency.name,
91
+ resource: resourceSummaryCacheIdentityNode(dependency, resourcesByName, bindingsByResource)
92
+ }];
93
+ }),
94
+ scenarios: resource.scenarios.map(function scenarioBinding(scenario) {
95
+ return {
96
+ name: scenario.name,
97
+ timing: scenario.timing,
98
+ value: bindings.get(scenario.name)?.value ?? scenario.default
99
+ };
100
+ })
101
+ };
102
+ }
103
+ function resourceGraphBoundaries(testCase, rootResourceNames, resourceName, bindingsByResource) {
104
+ const resourcesByName = new Map(testCase.resourceAttachments.resourceGraph.map(function resourceEntry(resource) {
105
+ return [resource.name, resource];
106
+ }));
107
+ const visited = new Set();
108
+ const boundaries = [];
109
+ function recordBoundary(resource) {
37
110
  if (!isResourceScope(resource.scope)) {
38
- return [];
111
+ return;
112
+ }
113
+ const identity = resourceAcquisitionCacheIdentity(resourceSummaryCacheIdentityNode(resource, resourcesByName, bindingsByResource));
114
+ boundaries.push(resourceBoundary(resourceName(resource), resource.scope, testCase, identity));
115
+ }
116
+ function visit(name) {
117
+ if (visited.has(name)) {
118
+ return;
119
+ }
120
+ const resource = resourcesByName.get(name);
121
+ if (resource === undefined) {
122
+ return;
39
123
  }
40
- const boundary = resourceBoundary(resource.name, resource.scope, testCase);
41
- return [[boundary.key, boundary]];
124
+ visited.add(name);
125
+ for (const dependencyName of resource.dependencies) {
126
+ visit(dependencyName);
127
+ }
128
+ recordBoundary(resource);
129
+ }
130
+ for (const rootResourceName of rootResourceNames) {
131
+ visit(rootResourceName);
132
+ }
133
+ return boundaries;
134
+ }
135
+ function caseResourceBoundaries(testCase) {
136
+ const directBoundaries = resourceGraphBoundaries(testCase, testCase.resourceAttachments.directResources.map(function directResourceName(resource) {
137
+ return resource.resourceName;
138
+ }), function directResourceName(resource) {
139
+ return resource.name;
140
+ }, new Map());
141
+ const runtimeBoundaries = testCase.resourceAttachments.runtimeGraphs.flatMap(function runtimeResources(runtime) {
142
+ const runtimeKey = runtimeIdentityKey(selectedRuntimeId(testCase, runtime));
143
+ const selectedRuntime = selectedLeafRuntime(testCase, runtime);
144
+ return resourceGraphBoundaries(testCase, selectedRuntime.resources.map(function runtimeResourceName(resource) {
145
+ return resource.resourceName;
146
+ }), function scopedResourceName(resource) {
147
+ return `${resource.name}@${runtimeKey}`;
148
+ }, scenarioBindingsByResource(selectedRuntime));
42
149
  });
43
- const boundaries = new Map(boundaryEntries);
150
+ const boundaries = new Map([...directBoundaries, ...runtimeBoundaries].map(function boundaryEntry(boundary) {
151
+ return [boundary.key, boundary];
152
+ }));
44
153
  return Array.from(boundaries.values());
45
154
  }
46
155
  function initialBoundaryUseCounts(testCases) {
@@ -68,6 +177,6 @@ export function caseResourceBoundaryKeys(testCase, scopes) {
68
177
  });
69
178
  }
70
179
  export function boundaryFor(resource, testCase) {
71
- return resourceBoundary(resource.name, resource.scope, testCase);
180
+ return resourceBoundary(resource.name, resource.scope, testCase, resourceAcquisitionCacheIdentity(resourceDescriptorCacheIdentityNode(resource)));
72
181
  }
73
182
  //# sourceMappingURL=resource-lifecycle-boundaries.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resource-lifecycle-boundaries.js","sourceRoot":"","sources":["../../../../source/run/resource-lifecycle-boundaries.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resource-lifecycle-boundaries.js","sourceRoot":"","sources":["../../../../source/run/resource-lifecycle-boundaries.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ import { resolvedResourceScenarioBindings } from "../resources/resources.js";
2
+ import { sourceResourceDefinition } from "../resources/resource-scenario-binding.js";
3
+ function compareText(left, right) {
4
+ return left.localeCompare(right);
5
+ }
6
+ function scenarioIdentity(node, timing) {
7
+ return node
8
+ .scenarios
9
+ .filter(function timingMatches(binding) {
10
+ return binding.timing === timing;
11
+ })
12
+ .toSorted(function compareBindings(left, right) {
13
+ return compareText(left.name, right.name);
14
+ })
15
+ .map(function toIdentity(binding) {
16
+ return [binding.name, binding.value];
17
+ });
18
+ }
19
+ function resourceIdentities(node) {
20
+ const scenarios = scenarioIdentity(node, 'acquire');
21
+ const dependencies = node
22
+ .dependencies
23
+ .toSorted(function compareDependencies(left, right) {
24
+ return compareText(left.key, right.key);
25
+ })
26
+ .flatMap(function dependencyIdentity(dependency) {
27
+ const identity = resourceIdentities(dependency.resource).handle;
28
+ return identity === null ? [] : [[dependency.key, identity]];
29
+ });
30
+ const acquisition = scenarios.length === 0 && dependencies.length === 0
31
+ ? null
32
+ : { dependencies, scenarios };
33
+ const routedScenarios = scenarioIdentity(node, 'request-routed');
34
+ const handle = acquisition === null && routedScenarios.length === 0
35
+ ? null
36
+ : { acquisition, scenarios: routedScenarios };
37
+ return { acquisition, handle };
38
+ }
39
+ export function resourceAcquisitionCacheIdentity(node) {
40
+ const identity = resourceIdentities(node).acquisition;
41
+ return identity === null ? '' : JSON.stringify(identity);
42
+ }
43
+ export function resourceHandleCacheIdentity(node) {
44
+ const identity = resourceIdentities(node).handle;
45
+ return identity === null ? '' : JSON.stringify(identity);
46
+ }
47
+ export function resourceDescriptorCacheIdentityNode(resource) {
48
+ const bindings = resolvedResourceScenarioBindings(resource);
49
+ return {
50
+ dependencies: Object.values(resource.dependencies).map(function dependencyNode(dependency) {
51
+ return {
52
+ key: sourceResourceDefinition(dependency).name,
53
+ resource: resourceDescriptorCacheIdentityNode(dependency)
54
+ };
55
+ }),
56
+ scenarios: Object.entries(resource.scenarios).map(function scenarioBinding([name, slot]) {
57
+ return {
58
+ name,
59
+ timing: slot.timing,
60
+ value: bindings[name] ?? slot.default
61
+ };
62
+ })
63
+ };
64
+ }
65
+ //# sourceMappingURL=resource-lifecycle-cache-identity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-lifecycle-cache-identity.js","sourceRoot":"","sources":["../../../../source/run/resource-lifecycle-cache-identity.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gCAAgC,EAEnC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AA8BrF,SAAS,WAAW,CAAC,IAAY,EAAE,KAAa;IAC5C,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,gBAAgB,CACrB,IAA+B,EAC/B,MAA8C;IAE9C,OAAO,IAAI;SACN,SAAS;SACT,MAAM,CAAC,SAAS,aAAa,CAAC,OAAO;QAClC,OAAO,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC;IACrC,CAAC,CAAC;SACD,QAAQ,CAAC,SAAS,eAAe,CAAC,IAAI,EAAE,KAAK;QAC1C,OAAO,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC,CAAC;SACD,GAAG,CAAC,SAAS,UAAU,CAAC,OAAO;QAC5B,OAAO,CAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAW,CAAC;IACpD,CAAC,CAAC,CAAC;AACX,CAAC;AAED,SAAS,kBAAkB,CAAC,IAA+B;IACvD,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACpD,MAAM,YAAY,GAAG,IAAI;SACpB,YAAY;SACZ,QAAQ,CAAC,SAAS,mBAAmB,CAAC,IAAI,EAAE,KAAK;QAC9C,OAAO,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAC5C,CAAC,CAAC;SACD,OAAO,CAAC,SAAS,kBAAkB,CAAC,UAAU;QAC3C,MAAM,QAAQ,GAAG,kBAAkB,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC;QAEhE,OAAO,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAE,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAW,CAAE,CAAC;IAC9E,CAAC,CAAC,CAAC;IACP,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QACnE,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;IAClC,MAAM,eAAe,GAAG,gBAAgB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IACjE,MAAM,MAAM,GAAG,WAAW,KAAK,IAAI,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC;QAC/D,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC;IAElD,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,gCAAgC,CAAC,IAA+B;IAC5E,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;IAEtD,OAAO,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,IAA+B;IACvE,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;IAEjD,OAAO,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,mCAAmC,CAAC,QAA+B;IAC/E,MAAM,QAAQ,GAAG,gCAAgC,CAAC,QAAQ,CAAC,CAAC;IAE5D,OAAO;QACH,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,SAAS,cAAc,CAAC,UAAU;YACrF,OAAO;gBACH,GAAG,EAAE,wBAAwB,CAAC,UAAU,CAAC,CAAC,IAAI;gBAC9C,QAAQ,EAAE,mCAAmC,CAAC,UAAU,CAAC;aAC5D,CAAC;QACN,CAAC,CAAC;QACF,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,SAAS,eAAe,CAAC,CAAE,IAAI,EAAE,IAAI,CAAE;YACrF,OAAO;gBACH,IAAI;gBACJ,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO;aACxC,CAAC;QACN,CAAC,CAAC;KACL,CAAC;AACN,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { type RuntimeGraph, type RuntimeGraphContext, type AnyResourceDefinition, type ResourceContext, type RuntimeResourceMap as ResourceMap } from '../resources/resources.ts';
2
+ import { type ResolvedResourceScenarioBindings } from '../resources/resource-scenario-binding.ts';
2
3
  import { type WorkId } from '../engine/identity.ts';
3
4
  import type { ResourceSession } from '../resources/resource-session.ts';
4
5
  type DisposalContext = {
@@ -26,6 +27,7 @@ export type ResourceEntry = {
26
27
  readonly key: string;
27
28
  readonly resource: AnyResourceDefinition;
28
29
  };
30
+ export declare function lifecycleScenarioBindings(resource: AnyResourceDefinition): ResolvedResourceScenarioBindings;
29
31
  export declare function directResourceEntries(steps: readonly ResourceWrapperStep[]): readonly ResourceEntry[];
30
32
  export declare function stepRuntimeGraphs(steps: readonly ResourceWrapperStep[]): readonly RuntimeGraph[];
31
33
  export declare function resourceMapFromEntries(resourceEntries: readonly ResourceEntry[]): ResourceMap;
@@ -1 +1 @@
1
- {"version":3,"file":"resource-lifecycle-composition.d.ts","sourceRoot":"","sources":["../../../../source/run/resource-lifecycle-composition.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EAIpB,KAAK,kBAAkB,IAAI,WAAW,EACzC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAsB,KAAK,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAOxE,KAAK,eAAe,GAAG;IACnB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC5B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CACpC,CAAC;AAEF,KAAK,4BAA4B,GAAG;IAChC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC;CACnC,CAAC;AAEF,KAAK,0BAA0B,GAAG;IAC9B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,4BAA4B,GAAG,0BAA0B,CAAC;AAQ5F,MAAM,MAAM,uBAAuB,GAAG;IAClC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC;IACvD,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,QAAQ,CAAC,eAAe,EAAE,WAAW,CAAC,YAAY,EAAE,mBAAmB,CAAC,YAAY,CAAC,CAAC,CAAC;CAC1F,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;CAC5C,CAAC;AA6FF,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,SAAS,mBAAmB,EAAE,GAAG,SAAS,aAAa,EAAE,CAQrG;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,mBAAmB,EAAE,GAAG,SAAS,YAAY,EAAE,CAIhG;AAED,wBAAgB,sBAAsB,CAAC,eAAe,EAAE,SAAS,aAAa,EAAE,GAAG,WAAW,CAQ7F;AA0BD,wBAAgB,sBAAsB,CAAC,SAAS,SAAS,WAAW,EAChE,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,eAAe,CAAC,WAAW,CAAC,GACtC,eAAe,CAAC,SAAS,CAAC,CAc5B;AAsBD,wBAAgB,qBAAqB,CAAC,KAAK,SAAS,YAAY,EAC5D,OAAO,EAAE,KAAK,EACd,OAAO,EAAE,uBAAuB,GACjC,mBAAmB,CAAC,KAAK,CAAC,CAAC;AA6D9B,wBAAgB,uBAAuB,CACnC,KAAK,EAAE,SAAS,mBAAmB,EAAE,EACrC,MAAM,GAAE,MAAM,GAAG,IAAW,GAC7B,WAAW,CAmBb;AAqCD,wBAAgB,uBAAuB,CACnC,eAAe,EAAE,WAAW,EAC5B,QAAQ,EAAE,SAAS,YAAY,EAAE,EACjC,OAAO,EAAE,eAAe,CAAC,WAAW,CAAC,EACrC,MAAM,GAAE,MAAM,GAAG,IAAW,GAC7B,uBAAuB,CAazB;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,mBAAmB,EAAE,GAAG,iBAAiB,CAc1F"}
1
+ {"version":3,"file":"resource-lifecycle-composition.d.ts","sourceRoot":"","sources":["../../../../source/run/resource-lifecycle-composition.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EAIpB,KAAK,kBAAkB,IAAI,WAAW,EACzC,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAGH,KAAK,gCAAgC,EACxC,MAAM,2CAA2C,CAAC;AAEnD,OAAO,EAAsB,KAAK,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAWxE,KAAK,eAAe,GAAG;IACnB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC5B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CACpC,CAAC;AAEF,KAAK,4BAA4B,GAAG;IAChC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC;CACnC,CAAC;AAEF,KAAK,0BAA0B,GAAG;IAC9B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,4BAA4B,GAAG,0BAA0B,CAAC;AAQ5F,MAAM,MAAM,uBAAuB,GAAG;IAClC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC;IACvD,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,QAAQ,CAAC,eAAe,EAAE,WAAW,CAAC,YAAY,EAAE,mBAAmB,CAAC,YAAY,CAAC,CAAC,CAAC;CAC1F,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;CAC5C,CAAC;AAEF,wBAAgB,yBAAyB,CACrC,QAAQ,EAAE,qBAAqB,GAChC,gCAAgC,CAElC;AA6FD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,SAAS,mBAAmB,EAAE,GAAG,SAAS,aAAa,EAAE,CAQrG;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,mBAAmB,EAAE,GAAG,SAAS,YAAY,EAAE,CAIhG;AAED,wBAAgB,sBAAsB,CAAC,eAAe,EAAE,SAAS,aAAa,EAAE,GAAG,WAAW,CAQ7F;AA0BD,wBAAgB,sBAAsB,CAAC,SAAS,SAAS,WAAW,EAChE,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,eAAe,CAAC,WAAW,CAAC,GACtC,eAAe,CAAC,SAAS,CAAC,CAc5B;AAsBD,wBAAgB,qBAAqB,CAAC,KAAK,SAAS,YAAY,EAC5D,OAAO,EAAE,KAAK,EACd,OAAO,EAAE,uBAAuB,GACjC,mBAAmB,CAAC,KAAK,CAAC,CAAC;AA0H9B,wBAAgB,uBAAuB,CACnC,KAAK,EAAE,SAAS,mBAAmB,EAAE,EACrC,MAAM,GAAE,MAAM,GAAG,IAAW,GAC7B,WAAW,CAqBb;AAqCD,wBAAgB,uBAAuB,CACnC,eAAe,EAAE,WAAW,EAC5B,QAAQ,EAAE,SAAS,YAAY,EAAE,EACjC,OAAO,EAAE,eAAe,CAAC,WAAW,CAAC,EACrC,MAAM,GAAE,MAAM,GAAG,IAAW,GAC7B,uBAAuB,CAazB;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,mBAAmB,EAAE,GAAG,iBAAiB,CAc1F"}
@@ -1,6 +1,13 @@
1
1
  import { runtimeGraphLeaves } from "../resources/resources.js";
2
+ import { resolvedRuntimeScenarioOwners } from "../resources/runtime-definition.js";
3
+ import { acquisitionResourceScenarioBindings, bindResourceScenarios } from "../resources/resource-scenario-binding.js";
4
+ import { defaultScenarioBindings } from "../resources/resource-scenario.js";
2
5
  import { runtimeIdentityKey } from "../engine/identity.js";
3
6
  import { resourceWrapperLifecycleError } from "./resource-lifecycle-error.js";
7
+ import { resourceHandleCacheIdentity } from "./resource-lifecycle-cache-identity.js";
8
+ export function lifecycleScenarioBindings(resource) {
9
+ return Object.freeze({ ...acquisitionResourceScenarioBindings(resource) });
10
+ }
4
11
  function entries(record) {
5
12
  return Object.entries(record);
6
13
  }
@@ -132,24 +139,53 @@ const scopedRuntimeResources = new WeakMap();
132
139
  function cacheScopedRuntimeResource(resource, runtimeKey, scoped, cachedResources) {
133
140
  scopedRuntimeResources.set(resource, new Map([...cachedResources, [runtimeKey, scoped]]));
134
141
  }
135
- function scopedRuntimeResource(resource, runtimeKey) {
142
+ function scopedRuntimeDependencies(resource, runtimeKey, bindingsByResource, bindDependency) {
143
+ return Object.freeze(Object.fromEntries(entries(resource.dependencies).map(function scopedDependency([key, dependency]) {
144
+ return [key, bindDependency(dependency, runtimeKey, bindingsByResource)];
145
+ })));
146
+ }
147
+ function resourceCacheIdentityNode(resource, bindingsByResource) {
148
+ const bindings = bindingsByResource.get(resource) ?? defaultScenarioBindings(resource.scenarios);
149
+ return {
150
+ dependencies: entries(resource.dependencies).map(function dependencyNode([, dependency]) {
151
+ return { key: dependency.name, resource: resourceCacheIdentityNode(dependency, bindingsByResource) };
152
+ }),
153
+ scenarios: Object.entries(resource.scenarios).map(function scenarioBinding([name, slot]) {
154
+ return {
155
+ name,
156
+ timing: slot.timing,
157
+ value: bindings[name] ?? slot.default
158
+ };
159
+ })
160
+ };
161
+ }
162
+ function scopedRuntimeResource(resource, runtimeKey, bindingsByResource) {
136
163
  const cachedResources = scopedRuntimeResources.get(resource) ?? new Map();
137
- const cached = cachedResources.get(runtimeKey);
164
+ const bindings = bindingsByResource.get(resource) ?? defaultScenarioBindings(resource.scenarios);
165
+ const scopedResourceKey = `${runtimeKey}:${resourceHandleCacheIdentity(resourceCacheIdentityNode(resource, bindingsByResource))}`;
166
+ const cached = cachedResources.get(scopedResourceKey);
138
167
  if (cached !== undefined) {
139
168
  return cached;
140
169
  }
141
- const dependencies = {};
142
- for (const [key, dependency] of entries(resource.dependencies)) {
143
- dependencies[key] = scopedRuntimeResource(dependency, runtimeKey);
144
- }
145
- const scoped = Object.freeze({
170
+ const scoped = bindResourceScenarios(Object.freeze({
146
171
  ...resource,
147
- dependencies: Object.freeze(dependencies),
172
+ dependencies: scopedRuntimeDependencies(resource, runtimeKey, bindingsByResource, scopedRuntimeResource),
148
173
  name: `${resource.name}@${runtimeKey}`
149
- });
150
- cacheScopedRuntimeResource(resource, runtimeKey, scoped, cachedResources);
174
+ }), bindings);
175
+ cacheScopedRuntimeResource(resource, scopedResourceKey, scoped, cachedResources);
151
176
  return scoped;
152
177
  }
178
+ function runtimeScenarioBindings(runtime) {
179
+ const mutableBindings = new Map();
180
+ for (const [name, owner] of resolvedRuntimeScenarioOwners(runtime)) {
181
+ const bindings = mutableBindings.get(owner.resource) ?? {};
182
+ bindings[name] = owner.value;
183
+ mutableBindings.set(owner.resource, bindings);
184
+ }
185
+ return new Map(Array.from(mutableBindings, function freezeBindings([resource, bindings]) {
186
+ return [resource, Object.freeze(bindings)];
187
+ }));
188
+ }
153
189
  export function combinedResourceEntries(steps, workId = null) {
154
190
  const resources = {};
155
191
  for (const entry of directResourceEntries(steps)) {
@@ -157,8 +193,9 @@ export function combinedResourceEntries(steps, workId = null) {
157
193
  }
158
194
  for (const runtime of resolvedRuntimeGraphs(steps, workId)) {
159
195
  const runtimeKey = runtimeIdentityKey(runtime.id);
196
+ const bindingsByResource = runtimeScenarioBindings(runtime.runtime);
160
197
  for (const [key, resource] of entries(runtime.runtime.resources)) {
161
- resources[combinedResourceKey('runtime', [runtimeKey, key])] = scopedRuntimeResource(resource, runtimeKey);
198
+ resources[combinedResourceKey('runtime', [runtimeKey, key])] = scopedRuntimeResource(resource, runtimeKey, bindingsByResource);
162
199
  }
163
200
  }
164
201
  return Object.freeze(resources);
@@ -1 +1 @@
1
- {"version":3,"file":"resource-lifecycle-composition.js","sourceRoot":"","sources":["../../../../source/run/resource-lifecycle-composition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resource-lifecycle-composition.js","sourceRoot":"","sources":["../../../../source/run/resource-lifecycle-composition.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { workIdentityKey } from "../engine/identity.js";
2
- import { resourceEntries } from "../resources/resource-graph.js";
2
+ import { acquisitionResourceScenarioBindings, exposeResourceHandle, sourceResourceDefinition } from "../resources/resource-scenario-binding.js";
3
3
  import { boundaryFor, initialBoundaryUseCountsFromRecords } from "./resource-lifecycle-boundaries.js";
4
4
  import { resourceWrapperLifecycleError } from "./resource-lifecycle-error.js";
5
5
  import { acquireResourceWithStartupBudget } from "./resource-lifecycle-startup-budget.js";
@@ -77,9 +77,13 @@ export function resourceProjectionRecordsFromStores(stores) {
77
77
  })
78
78
  };
79
79
  }
80
+ export function managedResourceHandle(record, resource) {
81
+ return exposeResourceHandle(resource, record.consumerHandle);
82
+ }
80
83
  function assertCompatibleResource(stores, boundary, resource) {
81
84
  const record = stores.existingRecord(boundary.key);
82
- if (record !== undefined && record.descriptor !== resource) {
85
+ if (record !== undefined &&
86
+ sourceResourceDefinition(record.descriptor) !== sourceResourceDefinition(resource)) {
83
87
  throw resourceWrapperLifecycleError(`Resource name "${resource.name}" is used by multiple descriptors in one lifecycle boundary.`, resource);
84
88
  }
85
89
  }
@@ -95,9 +99,9 @@ export function createManagedResourceAcquirer(stores, options) {
95
99
  };
96
100
  async function acquireDependencyContext(resource, testCase, signal) {
97
101
  const context = mutableDependencyContext();
98
- await Promise.all(resourceEntries(resource.dependencies).map(async function acquireDependency([key, dependency]) {
102
+ await Promise.all(Object.entries(resource.dependencies).map(async function acquireDependency([key, dependency]) {
99
103
  const record = await acquireResource(dependency, testCase, signal);
100
- context[key] = record.exposedHandle;
104
+ context[key] = managedResourceHandle(record, dependency);
101
105
  }));
102
106
  return Object.freeze(context);
103
107
  }
@@ -106,6 +110,7 @@ export function createManagedResourceAcquirer(stores, options) {
106
110
  const acquireHandle = async function acquireResourceHandle() {
107
111
  return await acquireResourceWithStartupBudget(resource, {
108
112
  dependencies: dependencyContext,
113
+ scenarios: acquisitionResourceScenarioBindings(resource),
109
114
  signal
110
115
  });
111
116
  };
@@ -121,7 +126,7 @@ export function createManagedResourceAcquirer(stores, options) {
121
126
  dependencyContext,
122
127
  descriptor: resource,
123
128
  external: false,
124
- exposedHandle: projectedHandle(resource, ownerHandle, dependencyContext),
129
+ consumerHandle: projectedHandle(resource, ownerHandle, dependencyContext),
125
130
  ownerHandle
126
131
  };
127
132
  stores.rememberRecord(boundary.key, record);
@@ -138,7 +143,7 @@ export function createManagedResourceAcquirer(stores, options) {
138
143
  dependencyContext,
139
144
  descriptor: resource,
140
145
  external: true,
141
- exposedHandle: deserializeProjectedHandle(resource, payload, dependencyContext),
146
+ consumerHandle: deserializeProjectedHandle(resource, payload, dependencyContext),
142
147
  ownerHandle: null
143
148
  };
144
149
  stores.rememberRecord(boundary.key, record);
@@ -1 +1 @@
1
- {"version":3,"file":"resource-lifecycle-session-acquirer.js","sourceRoot":"","sources":["../../../../source/run/resource-lifecycle-session-acquirer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resource-lifecycle-session-acquirer.js","sourceRoot":"","sources":["../../../../source/run/resource-lifecycle-session-acquirer.ts"],"names":[],"mappings":"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"}
@@ -68,6 +68,7 @@ export async function acquireResourceWithStartupBudget(resource, context) {
68
68
  return await Promise.race([
69
69
  callableResourceDefinition(resource).acquire({
70
70
  dependencies: context.dependencies,
71
+ scenarios: context.scenarios,
71
72
  signal: controller.signal
72
73
  }),
73
74
  timer.timeout
@@ -1 +1 @@
1
- {"version":3,"file":"resource-lifecycle-startup-budget.js","sourceRoot":"","sources":["../../../../source/run/resource-lifecycle-startup-budget.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resource-lifecycle-startup-budget.js","sourceRoot":"","sources":["../../../../source/run/resource-lifecycle-startup-budget.ts"],"names":[],"mappings":"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"}
@@ -33,6 +33,8 @@ function writeResourceTiming(options, completed) {
33
33
  kind: timingKind(completed.operation.phase),
34
34
  ...metadata,
35
35
  startOffsetMicroseconds: null,
36
+ startTimeUnixMicroseconds: Number(options.clock.monotonicTimeOriginUnixEpochMicroseconds) +
37
+ completed.startedAtMicroseconds,
36
38
  status: completed.status
37
39
  });
38
40
  }
@@ -46,7 +48,7 @@ function recordResourceTiming(options, completed) {
46
48
  }
47
49
  function currentTime(clock) {
48
50
  try {
49
- return clock.currentMonotonicMicroseconds;
51
+ return Number(clock.currentMonotonicMicroseconds);
50
52
  }
51
53
  catch {
52
54
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"resource-lifecycle-timing.js","sourceRoot":"","sources":["../../../../source/run/resource-lifecycle-timing.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AAyCvF,SAAS,UAAU,CAAC,KAAgD;IAChE,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,kBAAkB,CAAC;AACzE,CAAC;AAED,SAAS,kBAAkB,CACvB,KAAc,EACd,SAA2C;IAE3C,IAAI,6BAA6B,CAAC,KAAK,CAAC,EAAE,CAAC;QACvC,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,OAAO,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9D,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAa;IAC1C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,mBAAmB,CACxB,OAAuC,EACvC,SAA2C;IAE3C,MAAM,QAAQ,GAAG;QACb,KAAK,EAAE,IAAI;QACX,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,QAAQ,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ;QACtC,QAAQ,EAAE,OAAO,CAAC,QAAQ;KAC7B,CAAC;IAEF,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACnC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;YAClB,uBAAuB,EAAE,SAAS,CAAC,uBAAuB;YAC1D,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC;YAC3C,QAAQ;YACR,qBAAqB,EAAE,SAAS,CAAC,qBAAqB;YACtD,MAAM,EAAE,SAAS,CAAC,MAAM;SAC3B,CAAC,CAAC;IACP,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;YAChB,oBAAoB,EAAE,uBAAuB,CACzC,SAAS,CAAC,uBAAuB,GAAG,SAAS,CAAC,qBAAqB,CACtE;YACD,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC;YAC3C,GAAG,QAAQ;YACX,uBAAuB,EAAE,IAAI;YAC7B,MAAM,EAAE,SAAS,CAAC,MAAM;SAC3B,CAAC,CAAC;IACP,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CACzB,OAAuC,EACvC,SAA2C;IAE3C,IAAI,CAAC;QACD,mBAAmB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;IACT,CAAC;AACL,CAAC;AAED,SAAS,WAAW,CAAC,KAAoB;IACrC,IAAI,CAAC;QACD,OAAO,KAAK,CAAC,4BAA4B,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,IAAI,CAAC;IAChB,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CACzB,OAAuC,EACvC,SAA2C,EAC3C,qBAAoC,EACpC,MAAwB;IAExB,MAAM,uBAAuB,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAE3D,IAAI,qBAAqB,KAAK,IAAI,IAAI,uBAAuB,KAAK,IAAI,EAAE,CAAC;QACrE,oBAAoB,CAAC,OAAO,EAAE;YAC1B,uBAAuB;YACvB,SAAS;YACT,qBAAqB;YACrB,MAAM;SACT,CAAC,CAAC;IACP,CAAC;AACL,CAAC;AAED,KAAK,UAAU,wBAAwB,CACnC,OAAuC,EACvC,SAA2C,EAC3C,IAA0B;IAE1B,MAAM,qBAAqB,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAEzD,IAAI,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,IAAI,EAAE,CAAC;QAE3B,oBAAoB,CAAC,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,SAAS,CAAC,CAAC;QAE3E,OAAO,KAAK,CAAC;IACjB,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACtB,oBAAoB,CAAC,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,kBAAkB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;QACtG,MAAM,KAAK,CAAC;IAChB,CAAC;AACL,CAAC;AAED,MAAM,UAAU,6BAA6B,CACzC,OAAuC;IAEvC,OAAO;QACH,KAAK,CAAC,OAAO,CACT,SAA2C,EAC3C,IAA0B;YAE1B,OAAO,MAAM,wBAAwB,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QACpE,CAAC;KACJ,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"resource-lifecycle-timing.js","sourceRoot":"","sources":["../../../../source/run/resource-lifecycle-timing.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  import { assertResourceDependencyScopes, callableResourceDefinition, createResourceGraph } from "../resources/resource-graph.js";
2
- import { combinedResourceEntries, composedResourceSession, directResourceEntries, resourceMapFromEntries, stepRuntimeGraphs } from "./resource-lifecycle-composition.js";
2
+ import { combinedResourceEntries, composedResourceSession, directResourceEntries, lifecycleScenarioBindings, resourceMapFromEntries, stepRuntimeGraphs } from "./resource-lifecycle-composition.js";
3
3
  import { currentLifecycleCase, runWithLifecycleCase, runWithManagedLifecycle } from "./resource-lifecycle-state.js";
4
4
  import { resourceWrapperErrorFromUnknown, resourceWrapperLifecycleError } from "./resource-lifecycle-error.js";
5
5
  import { managedResourceSession } from "./resource-lifecycle-managed-session.js";
6
6
  import { caseResourceBoundaryKeys, resourceLifecycleBoundaryUseCounts, resourceScopes } from "./resource-lifecycle-boundaries.js";
7
- import { createManagedResourceAcquirer, createManagedStores, resourceProjectionRecordsFromStores } from "./resource-lifecycle-session-acquirer.js";
7
+ import { createManagedResourceAcquirer, createManagedStores, resourceProjectionRecordsFromStores, managedResourceHandle } from "./resource-lifecycle-session-acquirer.js";
8
8
  function currentRunningCase() {
9
9
  const testCase = currentLifecycleCase();
10
10
  if (testCase === null) {
@@ -28,6 +28,7 @@ async function disposeResourceRecord(record, signal, timing) {
28
28
  const disposeHandle = async function disposeResourceHandle() {
29
29
  await dispose(record.ownerHandle, {
30
30
  dependencies: record.dependencyContext,
31
+ scenarios: lifecycleScenarioBindings(record.descriptor),
31
32
  signal
32
33
  });
33
34
  };
@@ -80,7 +81,7 @@ async function managedResourceHandles(acquirer, graph, testCase, signal) {
80
81
  const handles = new Map();
81
82
  for (const node of graph.order) {
82
83
  const record = await acquirer.acquire(node.descriptor, testCase, signal);
83
- handles.set(node.descriptor, record.exposedHandle);
84
+ handles.set(node.descriptor, managedResourceHandle(record, node.descriptor));
84
85
  }
85
86
  return handles;
86
87
  }