@overkill-dev/run 0.0.65 → 0.0.67

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 (369) hide show
  1. package/attachments/attachment-context.js +10 -0
  2. package/attachments/attachment-context.js.map +1 -1
  3. package/attachments/failure-artifact-stream.js +53 -0
  4. package/attachments/failure-artifact-stream.js.map +1 -0
  5. package/attachments/resource-failure-context.js +41 -0
  6. package/attachments/resource-failure-context.js.map +1 -0
  7. package/config/benchmark-execution.js +30 -0
  8. package/config/benchmark-execution.js.map +1 -0
  9. package/config/config-error.d.ts +4 -0
  10. package/config/config-error.d.ts.map +1 -0
  11. package/config/config-error.js +7 -0
  12. package/config/config-error.js.map +1 -0
  13. package/config/config.d.ts +57 -0
  14. package/config/config.d.ts.map +1 -0
  15. package/{run/run-config.js → config/config.js} +54 -19
  16. package/config/config.js.map +1 -0
  17. package/{run/coverage-config-schema.d.ts → config/coverage-schema.d.ts} +5 -5
  18. package/config/coverage-schema.d.ts.map +1 -0
  19. package/{run/coverage-config-schema.js → config/coverage-schema.js} +1 -1
  20. package/config/coverage-schema.js.map +1 -0
  21. package/{run/run-config-defaults.js → config/defaults.js} +6 -1
  22. package/config/defaults.js.map +1 -0
  23. package/{run/run-execution-config.d.ts → config/execution.d.ts} +5 -7
  24. package/config/execution.d.ts.map +1 -0
  25. package/config/host-process.js +41 -0
  26. package/config/host-process.js.map +1 -0
  27. package/config/profile-file-discovery.js +88 -0
  28. package/config/profile-file-discovery.js.map +1 -0
  29. package/{run/profile-config-normalization.js → config/profile-normalization.js} +13 -13
  30. package/config/profile-normalization.js.map +1 -0
  31. package/{run/profile-file-glob.js → config/profile-patterns.js} +6 -10
  32. package/config/profile-patterns.js.map +1 -0
  33. package/{run/run-config-schema.d.ts → config/schema.d.ts} +206 -26
  34. package/config/schema.d.ts.map +1 -0
  35. package/{run/run-config-schema.js → config/schema.js} +38 -12
  36. package/config/schema.js.map +1 -0
  37. package/config/snapshot.js +204 -0
  38. package/config/snapshot.js.map +1 -0
  39. package/config/types.d.ts +157 -0
  40. package/config/types.d.ts.map +1 -0
  41. package/config/validation.js +91 -0
  42. package/config/validation.js.map +1 -0
  43. package/{run/work-distribution-config.js → config/work-distribution.js} +3 -3
  44. package/config/work-distribution.js.map +1 -0
  45. package/engine/case-execution.d.ts +1 -0
  46. package/engine/case-execution.d.ts.map +1 -1
  47. package/engine/case-execution.js +17 -29
  48. package/engine/case-execution.js.map +1 -1
  49. package/engine/recorded-assertion-failure.js +30 -0
  50. package/engine/recorded-assertion-failure.js.map +1 -0
  51. package/engine/run-artifact.d.ts +2 -2
  52. package/engine/run-artifact.d.ts.map +1 -1
  53. package/engine/runtime-attachment.d.ts +25 -5
  54. package/engine/runtime-attachment.d.ts.map +1 -1
  55. package/engine/runtime-attachment.js.map +1 -1
  56. package/package-version.js +31 -0
  57. package/package-version.js.map +1 -0
  58. package/package.json +30 -9
  59. package/packages/resources/attachment-context.entry-point.js +1 -1
  60. package/packages/resources/attachment-context.entry-point.js.map +1 -1
  61. package/packages/run/command-line.entry-point.d.ts +5 -3
  62. package/packages/run/command-line.entry-point.d.ts.map +1 -1
  63. package/packages/run/command-line.entry-point.js +28 -7
  64. package/packages/run/command-line.entry-point.js.map +1 -1
  65. package/packages/run/config.entry-point.d.ts +8 -6
  66. package/packages/run/config.entry-point.d.ts.map +1 -1
  67. package/packages/run/config.entry-point.js +4 -4
  68. package/packages/run/config.entry-point.js.map +1 -1
  69. package/packages/run/run.entry-point.d.ts +6 -4
  70. package/packages/run/run.entry-point.d.ts.map +1 -1
  71. package/packages/run/run.entry-point.js +3 -3
  72. package/packages/run/run.entry-point.js.map +1 -1
  73. package/packages/simulation/transcript.entry-point.js +2 -0
  74. package/packages/simulation/transcript.entry-point.js.map +1 -1
  75. package/readme.md +56 -14
  76. package/reporters/human-reporter-rendering.js +52 -22
  77. package/reporters/human-reporter-rendering.js.map +1 -1
  78. package/resources/failure-artifacts.js +9 -0
  79. package/resources/failure-artifacts.js.map +1 -0
  80. package/run/assertion-result-schema.js +69 -0
  81. package/run/assertion-result-schema.js.map +1 -0
  82. package/run/attachment-coordinator-context.js.map +1 -1
  83. package/run/attachment-coordinator.js +8 -4
  84. package/run/attachment-coordinator.js.map +1 -1
  85. package/run/attachment-eligibility.js +1 -1
  86. package/run/attachment-eligibility.js.map +1 -1
  87. package/run/attachment-execution.js +53 -6
  88. package/run/attachment-execution.js.map +1 -1
  89. package/run/attachment-protocol.js +4 -0
  90. package/run/attachment-protocol.js.map +1 -1
  91. package/run/attachment-record.js +2 -2
  92. package/run/attachment-record.js.map +1 -1
  93. package/run/attachment-reporter.js +1 -0
  94. package/run/attachment-reporter.js.map +1 -1
  95. package/run/attachment-results.js +5 -9
  96. package/run/attachment-results.js.map +1 -1
  97. package/run/attachment-storage-session.js +1 -0
  98. package/run/attachment-storage-session.js.map +1 -1
  99. package/run/attachment-storage-writer.js +128 -0
  100. package/run/attachment-storage-writer.js.map +1 -0
  101. package/run/attachment-store.js +84 -127
  102. package/run/attachment-store.js.map +1 -1
  103. package/run/attachment-wire-schema.js +45 -9
  104. package/run/attachment-wire-schema.js.map +1 -1
  105. package/run/attachment-worker-context.js +1 -1
  106. package/run/attachment-worker-context.js.map +1 -1
  107. package/run/attachment-writer.js +5 -3
  108. package/run/attachment-writer.js.map +1 -1
  109. package/run/benchmark-commands.d.ts +10 -0
  110. package/run/benchmark-commands.d.ts.map +1 -0
  111. package/run/benchmark-commands.js +82 -0
  112. package/run/benchmark-commands.js.map +1 -0
  113. package/run/capability-policy-snapshots.d.ts +3 -2
  114. package/run/capability-policy-snapshots.d.ts.map +1 -1
  115. package/run/capability-policy-snapshots.js.map +1 -1
  116. package/run/capability-policy.js +48 -38
  117. package/run/capability-policy.js.map +1 -1
  118. package/run/child-process-outbox.js +36 -0
  119. package/run/child-process-outbox.js.map +1 -0
  120. package/run/child-process-protocol.js +17 -13
  121. package/run/child-process-protocol.js.map +1 -1
  122. package/run/child-process-shutdown.js +54 -0
  123. package/run/child-process-shutdown.js.map +1 -0
  124. package/run/collected-run-plan-schema.js +90 -0
  125. package/run/collected-run-plan-schema.js.map +1 -0
  126. package/run/command-line-command-namespace.d.ts.map +1 -1
  127. package/run/command-line-command-namespace.js.map +1 -1
  128. package/run/command-line-command.d.ts +26 -18
  129. package/run/command-line-command.d.ts.map +1 -1
  130. package/run/command-line-command.js +3 -2
  131. package/run/command-line-command.js.map +1 -1
  132. package/run/command-line-config.d.ts +5 -0
  133. package/run/command-line-config.d.ts.map +1 -0
  134. package/run/command-line-config.js +51 -0
  135. package/run/command-line-config.js.map +1 -0
  136. package/run/command-line-execution.js +82 -0
  137. package/run/command-line-execution.js.map +1 -0
  138. package/run/command-line-runner.d.ts +4 -5
  139. package/run/command-line-runner.d.ts.map +1 -1
  140. package/run/command-line-runner.js +6 -124
  141. package/run/command-line-runner.js.map +1 -1
  142. package/run/command-line-unimplemented-commands.js +1 -8
  143. package/run/command-line-unimplemented-commands.js.map +1 -1
  144. package/run/coverage-loaded-sources.js +8 -9
  145. package/run/coverage-loaded-sources.js.map +1 -1
  146. package/run/coverage-method-ranges.js +100 -0
  147. package/run/coverage-method-ranges.js.map +1 -0
  148. package/run/coverage-paths.js.map +1 -1
  149. package/run/coverage-reporting.js.map +1 -1
  150. package/run/coverage-runtime-source.js +68 -25
  151. package/run/coverage-runtime-source.js.map +1 -1
  152. package/run/coverage-session.js.map +1 -1
  153. package/run/coverage-source-map.js +2 -3
  154. package/run/coverage-source-map.js.map +1 -1
  155. package/run/coverage-source-selection.js +12 -6
  156. package/run/coverage-source-selection.js.map +1 -1
  157. package/run/coverage-tokens.js +26 -0
  158. package/run/coverage-tokens.js.map +1 -0
  159. package/run/current-process-run-orchestrator.js +7 -11
  160. package/run/current-process-run-orchestrator.js.map +1 -1
  161. package/run/diff-schema.js +78 -0
  162. package/run/diff-schema.js.map +1 -0
  163. package/run/duration-history-schema.js +1 -1
  164. package/run/duration-history-schema.js.map +1 -1
  165. package/run/failure-artifact-retention.js +76 -0
  166. package/run/failure-artifact-retention.js.map +1 -0
  167. package/run/node-child-process-starters.js +8 -1
  168. package/run/node-child-process-starters.js.map +1 -1
  169. package/run/node-command-line-runner.d.ts +1 -1
  170. package/run/node-command-line-runner.d.ts.map +1 -1
  171. package/run/node-command-line-runner.js +18 -10
  172. package/run/node-command-line-runner.js.map +1 -1
  173. package/run/node-process-policy-observation.js +43 -0
  174. package/run/node-process-policy-observation.js.map +1 -0
  175. package/run/permission-denial-runtime-policy.js +3 -0
  176. package/run/permission-denial-runtime-policy.js.map +1 -1
  177. package/run/reporter-event-schema.js +42 -0
  178. package/run/reporter-event-schema.js.map +1 -0
  179. package/run/request-snapshot.js +40 -0
  180. package/run/request-snapshot.js.map +1 -0
  181. package/run/resource-disposal-error.js +27 -0
  182. package/run/resource-disposal-error.js.map +1 -0
  183. package/run/resource-failure-preparation.js +86 -0
  184. package/run/resource-failure-preparation.js.map +1 -0
  185. package/run/resource-lifecycle-disposal.js +132 -0
  186. package/run/resource-lifecycle-disposal.js.map +1 -0
  187. package/run/resource-lifecycle-session-acquirer.js +31 -10
  188. package/run/resource-lifecycle-session-acquirer.js.map +1 -1
  189. package/run/resource-lifecycle-state.d.ts +2 -1
  190. package/run/resource-lifecycle-state.d.ts.map +1 -1
  191. package/run/resource-lifecycle-state.js +30 -1
  192. package/run/resource-lifecycle-state.js.map +1 -1
  193. package/run/resource-lifecycle.js +26 -104
  194. package/run/resource-lifecycle.js.map +1 -1
  195. package/run/run-artifact-id-schema.js +27 -0
  196. package/run/run-artifact-id-schema.js.map +1 -0
  197. package/run/run-artifact-schema.js +74 -0
  198. package/run/run-artifact-schema.js.map +1 -0
  199. package/run/run-collected-planning.js +9 -0
  200. package/run/run-collected-planning.js.map +1 -1
  201. package/run/run-collected-resolution.js.map +1 -1
  202. package/run/run-collection-error-result.js +4 -3
  203. package/run/run-collection-error-result.js.map +1 -1
  204. package/run/run-command-schema.js +60 -0
  205. package/run/run-command-schema.js.map +1 -0
  206. package/run/run-coverage.js.map +1 -1
  207. package/run/run-discovery-types.d.ts +2 -2
  208. package/run/run-discovery-types.d.ts.map +1 -1
  209. package/run/run-discovery.js +14 -96
  210. package/run/run-discovery.js.map +1 -1
  211. package/run/run-engine-primitives.d.ts.map +1 -1
  212. package/run/run-errors.d.ts +7 -7
  213. package/run/run-errors.d.ts.map +1 -1
  214. package/run/run-errors.js +17 -6
  215. package/run/run-errors.js.map +1 -1
  216. package/run/run-facts.js +5 -70
  217. package/run/run-facts.js.map +1 -1
  218. package/run/run-host-process.js +1 -40
  219. package/run/run-host-process.js.map +1 -1
  220. package/run/run-identity-schema.js +38 -0
  221. package/run/run-identity-schema.js.map +1 -0
  222. package/run/run-if-main-options.js.map +1 -1
  223. package/run/run-if-main-profile.d.ts +8 -10
  224. package/run/run-if-main-profile.d.ts.map +1 -1
  225. package/run/run-if-main-profile.js +25 -112
  226. package/run/run-if-main-profile.js.map +1 -1
  227. package/run/run-if-main.d.ts.map +1 -1
  228. package/run/run-if-main.js.map +1 -1
  229. package/run/run-in-process-execution.js +2 -0
  230. package/run/run-in-process-execution.js.map +1 -1
  231. package/run/run-input-resolution.js +11 -6
  232. package/run/run-input-resolution.js.map +1 -1
  233. package/run/run-isolated-command.js +2 -2
  234. package/run/run-isolated-command.js.map +1 -1
  235. package/run/run-isolated-process.js +12 -7
  236. package/run/run-isolated-process.js.map +1 -1
  237. package/run/run-local-command.js +23 -13
  238. package/run/run-local-command.js.map +1 -1
  239. package/run/run-local-coverage.js +16 -3
  240. package/run/run-local-coverage.js.map +1 -1
  241. package/run/run-local-execution.js.map +1 -1
  242. package/run/run-local-resolution.js +1 -3
  243. package/run/run-local-resolution.js.map +1 -1
  244. package/run/run-local-test-plan.js.map +1 -1
  245. package/run/run-orchestrator-dependencies.d.ts +4 -4
  246. package/run/run-orchestrator-dependencies.d.ts.map +1 -1
  247. package/run/run-orchestrator.d.ts +2 -2
  248. package/run/run-orchestrator.d.ts.map +1 -1
  249. package/run/run-orchestrator.js +2 -2
  250. package/run/run-orchestrator.js.map +1 -1
  251. package/run/run-ordering.js.map +1 -1
  252. package/run/run-process-engine.js.map +1 -1
  253. package/run/run-profile-facts.js +62 -0
  254. package/run/run-profile-facts.js.map +1 -0
  255. package/run/run-record-types.d.ts +5 -4
  256. package/run/run-record-types.d.ts.map +1 -1
  257. package/run/run-record-versions.js +1 -30
  258. package/run/run-record-versions.js.map +1 -1
  259. package/run/run-reporter-resolution.js +4 -1
  260. package/run/run-reporter-resolution.js.map +1 -1
  261. package/run/run-result-reporting.js.map +1 -1
  262. package/run/run-result-schema.js +65 -0
  263. package/run/run-result-schema.js.map +1 -0
  264. package/run/run-runtime-schema.js +64 -0
  265. package/run/run-runtime-schema.js.map +1 -0
  266. package/run/run-selection.js.map +1 -1
  267. package/run/run-supervised-process.js +3 -4
  268. package/run/run-supervised-process.js.map +1 -1
  269. package/run/run-support.js +5 -222
  270. package/run/run-support.js.map +1 -1
  271. package/run/run-types.d.ts +40 -166
  272. package/run/run-types.d.ts.map +1 -1
  273. package/run/run-types.js.map +1 -1
  274. package/run/run-validation.js +4 -63
  275. package/run/run-validation.js.map +1 -1
  276. package/run/run.d.ts.map +1 -1
  277. package/run/run.js +32 -16
  278. package/run/run.js.map +1 -1
  279. package/run/serialized-value-schema.js +76 -0
  280. package/run/serialized-value-schema.js.map +1 -0
  281. package/run/simulation-witness.js +38 -0
  282. package/run/simulation-witness.js.map +1 -0
  283. package/run/supervised-child-failure.js +26 -0
  284. package/run/supervised-child-failure.js.map +1 -0
  285. package/run/supervised-child-process.d.ts +3 -0
  286. package/run/supervised-child-process.d.ts.map +1 -1
  287. package/run/supervised-child-process.js +3 -1
  288. package/run/supervised-child-process.js.map +1 -1
  289. package/run/supervised-child-transport.js +125 -0
  290. package/run/supervised-child-transport.js.map +1 -0
  291. package/run/supervised-child.entry-point.js +47 -39
  292. package/run/supervised-child.entry-point.js.map +1 -1
  293. package/run/supervised-child.js +3 -3
  294. package/run/supervised-child.js.map +1 -1
  295. package/run/supervised-protocol-schema.js +42 -0
  296. package/run/supervised-protocol-schema.js.map +1 -0
  297. package/run/supervised-protocol.js.map +1 -1
  298. package/run/supervised-run-collection.js +33 -30
  299. package/run/supervised-run-collection.js.map +1 -1
  300. package/run/supervised-run-resource-policy.js.map +1 -1
  301. package/run/supervised-run-runtime.js +33 -15
  302. package/run/supervised-run-runtime.js.map +1 -1
  303. package/run/supervised-run-state.js +43 -22
  304. package/run/supervised-run-state.js.map +1 -1
  305. package/run/supervised-run.js +69 -36
  306. package/run/supervised-run.js.map +1 -1
  307. package/run/test-profile.js +21 -0
  308. package/run/test-profile.js.map +1 -0
  309. package/run/work-unit-identity.js.map +1 -1
  310. package/run/work-unit-planning.js +6 -6
  311. package/run/work-unit-planning.js.map +1 -1
  312. package/run/work-unit-resource-constraints.js +1 -1
  313. package/run/work-unit-resource-constraints.js.map +1 -1
  314. package/run/worker-pool-execution.js +2 -3
  315. package/run/worker-pool-execution.js.map +1 -1
  316. package/run/worker-pool-host-process.js +50 -20
  317. package/run/worker-pool-host-process.js.map +1 -1
  318. package/run/worker-pool-host-protocol-schema.js +80 -0
  319. package/run/worker-pool-host-protocol-schema.js.map +1 -0
  320. package/run/worker-pool-host-protocol.js.map +1 -1
  321. package/run/worker-pool-host-task.js +20 -11
  322. package/run/worker-pool-host-task.js.map +1 -1
  323. package/run/worker-pool-host-transport.js +96 -0
  324. package/run/worker-pool-host-transport.js.map +1 -0
  325. package/run/worker-pool-host.entry-point.js +43 -8
  326. package/run/worker-pool-host.entry-point.js.map +1 -1
  327. package/run/worker-pool-lanes.js.map +1 -1
  328. package/run/worker-pool-lifecycle-lanes.js.map +1 -1
  329. package/run/worker-pool-placement-planning.js.map +1 -1
  330. package/run/worker-pool-protocol.js +3 -0
  331. package/run/worker-pool-protocol.js.map +1 -1
  332. package/run/worker-pool-resource-lifecycle-execution.js +66 -1
  333. package/run/worker-pool-resource-lifecycle-execution.js.map +1 -1
  334. package/run/worker-pool-routing.js +2 -1
  335. package/run/worker-pool-routing.js.map +1 -1
  336. package/run/worker-pool-runtime.js.map +1 -1
  337. package/run/worker-pool-task-events.js +18 -15
  338. package/run/worker-pool-task-events.js.map +1 -1
  339. package/run/worker-pool-task-schema.js +61 -0
  340. package/run/worker-pool-task-schema.js.map +1 -0
  341. package/run/worker-pool-task-validation.js +1 -0
  342. package/run/worker-pool-task-validation.js.map +1 -1
  343. package/run/worker-pool-worker-resources.js +68 -0
  344. package/run/worker-pool-worker-resources.js.map +1 -1
  345. package/run/worker-pool-worker.js +11 -4
  346. package/run/worker-pool-worker.js.map +1 -1
  347. package/sbom.cdx.json +27 -44
  348. package/stored-value.js +12 -0
  349. package/stored-value.js.map +1 -0
  350. package/transcript/http-transcript-artifact.js +2 -0
  351. package/transcript/http-transcript-artifact.js.map +1 -0
  352. package/transcript/transcript-store.d.ts +1 -1
  353. package/transcript/transcript-store.d.ts.map +1 -1
  354. package/transcript/transcript-store.js +29 -3
  355. package/transcript/transcript-store.js.map +1 -1
  356. package/run/coverage-config-schema.d.ts.map +0 -1
  357. package/run/coverage-config-schema.js.map +0 -1
  358. package/run/node-process-capability-restrictions.js +0 -92
  359. package/run/node-process-capability-restrictions.js.map +0 -1
  360. package/run/profile-config-normalization.js.map +0 -1
  361. package/run/profile-file-glob.js.map +0 -1
  362. package/run/run-config-defaults.js.map +0 -1
  363. package/run/run-config-schema.d.ts.map +0 -1
  364. package/run/run-config-schema.js.map +0 -1
  365. package/run/run-config.d.ts +0 -62
  366. package/run/run-config.d.ts.map +0 -1
  367. package/run/run-config.js.map +0 -1
  368. package/run/run-execution-config.d.ts.map +0 -1
  369. package/run/work-distribution-config.js.map +0 -1
@@ -28,4 +28,14 @@ export function resourceAttachments(name) {
28
28
  export async function runWithAttachmentContext(context, run) {
29
29
  return await attachmentContext.run(context, run);
30
30
  }
31
+ export function preparedResourceAttachments(name, condition, source, subtype) {
32
+ return attachmentContext.getStore()?.prepareForProducer({ kind: 'resource', name }, condition, source, subtype) ??
33
+ null;
34
+ }
35
+ export function currentAttachmentLimits() {
36
+ return attachmentContext.getStore()?.limits ?? null;
37
+ }
38
+ export function currentAttachmentContext() {
39
+ return attachmentContext.getStore() ?? null;
40
+ }
31
41
  //# sourceMappingURL=attachment-context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"attachment-context.js","sourceRoot":"","sources":["../../../../source/attachments/attachment-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAQrD,MAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;AAEvF,SAAS,0BAA0B,CAAC,KAAc;IAC9C,OAAO,KAAK,YAAY,iBAAiB,CAAC;AAC9C,CAAC;AACD,SAAS,uBAAuB;IAC5B,MAAM,QAAQ,GAAY,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC;IACxE,IAAI,0BAA0B,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvC,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,iBAAiB,EAAqB,CAAC;IAC3D,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,oBAAoB,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5E,OAAO,OAAO,CAAC;AACnB,CAAC;AACD,MAAM,iBAAiB,GAAG,uBAAuB,EAAE,CAAC;AAEpD,SAAS,sBAAsB;IAC3B,MAAM,WAAW,GAAG,KAAK,UAAU,yBAAyB;QACxD,MAAM,IAAI,SAAS,CAAC,mEAAmE,CAAC,CAAC;IAC7F,CAAC,CAAC;IAEF,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;AACtF,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,QAA4B;IAC/D,OAAO,iBAAiB,CAAC,QAAQ,EAAE,EAAE,WAAW,CAAC,QAAQ,CAAC,IAAI,sBAAsB,EAAE,CAAC;AAC3F,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC5C,OAAO,sBAAsB,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC1C,OAA0B,EAC1B,GAAyB;IAEzB,OAAO,MAAM,iBAAiB,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AACrD,CAAC"}
1
+ {"version":3,"file":"attachment-context.js","sourceRoot":"","sources":["../../../../source/attachments/attachment-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAoBrD,MAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;AAEvF,SAAS,0BAA0B,CAAC,KAAc;IAC9C,OAAO,KAAK,YAAY,iBAAiB,CAAC;AAC9C,CAAC;AACD,SAAS,uBAAuB;IAC5B,MAAM,QAAQ,GAAY,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC;IACxE,IAAI,0BAA0B,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvC,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,iBAAiB,EAAqB,CAAC;IAC3D,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,oBAAoB,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5E,OAAO,OAAO,CAAC;AACnB,CAAC;AACD,MAAM,iBAAiB,GAAG,uBAAuB,EAAE,CAAC;AAEpD,SAAS,sBAAsB;IAC3B,MAAM,WAAW,GAAG,KAAK,UAAU,yBAAyB;QACxD,MAAM,IAAI,SAAS,CAAC,mEAAmE,CAAC,CAAC;IAC7F,CAAC,CAAC;IAEF,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;AACtF,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,QAA4B;IAC/D,OAAO,iBAAiB,CAAC,QAAQ,EAAE,EAAE,WAAW,CAAC,QAAQ,CAAC,IAAI,sBAAsB,EAAE,CAAC;AAC3F,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC5C,OAAO,sBAAsB,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC1C,OAA0B,EAC1B,GAAyB;IAEzB,OAAO,MAAM,iBAAiB,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,2BAA2B,CACvC,IAAY,EACZ,SAAmC,EACnC,MAAuD,EACvD,OAAiC;IAEjC,OAAO,iBAAiB,CAAC,QAAQ,EAAE,EAAE,kBAAkB,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC;QAC3G,IAAI,CAAC;AACb,CAAC;AAED,MAAM,UAAU,uBAAuB;IACnC,OAAO,iBAAiB,CAAC,QAAQ,EAAE,EAAE,MAAM,IAAI,IAAI,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,wBAAwB;IACpC,OAAO,iBAAiB,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC;AAChD,CAAC"}
@@ -0,0 +1,53 @@
1
+ import "../stored-value.js";
2
+ import "../engine/runtime-attachment.js";
3
+ import { workIdentityKey } from "../engine/identity.js";
4
+ import { currentAttachmentContext } from "./attachment-context.js";
5
+ import "./resource-failure-context.js";
6
+ const registryKey = Symbol.for('@overkill-dev/failure-artifact-streams/v2');
7
+ function isFailureRunRegistry(value) {
8
+ return value instanceof WeakMap;
9
+ }
10
+ function sharedFailureRuns() {
11
+ const existing = Reflect.get(globalThis, registryKey);
12
+ if (isFailureRunRegistry(existing)) {
13
+ return existing;
14
+ }
15
+ const created = new WeakMap();
16
+ Object.defineProperty(globalThis, registryKey, { value: created });
17
+ return created;
18
+ }
19
+ const runs = sharedFailureRuns();
20
+ function currentFailureStreams() {
21
+ const context = currentAttachmentContext();
22
+ if (context === null) {
23
+ return null;
24
+ }
25
+ const streams = runs.get(context) ?? new Map();
26
+ runs.set(context, streams);
27
+ return streams;
28
+ }
29
+ function attemptKey(work, attempt) {
30
+ return `${workIdentityKey(work)}:${attempt.index}`;
31
+ }
32
+ export async function closeAttemptFailureStreams(work, attempt) {
33
+ const streams = currentFailureStreams();
34
+ if (streams === null) {
35
+ return;
36
+ }
37
+ const key = attemptKey(work, attempt);
38
+ const owned = streams.get(key) ?? new Set();
39
+ streams.delete(key);
40
+ const completed = await Promise.allSettled(Array.from(owned, async function closeOwnedCapture(stream) {
41
+ return stream.close();
42
+ }));
43
+ const failures = completed.flatMap(function captureFailure(result) {
44
+ return result.status === 'rejected'
45
+ ? [new Error('Failure artifact stream did not finish.', { cause: result.reason })]
46
+ : [];
47
+ });
48
+ if (failures.length > 0) {
49
+ throw new AggregateError(failures, 'Failure artifact streams could not finish.');
50
+ }
51
+ }
52
+
53
+ //# sourceMappingURL=failure-artifact-stream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"failure-artifact-stream.js","sourceRoot":"","sources":["../../../../source/attachments/failure-artifact-stream.ts"],"names":[],"mappings":"AAAA,OAAoD,oBAAoB,CAAC;AACzE,OAKO,iCAAiC,CAAC;AACzC,OAAO,EAAE,eAAe,EAA+B,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAE,wBAAwB,EAA0B,MAAM,yBAAyB,CAAC;AAC3F,OAAwE,+BAA+B,CAAC;AAgBxG,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;AAC5E,SAAS,oBAAoB,CAAC,KAAc;IACxC,OAAO,KAAK,YAAY,OAAO,CAAC;AACpC,CAAC;AACD,SAAS,iBAAiB;IACtB,MAAM,QAAQ,GAAY,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAC/D,IAAI,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjC,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,MAAM,OAAO,GAAuB,IAAI,OAAO,EAAE,CAAC;IAClD,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IACnE,OAAO,OAAO,CAAC;AACnB,CAAC;AACD,MAAM,IAAI,GAAG,iBAAiB,EAAE,CAAC;AACjC,SAAS,qBAAqB;IAC1B,MAAM,OAAO,GAAG,wBAAwB,EAAE,CAAC;IAC3C,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,EAA8C,CAAC;IAC3F,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC3B,OAAO,OAAO,CAAC;AACnB,CAAC;AACD,SAAS,UAAU,CAAC,IAAY,EAAE,OAAkB;IAChD,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;AACvD,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAAC,IAAY,EAAE,OAAkB;IAC7E,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;IACxC,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO;IACX,CAAC;IACD,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACtC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,EAAyB,CAAC;IACnE,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACpB,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,UAAU,iBAAiB,CAAC,MAAM;QAChG,OAAO,MAAM,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC,CAAC,CAAC,CAAC;IACJ,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,SAAS,cAAc,CAAC,MAAM;QAC7D,OAAO,MAAM,CAAC,MAAM,KAAK,UAAU;YAC/B,CAAC,CAAC,CAAE,IAAI,KAAK,CAAC,yCAAyC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAE;YACpF,CAAC,CAAC,EAAE,CAAC;IACb,CAAC,CAAC,CAAC;IACH,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,cAAc,CAAC,QAAQ,EAAE,4CAA4C,CAAC,CAAC;IACrF,CAAC;AACL,CAAC"}
@@ -0,0 +1,41 @@
1
+ import { AsyncLocalStorage } from 'node:async_hooks';
2
+ import { resourceAttachments } from "./attachment-context.js";
3
+ const contextKey = Symbol.for('@overkill-dev/resource-failure-context/v1');
4
+ function isResourceFailureStorage(value) {
5
+ return value instanceof AsyncLocalStorage;
6
+ }
7
+ function sharedResourceFailureContext() {
8
+ const existing = Reflect.get(globalThis, contextKey);
9
+ if (isResourceFailureStorage(existing)) {
10
+ return existing;
11
+ }
12
+ const created = new AsyncLocalStorage();
13
+ Object.defineProperty(globalThis, contextKey, { value: created });
14
+ return created;
15
+ }
16
+ const resourceFailureContext = sharedResourceFailureContext();
17
+
18
+ export async function runWithResourceFailureContext(context, run) {
19
+ return await resourceFailureContext.run(context, run, resourceAttachments(context.name));
20
+ }
21
+ const scopeRegistryKey = Symbol.for('@overkill-dev/transcript-attempt-scopes/v1');
22
+ function isAttemptScopeRegistry(value) {
23
+ return value instanceof WeakMap;
24
+ }
25
+ function sharedAttemptScopes() {
26
+ const existing = Reflect.get(globalThis, scopeRegistryKey);
27
+ if (isAttemptScopeRegistry(existing)) {
28
+ return existing;
29
+ }
30
+ const created = new WeakMap();
31
+ Object.defineProperty(globalThis, scopeRegistryKey, { value: created });
32
+ return created;
33
+ }
34
+ const attemptScopes = sharedAttemptScopes();
35
+ export function createTranscriptAttemptScope(work, attempt) {
36
+ const scope = Object.freeze({ work, attempt });
37
+ attemptScopes.set(scope, { work, attempt });
38
+ return scope;
39
+ }
40
+
41
+ //# sourceMappingURL=resource-failure-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-failure-context.js","sourceRoot":"","sources":["../../../../source/attachments/resource-failure-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGrD,OAAO,uBAAoD,MAAM,yBAAyB,CAAC;AAM3F,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;AAE3E,SAAS,wBAAwB,CAAC,KAAc;IAC5C,OAAO,KAAK,YAAY,iBAAiB,CAAC;AAC9C,CAAC;AACD,SAAS,4BAA4B;IACjC,MAAM,QAAQ,GAAY,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAC9D,IAAI,wBAAwB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrC,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,iBAAiB,EAA0B,CAAC;IAChE,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAClE,OAAO,OAAO,CAAC;AACnB,CAAC;AACD,MAAM,sBAAsB,GAAG,4BAA4B,EAAE,CAAC;;MAMxD,MAWM,UAAU,6BAA6B,CAC/C,OAA+B,EAC/B,GAAwD;IAExD,OAAO,MAAM,sBAAsB,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7F,CAAC;AAID,MAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;AAClF,SAAS,sBAAsB,CAAC,KAAc;IAC1C,OAAO,KAAK,YAAY,OAAO,CAAC;AACpC,CAAC;AACD,SAAS,mBAAmB;IACxB,MAAM,QAAQ,GAAY,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;IACpE,IAAI,sBAAsB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnC,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,MAAM,OAAO,GAAyB,IAAI,OAAO,EAAE,CAAC;IACpD,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IACxE,OAAO,OAAO,CAAC;AACnB,CAAC;AACD,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;AAE5C,MAAM,UAAU,4BAA4B,CAAC,IAAY,EAAE,OAAkB;IACzE,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAC/C,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5C,OAAO,KAAK,CAAC;AACjB,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { ConfigError } from "./config-error.js";
2
+ import { defaultBenchmarkTimeoutPolicy } from "./defaults.js";
3
+ function validateBenchmarkAdmission(execution) {
4
+ if (execution.scheduling !== 'serial' || execution.maxConcurrency !== 1) {
5
+ throw new ConfigError('Benchmark execution requires serial scheduling and maxConcurrency 1.');
6
+ }
7
+ if (execution.processModel !== 'supervised-process' && execution.processModel !== 'worker-pool') {
8
+ throw new ConfigError('Benchmark execution requires supervised-process or worker-pool.');
9
+ }
10
+ }
11
+ function validateBenchmarkWorkerPool(execution) {
12
+ if (execution.hedging.mode !== 'off') {
13
+ throw new ConfigError('Benchmark execution does not support hedging.');
14
+ }
15
+ if (execution.workDistribution.mode === 'group' && execution.workDistribution.groups.some(function hasConcurrentScheduling(group) {
16
+ return group.scheduling === 'concurrent';
17
+ })) {
18
+ throw new ConfigError('Benchmark work groups do not support concurrent scheduling.');
19
+ }
20
+ }
21
+ export function validateBenchmarkExecution(execution, timeouts) {
22
+ validateBenchmarkAdmission(execution);
23
+ if (timeouts.hardMilliseconds > defaultBenchmarkTimeoutPolicy.hardMilliseconds) {
24
+ throw new ConfigError('Benchmark hard timeout must not exceed 60000 milliseconds.');
25
+ }
26
+ if (execution.processModel === 'worker-pool') {
27
+ validateBenchmarkWorkerPool(execution);
28
+ }
29
+ }
30
+ //# sourceMappingURL=benchmark-execution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"benchmark-execution.js","sourceRoot":"","sources":["../../../../source/config/benchmark-execution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,6BAA6B,EAAE,MAAM,eAAe,CAAC;AAK9D,SAAS,0BAA0B,CAAC,SAA2B;IAC3D,IAAI,SAAS,CAAC,UAAU,KAAK,QAAQ,IAAI,SAAS,CAAC,cAAc,KAAK,CAAC,EAAE,CAAC;QACtE,MAAM,IAAI,WAAW,CAAC,sEAAsE,CAAC,CAAC;IAClG,CAAC;IACD,IAAI,SAAS,CAAC,YAAY,KAAK,oBAAoB,IAAI,SAAS,CAAC,YAAY,KAAK,aAAa,EAAE,CAAC;QAC9F,MAAM,IAAI,WAAW,CAAC,iEAAiE,CAAC,CAAC;IAC7F,CAAC;AACL,CAAC;AAED,SAAS,2BAA2B,CAChC,SAA+E;IAE/E,IAAI,SAAS,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACnC,MAAM,IAAI,WAAW,CAAC,+CAA+C,CAAC,CAAC;IAC3E,CAAC;IACD,IACI,SAAS,CAAC,gBAAgB,CAAC,IAAI,KAAK,OAAO,IAAI,SAAS,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CACjF,SAAS,uBAAuB,CAAC,KAAK;QAClC,OAAO,KAAK,CAAC,UAAU,KAAK,YAAY,CAAC;IAC7C,CAAC,CACJ,EACH,CAAC;QACC,MAAM,IAAI,WAAW,CAAC,6DAA6D,CAAC,CAAC;IACzF,CAAC;AACL,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,SAA2B,EAAE,QAAuB;IAC3F,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACtC,IAAI,QAAQ,CAAC,gBAAgB,GAAG,6BAA6B,CAAC,gBAAgB,EAAE,CAAC;QAC7E,MAAM,IAAI,WAAW,CAAC,4DAA4D,CAAC,CAAC;IACxF,CAAC;IACD,IAAI,SAAS,CAAC,YAAY,KAAK,aAAa,EAAE,CAAC;QAC3C,2BAA2B,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;AACL,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare class ConfigError extends Error {
2
+ constructor(message: string, options?: Readonly<ErrorOptions>);
3
+ }
4
+ //# sourceMappingURL=config-error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-error.d.ts","sourceRoot":"","sources":["../../../../source/config/config-error.ts"],"names":[],"mappings":"AAAA,qBAAa,WAAY,SAAQ,KAAK;gBACf,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC;CAIvE"}
@@ -0,0 +1,7 @@
1
+ export class ConfigError extends Error {
2
+ constructor(message, options) {
3
+ super(message, options);
4
+ this.name = 'ConfigError';
5
+ }
6
+ }
7
+ //# sourceMappingURL=config-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-error.js","sourceRoot":"","sources":["../../../../source/config/config-error.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,WAAY,SAAQ,KAAK;IAClC,YAAmB,OAAe,EAAE,OAAgC;QAChE,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;IAC9B,CAAC;CACJ"}
@@ -0,0 +1,57 @@
1
+ import type { z } from 'zod/v4';
2
+ import { type ProjectAttachmentLimits as ParsedProjectAttachmentLimits, type integrationProfileSchema, type Config as ParsedProjectConfig, type ProjectBenchmarkProfileConfig, type ProjectCoverageOutput as ParsedProjectCoverageOutput, type ProjectCoveragePolicy as ParsedProjectCoveragePolicy, type ProjectCoverageSources as ParsedProjectCoverageSources, type ProjectCoverageThresholds as ParsedProjectCoverageThresholds, type ProjectIntegrationExecution as ParsedProjectIntegrationExecution, type ProjectIntegrationProfileConfig as ParsedProjectIntegrationProfileConfig, type ProjectMeasuredResourceUsage as ParsedProjectMeasuredResourceUsage, type ProjectMicrotestExecution as ParsedProjectMicrotestExecution, type ProjectMicrotestProfileConfig as ParsedProjectMicrotestProfileConfig, type ProjectProfileFiles as ParsedProjectProfileFiles, type ProjectResourceBudgets as ParsedProjectResourceBudgets, type ProjectResourceUsageConfig as ParsedProjectResourceUsageConfig, type ProjectTimingProfilePolicy as ParsedProjectTimingProfilePolicy, type ProjectTimeoutConfig as ParsedProjectTimeoutConfig, type ProjectUnmeasuredResourceUsage as ParsedProjectUnmeasuredResourceUsage } from './schema.ts';
3
+ import type { NormalizedConfig } from './types.ts';
4
+ type ProjectHostProcessGuard = Readonly<Partial<Record<'hostProcess', never>>>;
5
+ type ProjectRetryPolicyGuard = Readonly<Partial<Record<'retries', never>>>;
6
+ export type LoadedConfig = NormalizedConfig & {
7
+ readonly configPath: string | null;
8
+ };
9
+ export type ProjectIntegrationExecution = ParsedProjectIntegrationExecution & ProjectHostProcessGuard;
10
+ type IntegrationArtifactSettings = Pick<z.input<typeof integrationProfileSchema>, 'attachments' | 'retries'>;
11
+ export type ProjectIntegrationProfileConfig = IntegrationArtifactSettings & {
12
+ readonly coverage?: never;
13
+ readonly execution?: ProjectIntegrationExecution | undefined;
14
+ readonly files: ParsedProjectIntegrationProfileConfig['files'];
15
+ readonly reporters?: ParsedProjectIntegrationProfileConfig['reporters'];
16
+ readonly resourceUsage?: ParsedProjectIntegrationProfileConfig['resourceUsage'];
17
+ readonly testFamily: ParsedProjectIntegrationProfileConfig['testFamily'];
18
+ readonly timings?: ParsedProjectIntegrationProfileConfig['timings'];
19
+ readonly timeouts?: ParsedProjectIntegrationProfileConfig['timeouts'];
20
+ };
21
+ export type ProjectMicrotestExecution = ParsedProjectMicrotestExecution;
22
+ export type ProjectMicrotestProfileConfig = ParsedProjectMicrotestProfileConfig & ProjectRetryPolicyGuard;
23
+ export type ProjectCoverageOutput = ParsedProjectCoverageOutput;
24
+ export type ProjectCoveragePolicy = ParsedProjectCoveragePolicy;
25
+ export type ProjectCoverageSources = ParsedProjectCoverageSources;
26
+ export type ProjectCoverageThresholds = ParsedProjectCoverageThresholds;
27
+ export type ProjectProfileFiles = ParsedProjectProfileFiles;
28
+ type ProjectTestProfileConfig = ProjectIntegrationProfileConfig | ProjectMicrotestProfileConfig;
29
+ export type ProjectProfileConfig = ProjectBenchmarkProfileConfig | ProjectTestProfileConfig;
30
+ export type ProjectProfilesConfig = Readonly<Record<string, ProjectProfileConfig>>;
31
+ export type ProjectResourceBudgets = ParsedProjectResourceBudgets;
32
+ export type ProjectMeasuredResourceUsage = ParsedProjectMeasuredResourceUsage;
33
+ export type ProjectUnmeasuredResourceUsage = ParsedProjectUnmeasuredResourceUsage;
34
+ export type ProjectResourceUsageConfig = ParsedProjectResourceUsageConfig;
35
+ export type ProjectTimingProfilePolicy = ParsedProjectTimingProfilePolicy;
36
+ export type ProjectTimeoutConfig = ParsedProjectTimeoutConfig;
37
+ export type Config = {
38
+ readonly loader?: ParsedProjectConfig['loader'];
39
+ readonly outputRenderer?: ParsedProjectConfig['outputRenderer'];
40
+ readonly profiles?: ProjectProfilesConfig | undefined;
41
+ readonly reporters?: ParsedProjectConfig['reporters'];
42
+ readonly runtimeStateDir?: ParsedProjectConfig['runtimeStateDir'];
43
+ };
44
+ export type ConfigLoadRequest = {
45
+ readonly configPath: string | null;
46
+ readonly cwd: string;
47
+ };
48
+ export type ConfigLoaderDependencies = {
49
+ readonly fileExists: (filePath: string) => Promise<boolean>;
50
+ readonly importModule: (configPath: string) => Promise<unknown>;
51
+ };
52
+ export type ConfigLoader = (request: ConfigLoadRequest) => Promise<LoadedConfig>;
53
+ export declare function defineConfig(config: Config): Config;
54
+ export declare function normalizeConfig(config: Config): NormalizedConfig;
55
+ export type ProjectAttachmentLimits = ParsedProjectAttachmentLimits;
56
+ export {};
57
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../source/config/config.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  import path from 'node:path';
2
2
  import { parse } from '@schema-hub/zod-error-formatter';
3
3
  import { createPlainOutputRenderer } from "../engine/reporter-output.js";
4
- import { attachmentLimitsSchema, projectConfigSchema, workerPoolProjectExecution } from "./run-config-schema.js";
5
- import { assertValidProfileName, assertValidWorkDistribution, normalizeCoveragePolicy, normalizeProfileFiles, normalizeRequiredProfileFiles, normalizedWorkDistribution } from "./profile-config-normalization.js";
6
- import { RunConfigError } from "./run-errors.js";
7
- import { defaultConfigFileNames, defaultIntegrationProcessModel, defaultIntegrationScheduling, defaultIntegrationTimeoutPolicy, defaultLoader, normalizeMicrotestExecution, normalizedMaxConcurrency, defaultResourceUsagePolicy, defaultResourceUsageSamplingIntervalMilliseconds, defaultTimingProfilePolicy, defaultTimeoutPolicy, defaultWorkerLifecycle, defaultWorkerPoolAssignmentPolicy, defaultWorkerPoolDispatchPolicy, defaultWorkerPoolHedgingPolicy } from "./run-config-defaults.js";
4
+ import { attachmentLimitsSchema, projectConfigSchema, workerPoolProjectExecution } from "./schema.js";
5
+ import { assertValidProfileName, assertValidWorkDistribution, normalizeCoveragePolicy, normalizeProfileFiles, normalizeRequiredProfileFiles, normalizedWorkDistribution } from "./profile-normalization.js";
6
+ import { ConfigError } from "./config-error.js";
7
+ import { validateBenchmarkExecution } from "./benchmark-execution.js";
8
+ import { defaultBenchmarkTimeoutPolicy, defaultConfigFileNames, defaultIntegrationProcessModel, defaultIntegrationScheduling, defaultIntegrationTimeoutPolicy, defaultLoader, normalizeMicrotestExecution, normalizedMaxConcurrency, defaultResourceUsagePolicy, defaultResourceUsageSamplingIntervalMilliseconds, defaultTimingProfilePolicy, defaultTimeoutPolicy, defaultWorkerLifecycle, defaultWorkerPoolAssignmentPolicy, defaultWorkerPoolDispatchPolicy, defaultWorkerPoolHedgingPolicy } from "./defaults.js";
8
9
  export function defineConfig(config) {
9
10
  return config;
10
11
  }
@@ -28,7 +29,7 @@ async function importConfigModule(configPath, dependencies) {
28
29
  return await dependencies.importModule(configPath);
29
30
  }
30
31
  catch (error) {
31
- throw new RunConfigError(`Failed to load config file "${configPath}".`, { cause: error });
32
+ throw new ConfigError(`Failed to load config file "${configPath}".`, { cause: error });
32
33
  }
33
34
  }
34
35
  function hasDefaultExport(configModule) {
@@ -42,18 +43,18 @@ function assertNoExtraConfigExports(configModule, configPath) {
42
43
  return exportName !== 'config';
43
44
  });
44
45
  if (extraExports.length > 0) {
45
- throw new RunConfigError(`Config file "${configPath}" must only export a named config value.`);
46
+ throw new ConfigError(`Config file "${configPath}" must only export a named config value.`);
46
47
  }
47
48
  }
48
49
  function readNamedConfigExport(configModule, configPath) {
49
50
  if (hasDefaultExport(configModule)) {
50
- throw new RunConfigError(`Config file "${configPath}" must not export a default config.`);
51
+ throw new ConfigError(`Config file "${configPath}" must not export a default config.`);
51
52
  }
52
53
  if (hasNamedConfigExport(configModule)) {
53
54
  assertNoExtraConfigExports(configModule, configPath);
54
55
  return configModule.config;
55
56
  }
56
- throw new RunConfigError(`Config file "${configPath}" must export a named config value.`);
57
+ throw new ConfigError(`Config file "${configPath}" must export a named config value.`);
57
58
  }
58
59
  function normalizeReporters(reporters) {
59
60
  return reporters ?? null;
@@ -117,7 +118,7 @@ function normalizeResourceUsage(profile) {
117
118
  return normalizeMeasuredResourceUsage(profile);
118
119
  }
119
120
  function normalizeTimings(timings) {
120
- return timings ?? defaultTimingProfilePolicy;
121
+ return { collection: timings?.collection ?? defaultTimingProfilePolicy.collection };
121
122
  }
122
123
  function timeoutValue(value, fallback) {
123
124
  return value ?? fallback;
@@ -131,7 +132,7 @@ function normalizeTimeouts(timeouts, defaultPolicy) {
131
132
  }
132
133
  function assertValidTimeouts(timeouts) {
133
134
  if (timeouts.softMilliseconds > timeouts.hardMilliseconds) {
134
- throw new RunConfigError('Invalid profile timeouts: softMilliseconds must be less than or equal to hardMilliseconds.');
135
+ throw new ConfigError('Invalid profile timeouts: softMilliseconds must be less than or equal to hardMilliseconds.');
135
136
  }
136
137
  }
137
138
  function normalizeWorkerLifecycle(execution) {
@@ -156,7 +157,7 @@ function assertValidWorkerPoolHedging(execution) {
156
157
  if (execution.processModel === 'worker-pool' &&
157
158
  execution.hedging.mode === 'on' &&
158
159
  execution.dispatchPolicy === 'static-assignment') {
159
- throw new RunConfigError('Invalid worker-pool hedging: hedging requires dynamic-lease dispatch.');
160
+ throw new ConfigError('Invalid worker-pool hedging: hedging requires dynamic-lease dispatch.');
160
161
  }
161
162
  }
162
163
  function normalizeWorkerPoolExecution(execution, scheduling) {
@@ -222,7 +223,38 @@ function normalizeIntegrationProfile(profile) {
222
223
  timeouts
223
224
  };
224
225
  }
226
+ function normalizeBenchmarkExecution(execution) {
227
+ const serialExecution = {
228
+ ...normalizeIntegrationExecution(execution),
229
+ maxConcurrency: 1,
230
+ scheduling: 'serial'
231
+ };
232
+ return serialExecution.processModel === 'worker-pool'
233
+ ? { ...serialExecution, hedging: { mode: 'off' } }
234
+ : serialExecution;
235
+ }
236
+ function normalizeBenchmarkProfile(profile) {
237
+ const timeouts = normalizeTimeouts(profile.timeouts, defaultBenchmarkTimeoutPolicy);
238
+ const execution = normalizeBenchmarkExecution(profile.execution);
239
+ const files = normalizeRequiredProfileFiles(profile.files);
240
+ assertValidTimeouts(timeouts);
241
+ validateBenchmarkExecution(execution, timeouts);
242
+ assertValidWorkDistribution(execution, files);
243
+ return {
244
+ attachments: attachmentLimitsSchema.parse(profile.attachments),
245
+ execution,
246
+ files,
247
+ reporters: normalizeReporters(profile.reporters),
248
+ resourceUsage: normalizeResourceUsage(profile.resourceUsage),
249
+ testFamily: 'benchmark',
250
+ timings: normalizeTimings(profile.timings),
251
+ timeouts
252
+ };
253
+ }
225
254
  function normalizeProfile(profile, configPath) {
255
+ if (profile.testFamily === 'benchmark') {
256
+ return normalizeBenchmarkProfile(profile);
257
+ }
226
258
  if (profile.testFamily === 'integration') {
227
259
  return normalizeIntegrationProfile(profile);
228
260
  }
@@ -243,9 +275,8 @@ function normalizeConfiguredProfiles(profiles, configPath) {
243
275
  }
244
276
  return normalizedProfiles;
245
277
  }
246
- function normalizeConfig(parsedConfig, configPath) {
278
+ function normalizeConfigForOrigin(parsedConfig, configPath) {
247
279
  return {
248
- configPath,
249
280
  loader: parsedConfig.loader ?? defaultLoader,
250
281
  outputRenderer: parsedConfig.outputRenderer ?? createPlainOutputRenderer(),
251
282
  profiles: normalizeConfiguredProfiles(parsedConfig.profiles, configPath),
@@ -259,18 +290,22 @@ function parseConfig(configValue, configPath) {
259
290
  return parsedConfig;
260
291
  }
261
292
  catch (error) {
262
- throw new RunConfigError(`Invalid config file "${configPath}": ${String(error)}`, { cause: error });
293
+ const location = configPath === null ? 'Invalid config' : `Invalid config file "${configPath}"`;
294
+ throw new ConfigError(`${location}: ${String(error)}`, { cause: error });
263
295
  }
264
296
  }
265
- export function createRunConfigLoader(dependencies) {
266
- return async function loadRunConfig(request) {
297
+ export function normalizeConfig(config) {
298
+ return normalizeConfigForOrigin(parseConfig(config, null), null);
299
+ }
300
+ export function createConfigLoader(dependencies) {
301
+ return async function loadConfig(request) {
267
302
  const configPath = await resolveConfigPath(request, dependencies);
268
303
  if (configPath === null) {
269
- return normalizeConfig({}, null);
304
+ return { ...normalizeConfigForOrigin({}, null), configPath: null };
270
305
  }
271
306
  const configModule = await importConfigModule(configPath, dependencies);
272
307
  const configValue = readNamedConfigExport(configModule, configPath);
273
- return normalizeConfig(parseConfig(configValue, configPath), configPath);
308
+ return { ...normalizeConfigForOrigin(parseConfig(configValue, configPath), configPath), configPath };
274
309
  };
275
310
  }
276
- //# sourceMappingURL=run-config.js.map
311
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../source/config/config.ts"],"names":[],"mappings":"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"}
@@ -42,9 +42,9 @@ export declare const coveragePolicySchema: z.ZodReadonly<z.ZodObject<{
42
42
  lines: z.ZodOptional<z.ZodNumber>;
43
43
  }, z.core.$strict>>>;
44
44
  }, z.core.$strict>>;
45
- export type RunProjectCoverageOutput = z.infer<typeof coverageOutputSchema>;
46
- export type RunProjectCoveragePolicy = z.infer<typeof coveragePolicySchema>;
47
- export type RunProjectCoverageSources = z.infer<typeof coverageSourcesSchema>;
48
- export type RunProjectCoverageThresholds = z.infer<typeof coverageThresholdsSchema>;
45
+ export type ProjectCoverageOutput = z.infer<typeof coverageOutputSchema>;
46
+ export type ProjectCoveragePolicy = z.infer<typeof coveragePolicySchema>;
47
+ export type ProjectCoverageSources = z.infer<typeof coverageSourcesSchema>;
48
+ export type ProjectCoverageThresholds = z.infer<typeof coverageThresholdsSchema>;
49
49
  export {};
50
- //# sourceMappingURL=coverage-config-schema.d.ts.map
50
+ //# sourceMappingURL=coverage-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coverage-schema.d.ts","sourceRoot":"","sources":["../../../../source/config/coverage-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,QAAA,MAAM,oBAAoB;;;;;;EAAmD,CAAC;AAG9E,QAAA,MAAM,qBAAqB;;;;;;;6BAczB,CAAC;AAKH,QAAA,MAAM,wBAAwB;;;;mBAMf,CAAC;AAEhB,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;mBAOlB,CAAC;AAEhB,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AACzE,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AACzE,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAC3E,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
@@ -33,4 +33,4 @@ export const coveragePolicySchema = z
33
33
  thresholds: z.optional(coverageThresholdsSchema)
34
34
  })
35
35
  .readonly();
36
- //# sourceMappingURL=coverage-config-schema.js.map
36
+ //# sourceMappingURL=coverage-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coverage-schema.js","sourceRoot":"","sources":["../../../../source/config/coverage-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAE,CAAC,CAAC;AAC9E,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;AAElC,MAAM,qBAAqB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IACvD,CAAC;SACI,YAAY,CAAC;QACV,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,CAAC;QACvD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;KAC5B,CAAC;SACD,QAAQ,EAAE;IACf,CAAC;SACI,YAAY,CAAC;QACV,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,CAAC;QACvD,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAE,cAAc,CAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE;QACpE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;KACzB,CAAC;SACD,QAAQ,EAAE;CAClB,CAAC,CAAC;AAEH,MAAM,yBAAyB,GAAG,GAAG,CAAC;AACtC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;AAElF,MAAM,wBAAwB,GAAG,CAAC;KAC7B,YAAY,CAAC;IACV,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IAC9C,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IAC/C,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC;CAC9C,CAAC;KACD,QAAQ,EAAE,CAAC;AAEhB,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC;KAChC,YAAY,CAAC;IACV,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACxC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC7D,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IAC1C,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC;CACnD,CAAC;KACD,QAAQ,EAAE,CAAC"}
@@ -47,6 +47,11 @@ export const defaultTimeoutPolicy = {
47
47
  hardMilliseconds: defaultMicrotestHardTimeoutMilliseconds,
48
48
  softMilliseconds: defaultMicrotestTimeoutMilliseconds
49
49
  };
50
+ export const defaultBenchmarkTimeoutPolicy = {
51
+ collectionMilliseconds: 5000,
52
+ hardMilliseconds: 60_000,
53
+ softMilliseconds: 40_000
54
+ };
50
55
  export const defaultIntegrationTimeoutPolicy = {
51
56
  collectionMilliseconds: defaultIntegrationCollectionTimeoutMilliseconds,
52
57
  hardMilliseconds: defaultIntegrationHardTimeoutMilliseconds,
@@ -66,4 +71,4 @@ export const defaultWorkerPoolDispatchPolicy = 'dynamic-lease';
66
71
  export const defaultWorkerPoolHedgingPolicy = { mode: 'off' };
67
72
  export const defaultWorkerLifecycle = 'reuse';
68
73
  export const defaultWorkDistribution = { mode: 'file' };
69
- //# sourceMappingURL=run-config-defaults.js.map
74
+ //# sourceMappingURL=defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../../source/config/defaults.ts"],"names":[],"mappings":"AAcA,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAEhC,MAAM,UAAU,wBAAwB,CACpC,SAAuF;IAEvF,OAAO,SAAS,EAAE,cAAc,IAAI,qBAAqB,CAAC;AAC9D,CAAC;AAED,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAE,oBAAoB,EAAE,oBAAoB,CAAE,CAAC;AACrF,MAAM,CAAC,MAAM,gDAAgD,GAAG,GAAG,CAAC;AACpE,MAAM,6CAA6C,GAAG,IAAI,CAAC;AAC3D,MAAM,uCAAuC,GAAG,IAAI,CAAC;AACrD,MAAM,mCAAmC,GAAG,GAAG,CAAC;AAChD,MAAM,+CAA+C,GAAG,IAAI,CAAC;AAC7D,MAAM,yCAAyC,GAAG,IAAI,CAAC;AACvD,MAAM,qCAAqC,GAAG,IAAI,CAAC;AACnD,MAAM,4BAA4B,GAAG,oBAAoB,CAAC;AAC1D,MAAM,0BAA0B,GAAG,YAAY,CAAC;AAEhD,MAAM,CAAC,MAAM,aAAa,GAAG;IACzB,UAAU,EAAE,KAAK;IACjB,SAAS,EAAE,YAAY;CACjB,CAAC;AAEX,MAAM,CAAC,MAAM,0BAA0B,GAAwB;IAC3D,OAAO,EAAE;QACL,mBAAmB,EAAE,IAAI;QACzB,yBAAyB,EAAE,IAAI;QAC/B,gBAAgB,EAAE,IAAI;QACtB,+BAA+B,EAAE,IAAI;KACxC;IACD,OAAO,EAAE,KAAK;IACd,4BAA4B,EAAE,gDAAgD;CACjF,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAwB;IAC3D,UAAU,EAAE,SAAS;CACxB,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAmB;IACjD,eAAe,EAAE,IAAI;IACrB,OAAO,EAAE,CAAE,IAAI,EAAE,MAAM,CAAE;IACzB,OAAO,EAAE;QACL,OAAO,EAAE,EAAE;QACX,IAAI,EAAE,QAAQ;KACjB;IACD,UAAU,EAAE;QACR,QAAQ,EAAE,IAAI;QACd,SAAS,EAAE,IAAI;QACf,KAAK,EAAE,IAAI;KACd;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAkB;IAC/C,sBAAsB,EAAE,6CAA6C;IACrE,gBAAgB,EAAE,uCAAuC;IACzD,gBAAgB,EAAE,mCAAmC;CACxD,CAAC;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAkB;IACxD,sBAAsB,EAAE,IAAI;IAC5B,gBAAgB,EAAE,MAAM;IACxB,gBAAgB,EAAE,MAAM;CAC3B,CAAC;AAEF,MAAM,CAAC,MAAM,+BAA+B,GAAkB;IAC1D,sBAAsB,EAAE,+CAA+C;IACvE,gBAAgB,EAAE,yCAAyC;IAC3D,gBAAgB,EAAE,qCAAqC;CAC1D,CAAC;AAEF,MAAM,UAAU,2BAA2B,CACvC,SAAgD;IAEhD,OAAO;QACH,cAAc,EAAE,wBAAwB,CAAC,SAAS,CAAC;QACnD,YAAY,EAAE,SAAS,EAAE,YAAY,IAAI,4BAA4B;QACrE,UAAU,EAAE,SAAS,EAAE,UAAU,IAAI,0BAA0B;KAClE,CAAC;AACN,CAAC;AAED,MAAM,CAAC,MAAM,8BAA8B,GAAG,aAAa,CAAC;AAC5D,MAAM,CAAC,MAAM,4BAA4B,GAAG,YAAY,CAAC;AACzD,MAAM,CAAC,MAAM,iCAAiC,GAA+B,qBAAqB,CAAC;AACnG,MAAM,CAAC,MAAM,+BAA+B,GAA6B,eAAe,CAAC;AACzF,MAAM,CAAC,MAAM,8BAA8B,GAA4B,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACvF,MAAM,CAAC,MAAM,sBAAsB,GAAoB,OAAO,CAAC;AAC/D,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAW,CAAC"}
@@ -1,22 +1,20 @@
1
1
  import type { TestRetryPolicy } from '../engine/retry-policy.ts';
2
- import type { ResourceOwnershipPlan } from './resource-ownership-plan.ts';
3
2
  export type RetryArtifactPolicy = 'all' | 'first-failure-and-final' | 'last-failure-and-final';
4
3
  export type IntegrationRetryPolicy = TestRetryPolicy & {
5
4
  readonly artifacts: RetryArtifactPolicy;
6
5
  };
7
- export type RunExecutionResourceOwnershipPlan = ResourceOwnershipPlan;
8
6
  type Either<First, Second> = First | Second;
9
- export type RunMicrotestExecutionShape<MaxConcurrency, ProcessModel, Scheduling> = {
7
+ export type MicrotestExecutionShape<MaxConcurrency, ProcessModel, Scheduling> = {
10
8
  readonly maxConcurrency: MaxConcurrency;
11
9
  readonly processModel: ProcessModel;
12
10
  readonly scheduling: Scheduling;
13
11
  };
14
- type RunSupervisedIntegrationExecution<MaxConcurrency, Scheduling> = {
12
+ type SupervisedIntegrationExecution<MaxConcurrency, Scheduling> = {
15
13
  readonly maxConcurrency: MaxConcurrency;
16
14
  readonly processModel: 'supervised-process';
17
15
  readonly scheduling: Scheduling;
18
16
  };
19
- type RunWorkerPoolExecution<AssignmentPolicy, DispatchPolicy, HedgingPolicy, HostProcess, MaxConcurrency, Scheduling, WorkerLifecycle, WorkDistribution> = {
17
+ type WorkerPoolExecution<AssignmentPolicy, DispatchPolicy, HedgingPolicy, HostProcess, MaxConcurrency, Scheduling, WorkerLifecycle, WorkDistribution> = {
20
18
  readonly assignmentPolicy: AssignmentPolicy;
21
19
  readonly dispatchPolicy: DispatchPolicy;
22
20
  readonly hedging: HedgingPolicy;
@@ -28,6 +26,6 @@ type RunWorkerPoolExecution<AssignmentPolicy, DispatchPolicy, HedgingPolicy, Hos
28
26
  readonly workerLifecycle: WorkerLifecycle;
29
27
  readonly workDistribution: WorkDistribution;
30
28
  };
31
- export type RunIntegrationExecutionShape<AssignmentPolicy, DispatchPolicy, HedgingPolicy, HostProcess, MaxConcurrency, Scheduling, WorkerLifecycle, WorkDistribution> = Either<RunSupervisedIntegrationExecution<MaxConcurrency, Scheduling>, RunWorkerPoolExecution<AssignmentPolicy, DispatchPolicy, HedgingPolicy, HostProcess, MaxConcurrency, Scheduling, WorkerLifecycle, WorkDistribution>>;
29
+ export type IntegrationExecutionShape<AssignmentPolicy, DispatchPolicy, HedgingPolicy, HostProcess, MaxConcurrency, Scheduling, WorkerLifecycle, WorkDistribution> = Either<SupervisedIntegrationExecution<MaxConcurrency, Scheduling>, WorkerPoolExecution<AssignmentPolicy, DispatchPolicy, HedgingPolicy, HostProcess, MaxConcurrency, Scheduling, WorkerLifecycle, WorkDistribution>>;
32
30
  export {};
33
- //# sourceMappingURL=run-execution-config.d.ts.map
31
+ //# sourceMappingURL=execution.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../../../source/config/execution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE,MAAM,MAAM,mBAAmB,GAAG,KAAK,GAAG,yBAAyB,GAAG,wBAAwB,CAAC;AAC/F,MAAM,MAAM,sBAAsB,GAAG,eAAe,GAAG;IAAE,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;CAAE,CAAC;AAEpG,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,IAAI,KAAK,GAAG,MAAM,CAAC;AAE5C,MAAM,MAAM,uBAAuB,CAAC,cAAc,EAAE,YAAY,EAAE,UAAU,IAAI;IAC5E,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;CACnC,CAAC;AAEF,KAAK,8BAA8B,CAAC,cAAc,EAAE,UAAU,IAAI;IAC9D,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,YAAY,EAAE,oBAAoB,CAAC;IAC5C,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;CACnC,CAAC;AAEF,KAAK,mBAAmB,CACpB,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,WAAW,EACX,cAAc,EACd,UAAU,EACV,eAAe,EACf,gBAAgB,IAChB;IACA,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAC5C,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC;IACrC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,yBAAyB,CACjC,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,WAAW,EACX,cAAc,EACd,UAAU,EACV,eAAe,EACf,gBAAgB,IAChB,MAAM,CACN,8BAA8B,CAAC,cAAc,EAAE,UAAU,CAAC,EAC1D,mBAAmB,CACf,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,WAAW,EACX,cAAc,EACd,UAAU,EACV,eAAe,EACf,gBAAgB,CACnB,CACJ,CAAC"}
@@ -0,0 +1,41 @@
1
+ import { ConfigError } from "./config-error.js";
2
+ const deniedNodeArgumentNames = new Set([
3
+ '--env-file',
4
+ '--eval',
5
+ '--experimental-loader',
6
+ '--import',
7
+ '--loader',
8
+ '--print',
9
+ '--require',
10
+ '--run',
11
+ '--test',
12
+ '--watch'
13
+ ]);
14
+ function nodeArgumentName(argument) {
15
+ const assignmentIndex = argument.indexOf('=');
16
+ return assignmentIndex === -1 ? argument : argument.slice(0, assignmentIndex);
17
+ }
18
+ function validateNodeArgument(argument) {
19
+ if (argument.length === 0) {
20
+ throw new ConfigError('Host process Node argument must not be empty.');
21
+ }
22
+ if (argument.includes('\n') || argument.includes('\0')) {
23
+ throw new ConfigError('Host process Node argument must stay on one command-line token.');
24
+ }
25
+ if (!argument.startsWith('--')) {
26
+ throw new ConfigError(`Host process Node argument must use long-form syntax: ${argument}`);
27
+ }
28
+ const argumentName = nodeArgumentName(argument);
29
+ if (deniedNodeArgumentNames.has(argumentName)) {
30
+ throw new ConfigError(`Host process Node argument is not supported: ${argumentName}`);
31
+ }
32
+ }
33
+ export function validateHostProcess(hostProcess) {
34
+ if (hostProcess.kind === 'direct') {
35
+ return;
36
+ }
37
+ for (const argument of hostProcess.nodeArguments) {
38
+ validateNodeArgument(argument);
39
+ }
40
+ }
41
+ //# sourceMappingURL=host-process.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host-process.js","sourceRoot":"","sources":["../../../../source/config/host-process.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC;IACpC,YAAY;IACZ,QAAQ;IACR,uBAAuB;IACvB,UAAU;IACV,UAAU;IACV,SAAS;IACT,WAAW;IACX,OAAO;IACP,QAAQ;IACR,SAAS;CACZ,CAAC,CAAC;AAEH,SAAS,gBAAgB,CAAC,QAAgB;IACtC,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAE9C,OAAO,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;AAClF,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAgB;IAC1C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,WAAW,CAAC,+CAA+C,CAAC,CAAC;IAC3E,CAAC;IAED,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,WAAW,CAAC,iEAAiE,CAAC,CAAC;IAC7F,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,WAAW,CAAC,yDAAyD,QAAQ,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED,MAAM,YAAY,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAEhD,IAAI,uBAAuB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,WAAW,CAAC,gDAAgD,YAAY,EAAE,CAAC,CAAC;IAC1F,CAAC;AACL,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,WAAwB;IACxD,IAAI,WAAW,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO;IACX,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,WAAW,CAAC,aAAa,EAAE,CAAC;QAC/C,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;AACL,CAAC"}