@overkill-dev/run 0.0.51 → 0.0.52

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 (40) hide show
  1. package/package.json +2 -1
  2. package/packages/run/run.entry-point.d.ts +2 -1
  3. package/packages/run/run.entry-point.d.ts.map +1 -1
  4. package/readme.md +8 -0
  5. package/run/placement-trace.d.ts +44 -0
  6. package/run/placement-trace.d.ts.map +1 -0
  7. package/run/placement-trace.js +4 -0
  8. package/run/placement-trace.js.map +1 -0
  9. package/run/run-config-schema.d.ts +3 -0
  10. package/run/run-config-schema.d.ts.map +1 -1
  11. package/run/run-config-schema.js +5 -0
  12. package/run/run-config-schema.js.map +1 -1
  13. package/run/run-config.d.ts.map +1 -1
  14. package/run/run-config.js +4 -0
  15. package/run/run-config.js.map +1 -1
  16. package/run/run-facts.js +1 -0
  17. package/run/run-facts.js.map +1 -1
  18. package/run/run-support.js +1 -0
  19. package/run/run-support.js.map +1 -1
  20. package/run/run-types.d.ts +3 -31
  21. package/run/run-types.d.ts.map +1 -1
  22. package/run/run-types.js.map +1 -1
  23. package/run/worker-pool-dispatch-state.js +59 -0
  24. package/run/worker-pool-dispatch-state.js.map +1 -0
  25. package/run/worker-pool-execution.js +50 -132
  26. package/run/worker-pool-execution.js.map +1 -1
  27. package/run/worker-pool-host-process.js +1 -0
  28. package/run/worker-pool-host-process.js.map +1 -1
  29. package/run/worker-pool-host-protocol.js.map +1 -1
  30. package/run/worker-pool-pending-splitting.js +83 -0
  31. package/run/worker-pool-pending-splitting.js.map +1 -0
  32. package/run/worker-pool-resource-tracking.js +81 -0
  33. package/run/worker-pool-resource-tracking.js.map +1 -0
  34. package/run/worker-pool-run.js +2 -1
  35. package/run/worker-pool-run.js.map +1 -1
  36. package/run/worker-pool-runtime.js +38 -41
  37. package/run/worker-pool-runtime.js.map +1 -1
  38. package/run/worker-pool-work-dispatcher.js +382 -0
  39. package/run/worker-pool-work-dispatcher.js.map +1 -0
  40. package/sbom.cdx.json +4 -4
@@ -81,26 +81,6 @@ function placementLaneLifecycles(plan) {
81
81
  });
82
82
  return laneLifecycles;
83
83
  }
84
- function laneLifecycleCount(laneLifecycles, workerLifecycle) {
85
- return Array
86
- .from(laneLifecycles.values())
87
- .filter(function hasWorkerLifecycle(laneWorkerLifecycle) {
88
- return laneWorkerLifecycle === workerLifecycle;
89
- })
90
- .length;
91
- }
92
- function laneCountsByLifecycle(plan) {
93
- const laneLifecycles = placementLaneLifecycles(plan);
94
- const lifecycles = ['reuse', 'fresh-worker-per-unit'];
95
- return new Map(lifecycles.map(function toLifecycleCount(workerLifecycle) {
96
- return [workerLifecycle, laneLifecycleCount(laneLifecycles, workerLifecycle)];
97
- }));
98
- }
99
- function workerLifecycles(plan) {
100
- return Array.from(new Set(assignedUnits(plan).map(function toWorkerLifecycle(unit) {
101
- return unit.workerLifecycle;
102
- })));
103
- }
104
84
  function workerPoolOptions(resolvedRun, execution, workerCount, workerLifecycle) {
105
85
  return {
106
86
  cwd: resolvedRun.cwd,
@@ -109,9 +89,6 @@ function workerPoolOptions(resolvedRun, execution, workerCount, workerLifecycle)
109
89
  workerLifecycle
110
90
  };
111
91
  }
112
- function poolMatchesLifecycle(pool, workerLifecycle) {
113
- return pool.options.isolateWorkers === (workerLifecycle === 'fresh-worker-per-unit');
114
- }
115
92
  function routeForLifecycle(routes, workerLifecycle) {
116
93
  const route = routes.find(function hasWorkerLifecycle(candidate) {
117
94
  return candidate.workerLifecycle === workerLifecycle;
@@ -121,6 +98,15 @@ function routeForLifecycle(routes, workerLifecycle) {
121
98
  }
122
99
  return route;
123
100
  }
101
+ function routeForLane(routes, lane) {
102
+ const route = routes.find(function hasLane(candidate) {
103
+ return candidate.lane === lane;
104
+ });
105
+ if (route === undefined) {
106
+ throw new Error(`Worker-pool task has no "${lane}" route.`);
107
+ }
108
+ return route;
109
+ }
124
110
  function isWorkerPoolTask(value) {
125
111
  return typeof value === 'object' &&
126
112
  value !== null &&
@@ -133,6 +119,16 @@ function taskWorkerLifecycle(task) {
133
119
  }
134
120
  return task.command.workerLifecycle;
135
121
  }
122
+ function taskLane(task) {
123
+ if (!isWorkerPoolTask(task)) {
124
+ throw new Error('Worker-pool received an invalid task.');
125
+ }
126
+ return task.kind === 'run' ? task.lane : null;
127
+ }
128
+ function routeForTask(routes, task) {
129
+ const lane = taskLane(task);
130
+ return lane === null ? routeForLifecycle(routes, taskWorkerLifecycle(task)) : routeForLane(routes, lane);
131
+ }
136
132
  function uniqueSorted(values) {
137
133
  return Array.from(new Set(values)).toSorted(function compareText(left, right) {
138
134
  return left.localeCompare(right);
@@ -214,7 +210,7 @@ function createRoutedPool(routes) {
214
210
  }, 0)
215
211
  },
216
212
  async run(task, options) {
217
- return await routeForLifecycle(routes, taskWorkerLifecycle(task)).pool.run(task, options);
213
+ return await routeForTask(routes, task).pool.run(task, options);
218
214
  },
219
215
  setHostOutputSink(sink) {
220
216
  for (const route of routes) {
@@ -246,23 +242,23 @@ function createEmptyExecutionPool(input, execution) {
246
242
  pool: input.createdPool ?? input.dependencies.createWorkerPool(workerPoolOptions(input.resolvedRun, execution, 0, execution.workerLifecycle))
247
243
  };
248
244
  }
249
- function createSingleLifecycleExecutionPool(input, execution, placementPlan, workerLifecycle) {
250
- if (input.createdPool !== null && poolMatchesLifecycle(input.createdPool, workerLifecycle)) {
245
+ function createLaneExecutionPool(input, execution, placementPlan) {
246
+ const laneLifecycles = placementLaneLifecycles(placementPlan);
247
+ const singleLane = placementPlan.lanes[0];
248
+ if (input.createdPool !== null && placementPlan.lanes.length === 1 && singleLane !== undefined) {
251
249
  return {
252
250
  destroyPool: false,
253
251
  pool: input.createdPool
254
252
  };
255
253
  }
256
- return {
257
- destroyPool: true,
258
- pool: input.dependencies.createWorkerPool(workerPoolOptions(input.resolvedRun, execution, placementPlan.lanes.length, workerLifecycle))
259
- };
260
- }
261
- function createMixedLifecycleExecutionPool(input, execution, placementPlan, lifecycles) {
262
- const laneCounts = laneCountsByLifecycle(placementPlan);
263
- const routes = lifecycles.map(function toRoute(workerLifecycle) {
254
+ const routes = placementPlan.lanes.map(function toRoute(lane) {
255
+ const workerLifecycle = laneLifecycles.get(lane.id);
256
+ if (workerLifecycle === undefined) {
257
+ throw new Error('Placement lane has no assigned worker lifecycle.');
258
+ }
264
259
  return {
265
- pool: input.dependencies.createWorkerPool(workerPoolOptions(input.resolvedRun, execution, laneCounts.get(workerLifecycle) ?? 0, workerLifecycle)),
260
+ pool: input.dependencies.createWorkerPool(workerPoolOptions(input.resolvedRun, execution, 1, workerLifecycle)),
261
+ lane: lane.id,
266
262
  workerLifecycle
267
263
  };
268
264
  });
@@ -273,14 +269,10 @@ function createMixedLifecycleExecutionPool(input, execution, placementPlan, life
273
269
  }
274
270
  function createExecutionPool(input, placementPlan) {
275
271
  const execution = workerPoolExecutionFacts(input.resolvedRun);
276
- const lifecycles = workerLifecycles(placementPlan);
277
- const firstLifecycle = lifecycles[0];
278
- if (firstLifecycle === undefined) {
272
+ if (placementPlan.lanes.length === 0) {
279
273
  return createEmptyExecutionPool(input, execution);
280
274
  }
281
- return lifecycles.length === 1
282
- ? createSingleLifecycleExecutionPool(input, execution, placementPlan, firstLifecycle)
283
- : createMixedLifecycleExecutionPool(input, execution, placementPlan, lifecycles);
275
+ return createLaneExecutionPool(input, execution, placementPlan);
284
276
  }
285
277
  export function workerPoolCollectedPlan(resolvedRun) {
286
278
  if (resolvedRun.plan.kind !== 'worker-pool') {
@@ -315,6 +307,7 @@ export async function createWorkerPoolRuntime(input) {
315
307
  const taskResults = [];
316
308
  const executionPool = createExecutionPool(input, placementPlan);
317
309
  const { destroyPool, pool } = executionPool;
310
+ const placementTraceEntries = [];
318
311
  pool.setHostOutputSink?.(function recordHostOutput(stream, chunk) {
319
312
  if (execution.capture === 'live') {
320
313
  dependencies.liveOutput[stream].write(chunk);
@@ -331,7 +324,11 @@ export async function createWorkerPoolRuntime(input) {
331
324
  finalizeResult,
332
325
  pool,
333
326
  poolResourceUsageTracker: createPoolResourceUsageTracker(pool, resolvedRun, dependencies),
327
+ placementTraceEntries,
334
328
  previousPoolSample: createStoredRunValue(null),
329
+ recordPlacementTraceEntry(entry) {
330
+ placementTraceEntries.push(entry);
331
+ },
335
332
  reporterDelivery: await createReporterDelivery(resolvedRun, dependencies),
336
333
  reporterEvents: createReporterEventQueue(),
337
334
  resolvedRun,
@@ -1 +1 @@
1
- {"version":3,"file":"worker-pool-runtime.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker-pool-runtime.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-runtime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,382 @@
1
+ import { workIdentityKey } from "../engine/identity.js";
2
+ import { traceUnitKey } from "./placement-trace.js";
3
+ import { createChangeWaiters, createLeaseCounter, createWorkUnitQueue } from "./worker-pool-dispatch-state.js";
4
+ import { compareQueuePriority, fixedQueueItem, originalQueueItem, queuedWorkCanSplit, requeuedPriority, splitQueuedWorkUnit } from "./worker-pool-pending-splitting.js";
5
+ const medianDivisor = 2;
6
+ function workUnitIdKey(unit) {
7
+ return JSON.stringify(unit);
8
+ }
9
+ function unitKey(unit) {
10
+ return workUnitIdKey(unit.id);
11
+ }
12
+ function unitByKey(units) {
13
+ return new Map(units.map(function toEntry(unit) {
14
+ return [JSON.stringify(unit.id), unit];
15
+ }));
16
+ }
17
+ function uniqueText(values) {
18
+ return Array.from(new Set(values));
19
+ }
20
+ function hardConstraintKeys(unit) {
21
+ return Array.from(new Set([
22
+ ...unit.resourceConstraints.serialKeys,
23
+ ...unit.resourceConstraints.singleWorkerKeys
24
+ ]));
25
+ }
26
+ function faultReservationKey(faultDomain, lane) {
27
+ return JSON.stringify([faultDomain, lane.id]);
28
+ }
29
+ function knownUnit(units, unitId) {
30
+ const unit = units.get(JSON.stringify(unitId));
31
+ if (unit === undefined) {
32
+ throw new Error('Placement assignment referenced an unknown work unit.');
33
+ }
34
+ return unit;
35
+ }
36
+ function unitsAssignedToLane(plan, lane) {
37
+ const units = unitByKey(plan.units);
38
+ return plan.assignments.flatMap(function toUnit(assignment) {
39
+ if (assignment.lane !== lane.id) {
40
+ return [];
41
+ }
42
+ return [knownUnit(units, assignment.unit)];
43
+ });
44
+ }
45
+ function createDynamicReservations() {
46
+ const hardLaneByKey = new Map();
47
+ const reservedFaultCounts = new Map();
48
+ const retainedLaneByTraceUnit = new Map();
49
+ return {
50
+ bindHardLane(key, lane) {
51
+ hardLaneByKey.set(key, lane.id);
52
+ },
53
+ boundHardLane(key) {
54
+ return hardLaneByKey.get(key);
55
+ },
56
+ decrementFault(faultDomain, lane) {
57
+ const key = faultReservationKey(faultDomain, lane);
58
+ const count = reservedFaultCounts.get(key) ?? 0;
59
+ if (count <= 1) {
60
+ reservedFaultCounts.delete(key);
61
+ return;
62
+ }
63
+ reservedFaultCounts.set(key, count - 1);
64
+ },
65
+ hardKeyIsBound(key) {
66
+ return hardLaneByKey.has(key);
67
+ },
68
+ incrementFault(faultDomain, lane) {
69
+ const key = faultReservationKey(faultDomain, lane);
70
+ reservedFaultCounts.set(key, (reservedFaultCounts.get(key) ?? 0) + 1);
71
+ },
72
+ releaseHardLane(key, lane) {
73
+ if (hardLaneByKey.get(key) === lane.id) {
74
+ hardLaneByKey.delete(key);
75
+ }
76
+ },
77
+ reservedFaultCount(faultDomain, lane) {
78
+ return reservedFaultCounts.get(faultReservationKey(faultDomain, lane)) ?? 0;
79
+ },
80
+ retainedLane(traceUnit) {
81
+ return retainedLaneByTraceUnit.get(traceUnitKey(traceUnit));
82
+ },
83
+ retainUnit(traceUnit, lane) {
84
+ retainedLaneByTraceUnit.set(traceUnitKey(traceUnit), lane.id);
85
+ }
86
+ };
87
+ }
88
+ function createStaticDispatcher(plan) {
89
+ const queues = new Map(plan.lanes.map(function toLaneQueue(lane) {
90
+ return [lane.id, createWorkUnitQueue(unitsAssignedToLane(plan, lane))];
91
+ }));
92
+ const assignedLaneByUnit = new Map(plan.assignments.map(function toAssignmentEntry(assignment) {
93
+ return [JSON.stringify(assignment.unit), assignment.lane];
94
+ }));
95
+ return {
96
+ blocked() {
97
+ return false;
98
+ },
99
+ clear() {
100
+ for (const queue of queues.values()) {
101
+ queue.clear();
102
+ }
103
+ },
104
+ finish() {
105
+ return undefined;
106
+ },
107
+ pull(lane) {
108
+ const unit = queues.get(lane.id)?.takeFirst() ?? null;
109
+ return unit === null
110
+ ? null
111
+ : { lane, reservation: { faultDomains: [], hardKeys: [] }, traceUnit: unit.id, unit };
112
+ },
113
+ requeue(requeuedUnit) {
114
+ const lane = assignedLaneByUnit.get(unitKey(requeuedUnit.unit));
115
+ if (lane === undefined) {
116
+ throw new Error('Static worker-pool dispatch cannot requeue an unassigned work unit.');
117
+ }
118
+ queues.get(lane)?.push(requeuedUnit.unit);
119
+ },
120
+ async waitForChange() {
121
+ return undefined;
122
+ }
123
+ };
124
+ }
125
+ function median(values) {
126
+ const sorted = values.toSorted(function compareNumber(left, right) {
127
+ return left - right;
128
+ });
129
+ const middle = Math.floor(sorted.length / medianDivisor);
130
+ const value = sorted[middle];
131
+ if (value === undefined) {
132
+ return 0;
133
+ }
134
+ return sorted.length % medianDivisor === 1
135
+ ? value
136
+ : ((sorted[middle - 1] ?? value) + value) / medianDivisor;
137
+ }
138
+ function caseCountLoad(unit) {
139
+ return unit.work.length + unit.resourceConstraints.capacityWeight - 1;
140
+ }
141
+ function durationHistoryUnitLoad(samples) {
142
+ const fallbackDuration = median(samples.map(function toDuration(sample) {
143
+ return sample.durationMilliseconds;
144
+ }));
145
+ const durationByWorkKey = new Map(samples.map(function toEntry(sample) {
146
+ return [workIdentityKey(sample.work), sample.durationMilliseconds];
147
+ }));
148
+ return function unitDuration(unit) {
149
+ return unit.work.reduce(function sumDuration(total, work) {
150
+ return total + (durationByWorkKey.get(workIdentityKey(work)) ?? fallbackDuration);
151
+ }, 0) * unit.resourceConstraints.capacityWeight;
152
+ };
153
+ }
154
+ function durationHistoryLoad(runtime) {
155
+ const { durationHistory, execution } = runtime.resolvedRun.facts;
156
+ if (execution.processModel !== 'worker-pool' || execution.assignmentPolicy !== 'duration-history-balanced') {
157
+ return null;
158
+ }
159
+ if (durationHistory === null || durationHistory.samples.length === 0) {
160
+ return null;
161
+ }
162
+ return durationHistoryUnitLoad(durationHistory.samples);
163
+ }
164
+ function runtimeUnitLoad(runtime) {
165
+ return durationHistoryLoad(runtime) ?? caseCountLoad;
166
+ }
167
+ function laneLifecycles(plan) {
168
+ const lifecycles = new Map();
169
+ const units = unitByKey(plan.units);
170
+ for (const assignment of plan.assignments) {
171
+ const unit = knownUnit(units, assignment.unit);
172
+ const existing = lifecycles.get(assignment.lane);
173
+ if (existing !== undefined && existing !== unit.workerLifecycle) {
174
+ throw new Error('Placement lane cannot mix worker lifecycle policies.');
175
+ }
176
+ lifecycles.set(assignment.lane, unit.workerLifecycle);
177
+ }
178
+ return lifecycles;
179
+ }
180
+ function createFaultQuotaLedger(plan) {
181
+ const quotas = new Map();
182
+ const lanes = new Map(plan.lanes.map(function toLaneEntry(lane) {
183
+ return [lane.id, lane];
184
+ }));
185
+ return {
186
+ quotas() {
187
+ return quotas;
188
+ },
189
+ record(unit, laneId) {
190
+ const lane = lanes.get(laneId);
191
+ if (lane === undefined) {
192
+ throw new Error('Placement assignment referenced an unknown lane.');
193
+ }
194
+ for (const faultDomain of uniqueText(unit.resourceConstraints.faultDomains)) {
195
+ const key = faultReservationKey(faultDomain, lane);
196
+ quotas.set(key, (quotas.get(key) ?? 0) + 1);
197
+ }
198
+ }
199
+ };
200
+ }
201
+ function faultQuotas(plan) {
202
+ const ledger = createFaultQuotaLedger(plan);
203
+ const units = unitByKey(plan.units);
204
+ for (const assignment of plan.assignments) {
205
+ ledger.record(knownUnit(units, assignment.unit), assignment.lane);
206
+ }
207
+ return ledger.quotas();
208
+ }
209
+ function createDynamicDispatchState(runtime, plan) {
210
+ const units = unitByKey(plan.units);
211
+ const pendingUnits = plan.assignments.map(function toUnit(assignment, index) {
212
+ return originalQueueItem(knownUnit(units, assignment.unit), index);
213
+ });
214
+ return {
215
+ activeLeases: createLeaseCounter(),
216
+ lanes: plan.lanes,
217
+ lifecycleByLane: laneLifecycles(plan),
218
+ pendingUnits: createWorkUnitQueue(pendingUnits),
219
+ quotas: faultQuotas(plan),
220
+ reservations: createDynamicReservations(),
221
+ runtime,
222
+ unitLoad: runtimeUnitLoad(runtime),
223
+ waiters: createChangeWaiters()
224
+ };
225
+ }
226
+ function laneMatchesLifecycle(state, item, lane) {
227
+ return state.lifecycleByLane.get(lane.id) === item.unit.workerLifecycle;
228
+ }
229
+ function laneMatchesRetainedReservation(state, item, lane) {
230
+ const retainedLane = state.reservations.retainedLane(item.traceUnit);
231
+ return retainedLane === undefined || retainedLane === lane.id;
232
+ }
233
+ function laneMatchesHardKeys(state, item, lane) {
234
+ return hardConstraintKeys(item.unit).every(function keyMatchesLane(key) {
235
+ const boundLane = state.reservations.boundHardLane(key);
236
+ return boundLane === undefined || boundLane === lane.id;
237
+ });
238
+ }
239
+ function laneHasFaultCapacity(state, item, lane) {
240
+ if (state.reservations.retainedLane(item.traceUnit) === lane.id) {
241
+ return true;
242
+ }
243
+ return uniqueText(item.unit.resourceConstraints.faultDomains).every(function domainHasCapacity(faultDomain) {
244
+ const key = faultReservationKey(faultDomain, lane);
245
+ return state.reservations.reservedFaultCount(faultDomain, lane) < (state.quotas.get(key) ?? 0);
246
+ });
247
+ }
248
+ function laneCanLease(state, item, lane) {
249
+ return laneMatchesRetainedReservation(state, item, lane) &&
250
+ laneMatchesLifecycle(state, item, lane) &&
251
+ laneMatchesHardKeys(state, item, lane) &&
252
+ laneHasFaultCapacity(state, item, lane);
253
+ }
254
+ function comparePriority(state, left, right) {
255
+ const loadDifference = state.unitLoad(right.unit) - state.unitLoad(left.unit);
256
+ if (loadDifference !== 0) {
257
+ return loadDifference;
258
+ }
259
+ return compareQueuePriority(left.priority, right.priority);
260
+ }
261
+ function freshReservation(state, unit, lane) {
262
+ const hardKeys = hardConstraintKeys(unit).filter(function bindHardKey(key) {
263
+ if (state.reservations.hardKeyIsBound(key)) {
264
+ return false;
265
+ }
266
+ state.reservations.bindHardLane(key, lane);
267
+ return true;
268
+ });
269
+ const faultDomains = uniqueText(unit.resourceConstraints.faultDomains);
270
+ for (const faultDomain of faultDomains) {
271
+ state.reservations.incrementFault(faultDomain, lane);
272
+ }
273
+ return { faultDomains, hardKeys };
274
+ }
275
+ function reserve(state, item, lane) {
276
+ if (state.reservations.retainedLane(item.traceUnit) === lane.id) {
277
+ return { faultDomains: [], hardKeys: [] };
278
+ }
279
+ return freshReservation(state, item.unit, lane);
280
+ }
281
+ function release(state, lease) {
282
+ for (const hardKey of lease.reservation.hardKeys) {
283
+ state.reservations.releaseHardLane(hardKey, lease.lane);
284
+ }
285
+ for (const faultDomain of lease.reservation.faultDomains) {
286
+ state.reservations.decrementFault(faultDomain, lease.lane);
287
+ }
288
+ }
289
+ function blocked(state, lane) {
290
+ return state.activeLeases.active() > 0 && state.pendingUnits.all().some(function hasBlockedUnit(item) {
291
+ return laneMatchesRetainedReservation(state, item, lane) && laneMatchesLifecycle(state, item, lane);
292
+ });
293
+ }
294
+ function compatibleLaneCount(state, item) {
295
+ return state
296
+ .lanes
297
+ .filter(function canLeaseParent(lane) {
298
+ return laneCanLease(state, item, lane);
299
+ })
300
+ .length;
301
+ }
302
+ function splitEligibility(state, item) {
303
+ return {
304
+ compatibleLaneCount: compatibleLaneCount(state, item),
305
+ hardConstraintCount: hardConstraintKeys(item.unit).length
306
+ };
307
+ }
308
+ function splitPendingUnit(state, item) {
309
+ const split = splitQueuedWorkUnit(state.runtime, item);
310
+ state.pendingUnits.remove(item);
311
+ state.pendingUnits.pushMany(split.children);
312
+ state.runtime.recordPlacementTraceEntry(split.traceEntry);
313
+ }
314
+ function selectPendingUnit(state, lane) {
315
+ return state
316
+ .pendingUnits
317
+ .all()
318
+ .filter(function isEligible(candidate) {
319
+ return laneCanLease(state, candidate, lane);
320
+ })
321
+ .toSorted(function compareUnits(left, right) {
322
+ return comparePriority(state, left, right);
323
+ })[0];
324
+ }
325
+ function leasePendingUnit(state, lane, item) {
326
+ state.pendingUnits.remove(item);
327
+ state.activeLeases.increment();
328
+ return {
329
+ lane,
330
+ reservation: reserve(state, item, lane),
331
+ traceUnit: item.traceUnit,
332
+ unit: item.unit
333
+ };
334
+ }
335
+ function pull(state, lane) {
336
+ let item = selectPendingUnit(state, lane);
337
+ while (item !== undefined && queuedWorkCanSplit(item, splitEligibility(state, item))) {
338
+ splitPendingUnit(state, item);
339
+ item = selectPendingUnit(state, lane);
340
+ }
341
+ return item === undefined ? null : leasePendingUnit(state, lane, item);
342
+ }
343
+ function createDynamicDispatcher(runtime, plan) {
344
+ const state = createDynamicDispatchState(runtime, plan);
345
+ return {
346
+ blocked(lane) {
347
+ return blocked(state, lane);
348
+ },
349
+ clear() {
350
+ state.pendingUnits.clear();
351
+ state.waiters.notify();
352
+ },
353
+ finish(lease, keepReservation) {
354
+ state.activeLeases.decrement();
355
+ if (keepReservation) {
356
+ state.reservations.retainUnit(lease.traceUnit, lease.lane);
357
+ }
358
+ else {
359
+ release(state, lease);
360
+ }
361
+ state.waiters.notify();
362
+ },
363
+ pull(lane) {
364
+ return pull(state, lane);
365
+ },
366
+ requeue(requeuedUnit) {
367
+ state.pendingUnits.push(fixedQueueItem(requeuedUnit.unit, requeuedUnit.traceUnit, requeuedPriority()));
368
+ state.waiters.notify();
369
+ },
370
+ async waitForChange() {
371
+ await state.waiters.wait();
372
+ }
373
+ };
374
+ }
375
+ export function createWorkDispatcher(runtime, plan) {
376
+ const { execution } = runtime.resolvedRun.facts;
377
+ if (execution.processModel !== 'worker-pool' || execution.dispatchPolicy === 'static-assignment') {
378
+ return createStaticDispatcher(plan);
379
+ }
380
+ return createDynamicDispatcher(runtime, plan);
381
+ }
382
+ //# sourceMappingURL=worker-pool-work-dispatcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker-pool-work-dispatcher.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-work-dispatcher.ts"],"names":[],"mappings":"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"}
package/sbom.cdx.json CHANGED
@@ -16,9 +16,9 @@
16
16
  "component": {
17
17
  "type": "library",
18
18
  "name": "@overkill-dev/run",
19
- "version": "0.0.51",
20
- "bom-ref": "pkg:npm/@overkill-dev/run@0.0.51",
21
- "purl": "pkg:npm/@overkill-dev/run@0.0.51"
19
+ "version": "0.0.52",
20
+ "bom-ref": "pkg:npm/@overkill-dev/run@0.0.52",
21
+ "purl": "pkg:npm/@overkill-dev/run@0.0.52"
22
22
  }
23
23
  },
24
24
  "components": [
@@ -171,7 +171,7 @@
171
171
  "ref": "pkg:npm/@enormora/wall-clock@0.0.3"
172
172
  },
173
173
  {
174
- "ref": "pkg:npm/@overkill-dev/run@0.0.51",
174
+ "ref": "pkg:npm/@overkill-dev/run@0.0.52",
175
175
  "dependsOn": [
176
176
  "pkg:npm/@enormora/wall-clock@0.0.3",
177
177
  "pkg:npm/@schema-hub/zod-error-formatter@0.0.16",