@overkill-dev/run 0.0.80 → 0.0.82

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 (276) hide show
  1. package/baselines/calibration-reference.js +10 -0
  2. package/baselines/calibration-reference.js.map +1 -0
  3. package/baselines/calibration-store.js +185 -0
  4. package/baselines/calibration-store.js.map +1 -0
  5. package/baselines/performance-adapter.d.ts +1 -1
  6. package/baselines/performance-adapter.d.ts.map +1 -1
  7. package/baselines/performance-baseline.d.ts +17 -3
  8. package/baselines/performance-baseline.d.ts.map +1 -1
  9. package/baselines/performance-baseline.js +13 -1
  10. package/baselines/performance-baseline.js.map +1 -1
  11. package/baselines/performance-evaluation.js +12 -11
  12. package/baselines/performance-evaluation.js.map +1 -1
  13. package/baselines/performance-observation.js +74 -0
  14. package/baselines/performance-observation.js.map +1 -0
  15. package/baselines/performance-plan.js +28 -2
  16. package/baselines/performance-plan.js.map +1 -1
  17. package/baselines/performance-schema.js +14 -1
  18. package/baselines/performance-schema.js.map +1 -1
  19. package/baselines/performance-store.js +2 -14
  20. package/baselines/performance-store.js.map +1 -1
  21. package/baselines/performance-workflow.js +18 -10
  22. package/baselines/performance-workflow.js.map +1 -1
  23. package/bench/benchmark-run-report.js +14 -5
  24. package/bench/benchmark-run-report.js.map +1 -1
  25. package/bench/benchmark-statistics-schema.d.ts +4 -0
  26. package/bench/benchmark-statistics-schema.d.ts.map +1 -0
  27. package/bench/benchmark-statistics-schema.js +40 -0
  28. package/bench/benchmark-statistics-schema.js.map +1 -0
  29. package/bench/calibration-evidence.js +80 -0
  30. package/bench/calibration-evidence.js.map +1 -0
  31. package/bench/calibration-machine.d.ts +14 -0
  32. package/bench/calibration-machine.d.ts.map +1 -0
  33. package/bench/calibration-machine.js +43 -0
  34. package/bench/calibration-machine.js.map +1 -0
  35. package/bench/calibration-report.d.ts +24 -0
  36. package/bench/calibration-report.d.ts.map +1 -0
  37. package/bench/calibration-report.js +28 -0
  38. package/bench/calibration-report.js.map +1 -0
  39. package/bench/cpu-reference-workload.d.ts +2 -0
  40. package/bench/cpu-reference-workload.d.ts.map +1 -0
  41. package/bench/cpu-reference-workload.js +12 -0
  42. package/bench/cpu-reference-workload.js.map +1 -0
  43. package/bench/host-calibration-result.d.ts +15 -0
  44. package/bench/host-calibration-result.d.ts.map +1 -0
  45. package/engine/async-leak-diagnostics.js +18 -5
  46. package/engine/async-leak-diagnostics.js.map +1 -1
  47. package/engine/benchmark-environment.d.ts +8 -0
  48. package/engine/benchmark-environment.d.ts.map +1 -0
  49. package/engine/benchmark-garbage-collection.d.ts +0 -5
  50. package/engine/benchmark-garbage-collection.d.ts.map +1 -1
  51. package/engine/benchmark-garbage-collection.js.map +1 -1
  52. package/engine/benchmark-node.d.ts +3 -2
  53. package/engine/benchmark-node.d.ts.map +1 -1
  54. package/engine/benchmark-node.js +9 -0
  55. package/engine/benchmark-node.js.map +1 -0
  56. package/engine/benchmark-result.d.ts +85 -1
  57. package/engine/benchmark-result.d.ts.map +1 -1
  58. package/engine/benchmark-result.js.map +1 -1
  59. package/engine/case-attempt-execution.js +25 -17
  60. package/engine/case-attempt-execution.js.map +1 -1
  61. package/engine/case-body-execution.js +1 -0
  62. package/engine/case-body-execution.js.map +1 -1
  63. package/engine/execution-async-leak-policy.d.ts +3 -0
  64. package/engine/execution-async-leak-policy.d.ts.map +1 -0
  65. package/engine/execution-async-leak-policy.js +38 -23
  66. package/engine/execution-async-leak-policy.js.map +1 -1
  67. package/engine/execution-error-ownership.d.ts +6 -0
  68. package/engine/execution-error-ownership.d.ts.map +1 -0
  69. package/engine/execution-error-ownership.js +83 -0
  70. package/engine/execution-error-ownership.js.map +1 -0
  71. package/engine/execution-global-error-observer.d.ts +1 -4
  72. package/engine/execution-global-error-observer.d.ts.map +1 -1
  73. package/engine/execution-global-error-observer.js +41 -81
  74. package/engine/execution-global-error-observer.js.map +1 -1
  75. package/engine/execution-observation.js +198 -0
  76. package/engine/execution-observation.js.map +1 -0
  77. package/engine/execution-options.d.ts +9 -0
  78. package/engine/execution-options.d.ts.map +1 -1
  79. package/engine/execution-preparation.d.ts +13 -0
  80. package/engine/execution-preparation.d.ts.map +1 -0
  81. package/engine/execution-preparation.js +34 -0
  82. package/engine/execution-preparation.js.map +1 -0
  83. package/engine/execution-supervision-state.js +8 -0
  84. package/engine/execution-supervision-state.js.map +1 -1
  85. package/engine/execution-supervision.d.ts +1 -1
  86. package/engine/execution-supervision.d.ts.map +1 -1
  87. package/engine/execution-supervision.js +3 -3
  88. package/engine/execution-supervision.js.map +1 -1
  89. package/engine/execution-test-plan-cases.js +11 -9
  90. package/engine/execution-test-plan-cases.js.map +1 -1
  91. package/engine/execution.d.ts +3 -1
  92. package/engine/execution.d.ts.map +1 -1
  93. package/engine/execution.js +3 -27
  94. package/engine/execution.js.map +1 -1
  95. package/engine/infrastructure-resource-observation.js +55 -0
  96. package/engine/infrastructure-resource-observation.js.map +1 -0
  97. package/engine/reporter-dispatcher.d.ts.map +1 -1
  98. package/engine/reporter-dispatcher.js +6 -3
  99. package/engine/reporter-dispatcher.js.map +1 -1
  100. package/engine/reporter-output-scope.js +7 -2
  101. package/engine/reporter-output-scope.js.map +1 -1
  102. package/engine/resource-owner-observation.js +97 -7
  103. package/engine/resource-owner-observation.js.map +1 -1
  104. package/execution-termination.d.ts +2 -0
  105. package/execution-termination.d.ts.map +1 -0
  106. package/execution-termination.js +8 -0
  107. package/execution-termination.js.map +1 -0
  108. package/invocation-budget.d.ts +13 -0
  109. package/invocation-budget.d.ts.map +1 -0
  110. package/invocation-budget.js +35 -0
  111. package/invocation-budget.js.map +1 -0
  112. package/package.json +13 -1
  113. package/packages/run/benchmark-calibration.entry-point.d.ts +12 -14
  114. package/packages/run/benchmark-calibration.entry-point.d.ts.map +1 -1
  115. package/packages/run/benchmark-calibration.entry-point.js +11 -54
  116. package/packages/run/benchmark-calibration.entry-point.js.map +1 -1
  117. package/packages/run/command-line.entry-point.d.ts.map +1 -1
  118. package/packages/run/command-line.entry-point.js +4 -0
  119. package/packages/run/command-line.entry-point.js.map +1 -1
  120. package/packages/run/run.entry-point.d.ts +2 -0
  121. package/packages/run/run.entry-point.d.ts.map +1 -1
  122. package/packages/run/run.entry-point.js +2 -0
  123. package/packages/run/run.entry-point.js.map +1 -1
  124. package/readme.md +27 -0
  125. package/run/benchmark-baseline-commands.js +9 -4
  126. package/run/benchmark-baseline-commands.js.map +1 -1
  127. package/run/benchmark-baseline-execution.js +20 -0
  128. package/run/benchmark-baseline-execution.js.map +1 -0
  129. package/run/benchmark-baseline-operations.js +0 -14
  130. package/run/benchmark-baseline-operations.js.map +1 -1
  131. package/run/benchmark-baseline-preparation.js +63 -0
  132. package/run/benchmark-baseline-preparation.js.map +1 -0
  133. package/run/benchmark-baseline-run.js +1 -44
  134. package/run/benchmark-baseline-run.js.map +1 -1
  135. package/run/benchmark-calibration.js +7 -0
  136. package/run/benchmark-calibration.js.map +1 -1
  137. package/run/benchmark-commands.d.ts.map +1 -1
  138. package/run/benchmark-commands.js +31 -0
  139. package/run/benchmark-commands.js.map +1 -1
  140. package/run/benchmark-definition-schema.js +4 -1
  141. package/run/benchmark-definition-schema.js.map +1 -1
  142. package/run/benchmark-execution-environment.js +2 -1
  143. package/run/benchmark-execution-environment.js.map +1 -1
  144. package/run/benchmark-garbage-collection.js +14 -3
  145. package/run/benchmark-garbage-collection.js.map +1 -1
  146. package/run/benchmark-normalization-preparation.js +59 -0
  147. package/run/benchmark-normalization-preparation.js.map +1 -0
  148. package/run/benchmark-placement.js +1 -1
  149. package/run/benchmark-placement.js.map +1 -1
  150. package/run/benchmark-policy-schema.js +30 -0
  151. package/run/benchmark-policy-schema.js.map +1 -0
  152. package/run/benchmark-report-metadata.js +5 -3
  153. package/run/benchmark-report-metadata.js.map +1 -1
  154. package/run/benchmark-result-schema.js +5 -53
  155. package/run/benchmark-result-schema.js.map +1 -1
  156. package/run/calibration-baseline-references.js +39 -0
  157. package/run/calibration-baseline-references.js.map +1 -0
  158. package/run/calibration-capture-session.js +97 -0
  159. package/run/calibration-capture-session.js.map +1 -0
  160. package/run/calibration-inventory.js +27 -0
  161. package/run/calibration-inventory.js.map +1 -0
  162. package/run/calibration-maintenance.js +88 -0
  163. package/run/calibration-maintenance.js.map +1 -0
  164. package/run/capability-policy.js +82 -79
  165. package/run/capability-policy.js.map +1 -1
  166. package/run/child-process-outbox.js +13 -5
  167. package/run/child-process-outbox.js.map +1 -1
  168. package/run/collected-run-execution.js +3 -7
  169. package/run/collected-run-execution.js.map +1 -1
  170. package/run/command-line-command-namespace.js +3 -0
  171. package/run/command-line-command-namespace.js.map +1 -1
  172. package/run/command-line-command.d.ts +1 -0
  173. package/run/command-line-command.d.ts.map +1 -1
  174. package/run/command-line-command.js.map +1 -1
  175. package/run/default-run-engine.js +25 -0
  176. package/run/default-run-engine.js.map +1 -1
  177. package/run/execution-session-child.js +9 -2
  178. package/run/execution-session-child.js.map +1 -1
  179. package/run/execution-session-collected.js +7 -1
  180. package/run/execution-session-collected.js.map +1 -1
  181. package/run/execution-session-environment.js +1 -1
  182. package/run/execution-session-environment.js.map +1 -1
  183. package/run/execution-session-host.js +17 -0
  184. package/run/execution-session-host.js.map +1 -1
  185. package/run/execution-session-lifecycle.js +38 -10
  186. package/run/execution-session-lifecycle.js.map +1 -1
  187. package/run/execution-session-observation.js +95 -0
  188. package/run/execution-session-observation.js.map +1 -0
  189. package/run/execution-session-ownership.js +23 -0
  190. package/run/execution-session-ownership.js.map +1 -0
  191. package/run/execution-session-process.js +26 -4
  192. package/run/execution-session-process.js.map +1 -1
  193. package/run/execution-session-schema.js +2 -0
  194. package/run/execution-session-schema.js.map +1 -1
  195. package/run/execution-session-supervised.js +21 -75
  196. package/run/execution-session-supervised.js.map +1 -1
  197. package/run/execution-session.js +37 -35
  198. package/run/execution-session.js.map +1 -1
  199. package/run/frozen-policy-validation.js +8 -2
  200. package/run/frozen-policy-validation.js.map +1 -1
  201. package/run/frozen-supervised-command-schema.js +2 -2
  202. package/run/frozen-supervised-command-schema.js.map +1 -1
  203. package/run/initialized-run-collection.js +80 -0
  204. package/run/initialized-run-collection.js.map +1 -0
  205. package/run/initialized-run.js +2 -49
  206. package/run/initialized-run.js.map +1 -1
  207. package/run/node-child-process-starters.js +2 -0
  208. package/run/node-child-process-starters.js.map +1 -1
  209. package/run/path-containment.js +13 -0
  210. package/run/path-containment.js.map +1 -1
  211. package/run/permission-denial-runtime-policy.js +30 -50
  212. package/run/permission-denial-runtime-policy.js.map +1 -1
  213. package/run/run-cancellation.js.map +1 -1
  214. package/run/run-collected-resolution.js +7 -0
  215. package/run/run-collected-resolution.js.map +1 -1
  216. package/run/run-command-schema.js +2 -0
  217. package/run/run-command-schema.js.map +1 -1
  218. package/run/run-engine-primitives.d.ts +2 -1
  219. package/run/run-engine-primitives.d.ts.map +1 -1
  220. package/run/run-execution.js +1 -1
  221. package/run/run-execution.js.map +1 -1
  222. package/run/run-facts.js +1 -0
  223. package/run/run-facts.js.map +1 -1
  224. package/run/run-input-resolution.js +5 -3
  225. package/run/run-input-resolution.js.map +1 -1
  226. package/run/run-isolated-command.js +8 -2
  227. package/run/run-isolated-command.js.map +1 -1
  228. package/run/run-isolated-process.js +5 -0
  229. package/run/run-isolated-process.js.map +1 -1
  230. package/run/run-local-command.js +3 -7
  231. package/run/run-local-command.js.map +1 -1
  232. package/run/run-local-coverage.js +3 -7
  233. package/run/run-local-coverage.js.map +1 -1
  234. package/run/run-local-planning.js +2 -0
  235. package/run/run-local-planning.js.map +1 -1
  236. package/run/run-supervised-process.js +14 -3
  237. package/run/run-supervised-process.js.map +1 -1
  238. package/run/run-support.js +11 -9
  239. package/run/run-support.js.map +1 -1
  240. package/run/run-types.d.ts +5 -2
  241. package/run/run-types.d.ts.map +1 -1
  242. package/run/run-types.js.map +1 -1
  243. package/run/run.js +3 -1
  244. package/run/run.js.map +1 -1
  245. package/run/supervised-child-execution.js +1 -1
  246. package/run/supervised-child-execution.js.map +1 -1
  247. package/run/supervised-child-failure.js +9 -3
  248. package/run/supervised-child-failure.js.map +1 -1
  249. package/run/supervised-child-process.d.ts.map +1 -1
  250. package/run/supervised-child-process.js +2 -2
  251. package/run/supervised-child-process.js.map +1 -1
  252. package/run/supervised-child-test-plan.js +3 -3
  253. package/run/supervised-child-test-plan.js.map +1 -1
  254. package/run/supervised-child-transport.js +10 -5
  255. package/run/supervised-child-transport.js.map +1 -1
  256. package/run/supervised-child.entry-point.js +1 -0
  257. package/run/supervised-child.entry-point.js.map +1 -1
  258. package/run/supervised-child.js +49 -35
  259. package/run/supervised-child.js.map +1 -1
  260. package/run/supervised-protocol-schema.js +1 -1
  261. package/run/supervised-protocol-schema.js.map +1 -1
  262. package/run/supervised-protocol.js.map +1 -1
  263. package/run/supervised-run-process-policy.js +11 -0
  264. package/run/supervised-run-process-policy.js.map +1 -1
  265. package/run/supervised-run-runtime.js +1 -1
  266. package/run/supervised-run-runtime.js.map +1 -1
  267. package/run/worker-execution-engine.js +1 -1
  268. package/run/worker-execution-engine.js.map +1 -1
  269. package/run/worker-pool-command.js +4 -6
  270. package/run/worker-pool-command.js.map +1 -1
  271. package/run/worker-pool-host.entry-point.js +1 -1
  272. package/run/worker-pool-host.entry-point.js.map +1 -1
  273. package/run/worker-pool-protocol.js.map +1 -1
  274. package/run/worker-pool-worker-plan.js +2 -2
  275. package/run/worker-pool-worker-plan.js.map +1 -1
  276. package/software-bill-of-materials.cyclonedx.json +4 -4
@@ -30,6 +30,9 @@ export function createCommandLineCommandNamespace(loaders) {
30
30
  })
31
31
  },
32
32
  bench: {
33
+ calibrate: routeBenchmarkCommand(loaders.loadBenchmarkCommands, function selectCalibrateCommand(commands) {
34
+ return commands.calibrate;
35
+ }),
33
36
  baseline: {
34
37
  apply: routeBenchmarkCommand(loaders.loadBenchmarkCommands, function selectApplyCommand(commands) {
35
38
  return commands.baseline.apply;
@@ -1 +1 @@
1
- {"version":3,"file":"command-line-command-namespace.js","sourceRoot":"","sources":["../../../../source/run/command-line-command-namespace.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-line-command-namespace.js","sourceRoot":"","sources":["../../../../source/run/command-line-command-namespace.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,7 @@ export type CommandLineBenchmarkListRequest = ConfigLoadRequest & {
54
54
  readonly listRequest: CommandLineListRequest<string | null>;
55
55
  };
56
56
  export type CommandLineBenchmarkCommands = {
57
+ readonly calibrate: (request: CommandLineBenchmarkRunRequest) => Promise<CommandLineRunnerResult>;
57
58
  readonly baseline: CommandLineBenchmarkBaselineCommands;
58
59
  readonly listBenchmarks: (request: CommandLineBenchmarkListRequest) => Promise<CommandLineRunnerResult>;
59
60
  readonly runBenchmarks: (request: CommandLineBenchmarkRunRequest) => Promise<CommandLineRunnerResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"command-line-command.d.ts","sourceRoot":"","sources":["../../../../source/run/command-line-command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-line-command.d.ts","sourceRoot":"","sources":["../../../../source/run/command-line-command.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"command-line-command.js","sourceRoot":"","sources":["../../../../source/run/command-line-command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-line-command.js","sourceRoot":"","sources":["../../../../source/run/command-line-command.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,12 @@
1
1
  import { createClock } from '@enormora/clock';
2
+ import { readTestBodyResourceAttachments } from "../engine/test-body-resource-attachment.js";
3
+ import { readBenchmarkCalibrationBody } from "../engine/benchmark-node.js";
2
4
  import { createEngineWithOwner } from "../engine/engine.js";
3
5
  import { createExecute } from "../engine/execution.js";
4
6
  import { formatCaseId } from "../engine/identity.js";
5
7
  import { createReporterDispatcher } from "../engine/reporter-dispatcher.js";
6
8
  import { defaultTestNodeOwner } from "../engine/test-node.js";
9
+ import { RunCollectionError } from "./run-errors.js";
7
10
  function writeStdoutLine(line) {
8
11
  process.stdout.write(`${line}\n`);
9
12
  }
@@ -47,4 +50,26 @@ export const defaultRunEngine = {
47
50
  formatCaseId,
48
51
  ownsTestNode: engine.ownsTestNode
49
52
  };
53
+ export function calibrationCapturePlan(testPlan, context) {
54
+ if (context?.mode !== 'capture') {
55
+ return testPlan;
56
+ }
57
+ const captureCase = function captureCase(testCase) {
58
+ const { execution } = testCase;
59
+ if (execution.kind !== 'body' || execution.bodyMode !== 'benchmark') {
60
+ return testCase;
61
+ }
62
+ const calibration = readBenchmarkCalibrationBody(execution.body);
63
+ if (calibration === null) {
64
+ throw new RunCollectionError('Benchmark does not expose calibration resource execution.', { cause: null }, 'measurement');
65
+ }
66
+ return {
67
+ ...testCase,
68
+ resourceAttachments: readTestBodyResourceAttachments(calibration.resourceBody),
69
+ execution: { ...execution, body: calibration.body, resourceBody: calibration.resourceBody }
70
+ };
71
+ };
72
+ const [first, ...rest] = testPlan.cases;
73
+ return { ...testPlan, cases: [captureCase(first), ...rest.map(captureCase)] };
74
+ }
50
75
  //# sourceMappingURL=default-run-engine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"default-run-engine.js","sourceRoot":"","sources":["../../../../source/run/default-run-engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAwC,MAAM,qBAAqB,CAAC;AAClG,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,SAAS,eAAe,CAAC,IAAY;IACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,eAAe,CAAC,IAAY;IACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,uBAAuB;IAC5B,OAAO,OAAO,CAAC,sBAAsB,EAAE,CAAC;AAC5C,CAAC;AAED,SAAS,wBAAwB;IAC7B,MAAM,SAAS,GAAG,WAAW,EAAE,CAAC;IAEhC,OAAO;QACH,OAAO,EAAE,aAAa,CAAC;YACnB,oBAAoB,EAAE,IAAI;YAC1B,oBAAoB,EAAE,SAAS;YAC/B,uBAAuB;YACvB,kBAAkB,EAAE,wBAAwB,CAAC;gBACzC,MAAM,EAAE,EAAE,SAAS,EAAE,eAAe,EAAE;gBACtC,MAAM,EAAE,EAAE,SAAS,EAAE,eAAe,EAAE;gBACtC,SAAS;aACZ,CAAC;YACF,SAAS;SACZ,CAAC;QACF,SAAS;KACZ,CAAC;AACN,CAAC;AAED,MAAM,MAAM,GAAG,qBAAqB,CAAC,wBAAwB,EAAE,EAAE,oBAAoB,EAAE,CAAC,CAAC;AAEzF,MAAM,CAAC,MAAM,gBAAgB,GAAW;IACpC,sBAAsB,EAAE,MAAM,CAAC,sBAAsB;IACrD,uBAAuB,EAAE,MAAM,CAAC,uBAAuB;IACvD,UAAU,EAAE,MAAM,CAAC,UAAU;IAC7B,WAAW,EAAE,MAAM,CAAC,WAAW;IAC/B,qBAAqB,EAAE,MAAM,CAAC,qBAAqB;IACnD,WAAW,EAAE,MAAM,CAAC,WAAW;IAC/B,cAAc,EAAE,MAAM,CAAC,cAAc;IACrC,sBAAsB,EAAE,MAAM,CAAC,sBAAsB;IACrD,sBAAsB,EAAE,MAAM,CAAC,sBAAsB;IACrD,cAAc,EAAE,MAAM,CAAC,cAAc;IACrC,2BAA2B,EAAE,MAAM,CAAC,2BAA2B;IAC/D,OAAO,EAAE,MAAM,CAAC,OAAO;IACvB,YAAY;IACZ,YAAY,EAAE,MAAM,CAAC,YAAY;CACpC,CAAC"}
1
+ {"version":3,"file":"default-run-engine.js","sourceRoot":"","sources":["../../../../source/run/default-run-engine.ts"],"names":[],"mappings":"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"}
@@ -5,8 +5,14 @@ import { selectedTestPlan } from "./run-selection.js";
5
5
  import { supervisedAssignedPlan } from "./supervised-protocol.js";
6
6
  export async function completeSupervisedExecutionSession(command, sendData, execute) {
7
7
  const data = createStoredValue(null);
8
+ const cancellation = new AbortController();
8
9
  try {
9
- return await withExecutionLifecycle(command.session, command.policy.moduleBoundary, async function (lifecycle) {
10
+ return await withExecutionLifecycle(command.session, command.policy.moduleBoundary, {
11
+ signal: cancellation.signal,
12
+ async checkpoint(snapshot) {
13
+ await sendData(snapshot, 'execution-checkpoint');
14
+ }
15
+ }, async function (lifecycle) {
10
16
  try {
11
17
  return await execute(async function selectEligiblePlan(plan, assignment) {
12
18
  const eligible = supervisedAssignedPlan(plan, assignment);
@@ -18,11 +24,12 @@ export async function completeSupervisedExecutionSession(command, sendData, exec
18
24
  }
19
25
  finally {
20
26
  data.write(lifecycle.snapshot());
27
+ await sendData(data.read(), 'execution-checkpoint');
21
28
  }
22
29
  });
23
30
  }
24
31
  finally {
25
- sendData(data.read());
32
+ await sendData(data.read(), 'execution-data');
26
33
  }
27
34
  }
28
35
  //# sourceMappingURL=execution-session-child.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"execution-session-child.js","sourceRoot":"","sources":["../../../../source/run/execution-session-child.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EACH,sBAAsB,EAGzB,MAAM,0BAA0B,CAAC;AAOlC,MAAM,CAAC,KAAK,UAAU,kCAAkC,CACpD,OAAyE,EACzE,QAAmC,EACnC,OAAsE;IAEtE,MAAM,IAAI,GAAG,iBAAiB,CAAY,IAAI,CAAC,CAAC;IAChD,IAAI,CAAC;QACD,OAAO,MAAM,sBAAsB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,KAAK,WAAW,SAAS;YACzG,IAAI,CAAC;gBACD,OAAO,MAAM,OAAO,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAI,EAAE,UAAU;oBACnE,MAAM,QAAQ,GAAG,sBAAsB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;oBAC1D,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,4BAA4B,CAAC,QAAQ,CAAC,CAAC,CAAC;oBACjF,MAAM,QAAQ,GAAG,gBAAgB,CAAC,EAAE,GAAG,QAAQ,EAAE,eAAe,EAAE,QAAQ,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;oBAC/F,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;oBAC9B,OAAO,QAAQ,CAAC;gBACpB,CAAC,CAAC,CAAC;YACP,CAAC;oBAAS,CAAC;gBACP,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;YACrC,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;YAAS,CAAC;QACP,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1B,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"execution-session-child.js","sourceRoot":"","sources":["../../../../source/run/execution-session-child.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EACH,sBAAsB,EAGzB,MAAM,0BAA0B,CAAC;AAOlC,MAAM,CAAC,KAAK,UAAU,kCAAkC,CACpD,OAAyE,EACzE,QAA6F,EAC7F,OAAsE;IAEtE,MAAM,IAAI,GAAG,iBAAiB,CAAY,IAAI,CAAC,CAAC;IAChD,MAAM,YAAY,GAAG,IAAI,eAAe,EAAE,CAAC;IAC3C,IAAI,CAAC;QACD,OAAO,MAAM,sBAAsB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE;YAChF,MAAM,EAAE,YAAY,CAAC,MAAM;YAC3B,KAAK,CAAC,UAAU,CAAC,QAAQ;gBACrB,MAAM,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAC;YACrD,CAAC;SACJ,EAAE,KAAK,WAAW,SAAS;YACxB,IAAI,CAAC;gBACD,OAAO,MAAM,OAAO,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAI,EAAE,UAAU;oBACnE,MAAM,QAAQ,GAAG,sBAAsB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;oBAC1D,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,4BAA4B,CAAC,QAAQ,CAAC,CAAC,CAAC;oBACjF,MAAM,QAAQ,GAAG,gBAAgB,CAAC,EAAE,GAAG,QAAQ,EAAE,eAAe,EAAE,QAAQ,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;oBAC/F,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;oBAC9B,OAAO,QAAQ,CAAC;gBACpB,CAAC,CAAC,CAAC;YACP,CAAC;oBAAS,CAAC;gBACP,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACjC,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,sBAAsB,CAAC,CAAC;YACxD,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;YAAS,CAAC;QACP,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,gBAAgB,CAAC,CAAC;IAClD,CAAC;AACL,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { createStoredValue } from "../stored-value.js";
2
+ import { InvocationDeadlineExceededError, isInvocationCancellation } from "../invocation-budget.js";
2
3
  import { initializeRun } from "./initialized-run.js";
3
4
  import { withExecutionLifecycle } from "./execution-session-lifecycle.js";
4
5
  import { runExecutionFailure } from "./execution-failure.js";
@@ -23,16 +24,21 @@ export function createCollectedExecutionSession(options, dependencies) {
23
24
  async execute(call) {
24
25
  const reply = createStoredValue(null);
25
26
  try {
26
- return await withExecutionLifecycle(call.transport, options.command.policy.moduleBoundary, async function (lifecycle) {
27
+ return await withExecutionLifecycle(call.transport, options.command.policy.moduleBoundary, call, async function (lifecycle) {
27
28
  try {
28
29
  return await executeCollectedInvocation({ options, dependencies, collection }, lifecycle);
29
30
  }
30
31
  finally {
31
32
  reply.write(lifecycle.snapshot());
33
+ await call.checkpoint(reply.read());
32
34
  }
33
35
  });
34
36
  }
35
37
  catch (error) {
38
+ if (call.signal.reason instanceof InvocationDeadlineExceededError &&
39
+ isInvocationCancellation(error, call.signal)) {
40
+ return { kind: 'timeout', data: reply.read() };
41
+ }
36
42
  return { kind: 'failure', failure: runExecutionFailure(error), data: reply.read() };
37
43
  }
38
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"execution-session-collected.js","sourceRoot":"","sources":["../../../../source/run/execution-session-collected.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAoB,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAM7D,KAAK,UAAU,uBAAuB,CAClC,OAAmC,EACnC,YAAyC;IAEzC,MAAM,WAAW,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACvE,OAAO,MAAM,WAAW,CAAC,OAAO,EAAE,CAAC;AACvC,CAAC;AAQD,KAAK,UAAU,0BAA0B,CACrC,SAA6B,EAC7B,SAAgC;IAEhC,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE;QAC1C,uBAAuB,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;IACvE,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC;IACnC,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACzD,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;IAC9B,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IAClD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,QAAQ,EAAE,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC;AAC3F,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC3C,OAAmC,EACnC,YAAyC;IAEzC,MAAM,UAAU,GAAG,iBAAiB,CAA+B,IAAI,CAAC,CAAC;IACzE,OAAO;QACH,QAAQ,EAAE,QAAQ;QAClB,KAAK,CAAC,OAAO,CAAC,IAAI;YACd,MAAM,KAAK,GAAG,iBAAiB,CAA4B,IAAI,CAAC,CAAC;YACjE,IAAI,CAAC;gBACD,OAAO,MAAM,sBAAsB,CAC/B,IAAI,CAAC,SAAS,EACd,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,EACrC,KAAK,WAAW,SAAS;oBACrB,IAAI,CAAC;wBACD,OAAO,MAAM,0BAA0B,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;oBAC9F,CAAC;4BAAS,CAAC;wBACP,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACtC,CAAC;gBACL,CAAC,CACJ,CAAC;YACN,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,mBAAmB,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YACxF,CAAC;QACL,CAAC;KACJ,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"execution-session-collected.js","sourceRoot":"","sources":["../../../../source/run/execution-session-collected.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAoB,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,+BAA+B,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACpG,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAM7D,KAAK,UAAU,uBAAuB,CAClC,OAAmC,EACnC,YAAyC;IAEzC,MAAM,WAAW,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACvE,OAAO,MAAM,WAAW,CAAC,OAAO,EAAE,CAAC;AACvC,CAAC;AAQD,KAAK,UAAU,0BAA0B,CACrC,SAA6B,EAC7B,SAAgC;IAEhC,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE;QAC1C,uBAAuB,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;IACvE,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC;IACnC,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACzD,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;IAC9B,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IAClD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,QAAQ,EAAE,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC;AAC3F,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC3C,OAAmC,EACnC,YAAyC;IAEzC,MAAM,UAAU,GAAG,iBAAiB,CAA+B,IAAI,CAAC,CAAC;IACzE,OAAO;QACH,QAAQ,EAAE,QAAQ;QAClB,KAAK,CAAC,OAAO,CAAC,IAAI;YACd,MAAM,KAAK,GAAG,iBAAiB,CAA4B,IAAI,CAAC,CAAC;YACjE,IAAI,CAAC;gBACD,OAAO,MAAM,sBAAsB,CAC/B,IAAI,CAAC,SAAS,EACd,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,EACrC,IAAI,EACJ,KAAK,WAAW,SAAS;oBACrB,IAAI,CAAC;wBACD,OAAO,MAAM,0BAA0B,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;oBAC9F,CAAC;4BAAS,CAAC;wBACP,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;wBAClC,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;oBACxC,CAAC;gBACL,CAAC,CACJ,CAAC;YACN,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,IACI,IAAI,CAAC,MAAM,CAAC,MAAM,YAAY,+BAA+B;oBAC7D,wBAAwB,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,EAC9C,CAAC;oBACC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;gBACnD,CAAC;gBACD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,mBAAmB,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YACxF,CAAC;QACL,CAAC;KACJ,CAAC;AACN,CAAC"}
@@ -14,7 +14,7 @@ export function createExecutionSessionEnvironment(options, dependencies) {
14
14
  return {
15
15
  lifetime: 'fresh',
16
16
  async execute(call) {
17
- return await runFreshExecutionSession(options.command, call.transport, call.timeoutMilliseconds, call.signal);
17
+ return await runFreshExecutionSession(options.command, call.transport, call.timeoutMilliseconds, call);
18
18
  }
19
19
  };
20
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"execution-session-environment.js","sourceRoot":"","sources":["../../../../source/run/execution-session-environment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AAKnF,MAAM,UAAU,iCAAiC,CAC7C,OAAmC,EACnC,YAAyC;IAEzC,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,YAAY,KAAK,oBAAoB,EAAE,CAAC;QACjF,OAAO;YACH,QAAQ,EAAE,OAAO;YACjB,KAAK,CAAC,OAAO,CAAC,IAAI;gBACd,OAAO,MAAM,6BAA6B,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;YAC5E,CAAC;SACJ,CAAC;IACN,CAAC;IACD,IAAI,OAAO,CAAC,WAAW,KAAK,kBAAkB,EAAE,CAAC;QAC7C,OAAO;YACH,QAAQ,EAAE,OAAO;YACjB,KAAK,CAAC,OAAO,CAAC,IAAI;gBACd,OAAO,MAAM,wBAAwB,CACjC,OAAO,CAAC,OAAO,EACf,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,mBAAmB,EACxB,IAAI,CAAC,MAAM,CACd,CAAC;YACN,CAAC;SACJ,CAAC;IACN,CAAC;IACD,OAAO,+BAA+B,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;AAClE,CAAC"}
1
+ {"version":3,"file":"execution-session-environment.js","sourceRoot":"","sources":["../../../../source/run/execution-session-environment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AAKnF,MAAM,UAAU,iCAAiC,CAC7C,OAAmC,EACnC,YAAyC;IAEzC,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,YAAY,KAAK,oBAAoB,EAAE,CAAC;QACjF,OAAO;YACH,QAAQ,EAAE,OAAO;YACjB,KAAK,CAAC,OAAO,CAAC,IAAI;gBACd,OAAO,MAAM,6BAA6B,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;YAC5E,CAAC;SACJ,CAAC;IACN,CAAC;IACD,IAAI,OAAO,CAAC,WAAW,KAAK,kBAAkB,EAAE,CAAC;QAC7C,OAAO;YACH,QAAQ,EAAE,OAAO;YACjB,KAAK,CAAC,OAAO,CAAC,IAAI;gBACd,OAAO,MAAM,wBAAwB,CACjC,OAAO,CAAC,OAAO,EACf,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,mBAAmB,EACxB,IAAI,CACP,CAAC;YACN,CAAC;SACJ,CAAC;IACN,CAAC;IACD,OAAO,+BAA+B,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;AAClE,CAAC"}
@@ -6,6 +6,22 @@ import { loadRunEngineModule, loadRunTestModules, runDiscovery } from "./node-ru
6
6
  import { createCollectedExecutionSession } from "./execution-session-collected.js";
7
7
  import { executionHostRequestSchema, executionReplySchema } from "./execution-session-schema.js";
8
8
  import { parseFrozenMicrotestPolicy } from "./frozen-run-policy.js";
9
+ async function checkpoint(data) {
10
+ await new Promise(function (resolve, reject) {
11
+ if (process.send === undefined) {
12
+ reject(new Error('Execution host requires IPC.'));
13
+ return;
14
+ }
15
+ process.send({ kind: 'execution-checkpoint', data }, function (error) {
16
+ if (error === null) {
17
+ resolve();
18
+ }
19
+ else {
20
+ reject(error);
21
+ }
22
+ });
23
+ });
24
+ }
9
25
  function unsupportedIsolatedDispatch() {
10
26
  throw new Error('Fresh invocation hosts require an in-process profile.');
11
27
  }
@@ -40,6 +56,7 @@ const cancellation = new AbortController();
40
56
  const reply = executionReplySchema.parse(await environment.execute({
41
57
  transport: input.transport,
42
58
  timeoutMilliseconds: input.timeoutMilliseconds,
59
+ checkpoint,
43
60
  signal: cancellation.signal
44
61
  }));
45
62
  await new Promise(function (resolve, reject) {
@@ -1 +1 @@
1
- {"version":3,"file":"execution-session-host.js","sourceRoot":"","sources":["../../../../source/run/execution-session-host.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,qCAAqC,EAAE,MAAM,yCAAyC,CAAC;AAChG,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAC;AAC/G,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AACnF,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACjG,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAEpE,SAAS,2BAA2B;IAChC,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;AAC7E,CAAC;AACD,MAAM,YAAY,GAAG,qCAAqC,CAAC,4BAA4B,CAAC,gBAAgB,EAAE;IACtG,+BAA+B,EAAE,YAAY,CAAC,+BAA+B;IAC7E,mBAAmB;IACnB,kBAAkB;IAClB,oBAAoB,EAAE,2BAA2B;IACjD,mBAAmB,EAAE,2BAA2B;CACnD,CAAC,CAAC,CAAC;AACJ,MAAM,KAAK,GAAG,MAAM,IAAI,OAAO,CAAsD,UAAU,OAAO,EAAE,MAAM;IAC1G,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,OAAO;QACrC,IAAI,CAAC;YACD,OAAO,CAAC,0BAA0B,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,MAAM,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,iCAAiC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAC5G,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AACH,MAAM,WAAW,GAAG,+BAA+B,CAAC;IAChD,OAAO,EAAE;QACL,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE,0BAA0B,CAAC,KAAK,CAAC,MAAM,CAAC;QAChD,UAAU,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE;QAC5D,SAAS,EAAE,EAAE,cAAc,EAAE,yBAAyB,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;KAC5E;IACD,WAAW,EAAE,iBAAiB;IAC9B,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS;CACvC,EAAE,YAAY,CAAC,CAAC;AACjB,MAAM,YAAY,GAAG,IAAI,eAAe,EAAE,CAAC;AAC3C,MAAM,KAAK,GAAG,oBAAoB,CAAC,KAAK,CACpC,MAAM,WAAW,CAAC,OAAO,CAAC;IACtB,SAAS,EAAE,KAAK,CAAC,SAAS;IAC1B,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;IAC9C,MAAM,EAAE,YAAY,CAAC,MAAM;CAC9B,CAAC,CACL,CAAC;AACF,MAAM,IAAI,OAAO,CAAO,UAAU,OAAO,EAAE,MAAM;IAC7C,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,CAAC,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;QAClD,OAAO;IACX,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,KAAK;QAC/B,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACjB,OAAO,EAAE,CAAC;QACd,CAAC;aAAM,CAAC;YACJ,MAAM,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AACH,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC"}
1
+ {"version":3,"file":"execution-session-host.js","sourceRoot":"","sources":["../../../../source/run/execution-session-host.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExte
7
7
  return path;
8
8
  };
9
9
  import { z } from 'zod/v4';
10
+ import { withRunnerInfrastructure } from "../engine/execution-observation.js";
10
11
  import { withCaseExecutionLifecycle } from "../engine/case-execution-lifecycle.js";
11
12
  import { withExecutionSession } from "./execution-session-context.js";
12
13
  import { withFileModuleBoundary } from "./file-module-boundary.js";
@@ -20,25 +21,50 @@ function isExecutionLifecycle(value) {
20
21
  return typeof Reflect.get(value, method) === 'function';
21
22
  });
22
23
  }
23
- function validatedLifecycle(lifecycle) {
24
+ function validatedLifecycle(lifecycle, observation) {
24
25
  return {
25
26
  async select(plan) {
26
- return parseRunSelection(await lifecycle.select(plan));
27
+ observation.signal.throwIfAborted();
28
+ const selection = parseRunSelection(await withRunnerInfrastructure(async function selectLifecyclePlan() {
29
+ return await lifecycle.select(plan);
30
+ }));
31
+ await withRunnerInfrastructure(async function deliverLifecycleCheckpoint() {
32
+ await observation.checkpoint(z.json().parse(lifecycle.snapshot()));
33
+ });
34
+ return selection;
27
35
  },
28
36
  async beforeCases() {
29
- await lifecycle.beforeCases();
37
+ observation.signal.throwIfAborted();
38
+ await withRunnerInfrastructure(async function runLifecycleOperation() {
39
+ await lifecycle.beforeCases();
40
+ });
30
41
  },
31
42
  async enterCase(work) {
32
- await lifecycle.enterCase(work);
43
+ observation.signal.throwIfAborted();
44
+ await withRunnerInfrastructure(async function runLifecycleOperation() {
45
+ await lifecycle.enterCase(work);
46
+ });
33
47
  },
34
48
  async completeCase(result, errors) {
35
- return z.enum(['continue', 'stop']).parse(await lifecycle.completeCase(result, errors));
49
+ const admission = z.enum(['continue', 'stop']).parse(await withRunnerInfrastructure(async function completeLifecycleCase() {
50
+ return await lifecycle.completeCase(result, errors);
51
+ }));
52
+ if (!['pass', 'skip'].includes(result.verdict) || errors.length > 0) {
53
+ await withRunnerInfrastructure(async function deliverLifecycleCheckpoint() {
54
+ await observation.checkpoint(z.json().parse(lifecycle.snapshot()));
55
+ });
56
+ }
57
+ return observation.signal.aborted ? 'stop' : admission;
36
58
  },
37
59
  snapshot() {
38
- return z.json().parse(lifecycle.snapshot());
60
+ return withRunnerInfrastructure(function readLifecycleSnapshot() {
61
+ return z.json().parse(lifecycle.snapshot());
62
+ });
39
63
  },
40
64
  async dispose() {
41
- await lifecycle.dispose();
65
+ await withRunnerInfrastructure(async function runLifecycleOperation() {
66
+ await lifecycle.dispose();
67
+ });
42
68
  }
43
69
  };
44
70
  }
@@ -54,7 +80,7 @@ async function loadExecutionLifecycle(transport) {
54
80
  if (!isExecutionLifecycle(created)) {
55
81
  throw new TypeError('Execution lifecycle factory returned an invalid lifecycle.');
56
82
  }
57
- return validatedLifecycle(created);
83
+ return created;
58
84
  }
59
85
  async function runOwnedLifecycle(lifecycle, run) {
60
86
  const [execution] = await Promise.allSettled([withCaseExecutionLifecycle({
@@ -77,10 +103,12 @@ async function runOwnedLifecycle(lifecycle, run) {
77
103
  }
78
104
  return execution.value;
79
105
  }
80
- export async function withExecutionLifecycle(transport, boundary, run) {
106
+ export async function withExecutionLifecycle(transport, boundary, observation, run) {
81
107
  return await withExecutionSession(transport, async function () {
82
108
  return await withFileModuleBoundary(boundary, async function () {
83
- const lifecycle = await loadExecutionLifecycle(transport);
109
+ const lifecycle = validatedLifecycle(await withRunnerInfrastructure(async function bootstrapLifecycle() {
110
+ return await loadExecutionLifecycle(transport);
111
+ }), observation);
84
112
  return await runOwnedLifecycle(lifecycle, run);
85
113
  });
86
114
  });
@@ -1 +1 @@
1
- {"version":3,"file":"execution-session-lifecycle.js","sourceRoot":"","sources":["../../../../source/run/execution-session-lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execution-session-lifecycle.js","sourceRoot":"","sources":["../../../../source/run/execution-session-lifecycle.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,95 @@
1
+ import { createStoredValue } from "../stored-value.js";
2
+ import { InvocationDeadlineExceededError } from "../invocation-budget.js";
3
+ import { executionTermination } from "../execution-termination.js";
4
+ import { envelopeMessage } from "./child-process-protocol.js";
5
+ import { supervisedChildMessageSchema } from "./supervised-protocol-schema.js";
6
+ import { supervisedChildCorrelationId } from "./supervised-protocol.js";
7
+ import { runExecutionFailure } from "./execution-failure.js";
8
+ function storeExecutionData(observation, message) {
9
+ if (observation.delivered.read()) {
10
+ throw new Error('Duplicate execution lifecycle data.');
11
+ }
12
+ observation.delivered.write(message.kind === 'execution-data');
13
+ observation.data.write(message.data);
14
+ }
15
+ function readExecutionData(observation, message) {
16
+ const decoded = envelopeMessage(message, supervisedChildCorrelationId, supervisedChildMessageSchema);
17
+ if (decoded === null) {
18
+ return;
19
+ }
20
+ if (decoded.kind === 'result') {
21
+ observation.result.write(decoded.result);
22
+ }
23
+ else if (decoded.kind === 'execution-data' || decoded.kind === 'execution-checkpoint') {
24
+ storeExecutionData(observation, decoded);
25
+ }
26
+ }
27
+ export function observeExecutionMessage(observation, message) {
28
+ try {
29
+ readExecutionData(observation, message);
30
+ }
31
+ catch (error) {
32
+ observation.failure.write(error instanceof Error ? error : new Error('Invalid execution lifecycle data.', { cause: error }));
33
+ observation.invalid.abort();
34
+ }
35
+ }
36
+ function missingDataReply(result, call, observation) {
37
+ const data = observation.data.read();
38
+ if (call.signal.aborted && result.runnerErrors.every(function (error) {
39
+ return error.subtype === 'crash';
40
+ })) {
41
+ return { kind: 'failure', failure: runExecutionFailure(call.signal.reason), data };
42
+ }
43
+ const errors = result
44
+ .runnerErrors
45
+ .map(function (error) {
46
+ return error.message;
47
+ })
48
+ .join('\n');
49
+ return {
50
+ kind: 'failure',
51
+ failure: runExecutionFailure(new Error(`Execution lifecycle data was not delivered. ${errors}`)),
52
+ data
53
+ };
54
+ }
55
+ function interruptedExecutionReply(result, call, observation) {
56
+ const timedOut = result.runnerErrors.some(function hardTimeout(error) {
57
+ return error.subtype === 'crash' && executionTermination(error.cause) === 'hard-timeout';
58
+ }) || call.signal.reason instanceof InvocationDeadlineExceededError;
59
+ if (!timedOut) {
60
+ return missingDataReply(result, call, observation);
61
+ }
62
+ const onlyInterruption = result.runnerErrors.every(function timeoutError(error) {
63
+ return error.subtype === 'crash' && executionTermination(error.cause) !== null;
64
+ });
65
+ return onlyInterruption
66
+ ? { kind: 'timeout', data: observation.data.read() }
67
+ : { kind: 'result', result, data: observation.data.read(), deadlineExceeded: true };
68
+ }
69
+ export function observedReply(result, call, observation) {
70
+ const failure = observation.failure.read();
71
+ if (failure !== null) {
72
+ return { kind: 'failure', failure: runExecutionFailure(failure), data: observation.data.read() };
73
+ }
74
+ if (!observation.delivered.read()) {
75
+ return interruptedExecutionReply(result, call, observation);
76
+ }
77
+ const completed = observation.result.read();
78
+ const selected = completed === null ? result : {
79
+ ...result,
80
+ bySuite: completed.bySuite,
81
+ planStatus: completed.planStatus,
82
+ summary: { ...result.summary, planned: completed.summary.planned }
83
+ };
84
+ return { kind: 'result', result: selected, data: observation.data.read(), deadlineExceeded: false };
85
+ }
86
+ export function createExecutionDataObservation() {
87
+ return {
88
+ data: createStoredValue(null),
89
+ delivered: createStoredValue(false),
90
+ failure: createStoredValue(null),
91
+ invalid: new AbortController(),
92
+ result: createStoredValue(null)
93
+ };
94
+ }
95
+ //# sourceMappingURL=execution-session-observation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution-session-observation.js","sourceRoot":"","sources":["../../../../source/run/execution-session-observation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import { kill } from "./supervised-child-process.js";
2
+ export function createExecutionHostOwnership(start, signal) {
3
+ const children = new Map();
4
+ return {
5
+ async start(input) {
6
+ const child = await start(input);
7
+ children.set(child, new Promise(function observeClose(resolve) {
8
+ child.on('close', resolve);
9
+ }));
10
+ if (signal.aborted) {
11
+ kill(child);
12
+ }
13
+ return child;
14
+ },
15
+ async dispose() {
16
+ for (const child of children.keys()) {
17
+ kill(child);
18
+ }
19
+ await Promise.all(children.values());
20
+ }
21
+ };
22
+ }
23
+ //# sourceMappingURL=execution-session-ownership.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution-session-ownership.js","sourceRoot":"","sources":["../../../../source/run/execution-session-ownership.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAA+B,MAAM,+BAA+B,CAAC;AAQlF,MAAM,UAAU,4BAA4B,CACxC,KAA0D,EAC1D,MAA6B;IAE7B,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAyC,CAAC;IAClE,OAAO;QACH,KAAK,CAAC,KAAK,CAAC,KAAK;YACb,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;YACjC,QAAQ,CAAC,GAAG,CACR,KAAK,EACL,IAAI,OAAO,CAAO,SAAS,YAAY,CAAC,OAAO;gBAC3C,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC/B,CAAC,CAAC,CACL,CAAC;YACF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,IAAI,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,KAAK,CAAC,OAAO;YACT,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;gBAClC,IAAI,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC;YACD,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QACzC,CAAC;KACJ,CAAC;AACN,CAAC"}
@@ -1,9 +1,26 @@
1
1
  import { fork } from 'node:child_process';
2
2
  import { fileURLToPath } from 'node:url';
3
3
  import { sanitizedChildEnvironment } from "./supervised-child-process.js";
4
- import { executionReplySchema } from "./execution-session-schema.js";
4
+ import { executionHostMessageSchema } from "./execution-session-schema.js";
5
5
  import { executionSessionProcessArgument, executionSessionProcessUrl, readExecutionSessionEnvironment } from "./execution-session-process.entry-point.js";
6
- export async function runFreshExecutionSession(command, transport, timeoutMilliseconds, signal) {
6
+ async function deliverCheckpoint(message, delivery) {
7
+ try {
8
+ await delivery.observation.checkpoint(message.data);
9
+ }
10
+ catch (error) {
11
+ delivery.reject(error);
12
+ }
13
+ }
14
+ function deliverHostMessage(message, delivery) {
15
+ const decoded = executionHostMessageSchema.parse(message);
16
+ if (decoded.kind === 'execution-checkpoint') {
17
+ delivery.pending.add(deliverCheckpoint(decoded, delivery));
18
+ }
19
+ else {
20
+ delivery.resolve(decoded);
21
+ }
22
+ }
23
+ function startFreshExecutionHost(command, signal) {
7
24
  signal.throwIfAborted();
8
25
  const child = fork(fileURLToPath(executionSessionProcessUrl), [executionSessionProcessArgument], {
9
26
  cwd: command.policy.cwd,
@@ -19,15 +36,19 @@ export async function runFreshExecutionSession(command, transport, timeoutMillis
19
36
  const closed = new Promise(function (resolve) {
20
37
  child.once('close', resolve);
21
38
  });
39
+ return { child, closed, pending: new Set() };
40
+ }
41
+ export async function runFreshExecutionSession(command, transport, timeoutMilliseconds, observation) {
42
+ const { child, closed, pending } = startFreshExecutionHost(command, observation.signal);
22
43
  try {
23
44
  return await new Promise(function (resolve, reject) {
24
45
  child.once('error', reject);
25
46
  child.once('exit', function (code, termination) {
26
47
  reject(new Error(`Execution host exited without a result (${String(code)}, ${String(termination)}).`));
27
48
  });
28
- child.once('message', function (message) {
49
+ child.on('message', function (message) {
29
50
  try {
30
- resolve(executionReplySchema.parse(message));
51
+ deliverHostMessage(message, { observation, pending, resolve, reject });
31
52
  }
32
53
  catch (error) {
33
54
  reject(error instanceof Error
@@ -51,6 +72,7 @@ export async function runFreshExecutionSession(command, transport, timeoutMillis
51
72
  finally {
52
73
  child.kill('SIGKILL');
53
74
  await closed;
75
+ await Promise.all(pending);
54
76
  }
55
77
  }
56
78
  //# sourceMappingURL=execution-session-process.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"execution-session-process.js","sourceRoot":"","sources":["../../../../source/run/execution-session-process.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EACH,+BAA+B,EAC/B,0BAA0B,EAC1B,+BAA+B,EAClC,MAAM,4CAA4C,CAAC;AAKpD,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC1C,OAAyB,EACzB,SAAgC,EAChC,mBAA2B,EAC3B,MAAmB;IAEnB,MAAM,CAAC,cAAc,EAAE,CAAC;IACxB,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,0BAA0B,CAAC,EAAE,CAAE,+BAA+B,CAAE,EAAE;QAC/F,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG;QACvB,GAAG,EAAE,yBAAyB,CAAC,+BAA+B,EAAE,EAAE,WAAW,CAAC;QAC9E,QAAQ,EAAE,EAAE;QACZ,aAAa,EAAE,UAAU;QACzB,UAAU,EAAE,SAAS;QACrB,MAAM;QACN,KAAK,EAAE,CAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAE;KAC7C,CAAC,CAAC;IACH,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,MAAM,GAAG,IAAI,OAAO,CAAO,UAAU,OAAO;QAC9C,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;IACH,IAAI,CAAC;QACD,OAAO,MAAM,IAAI,OAAO,CAAoB,UAAU,OAAO,EAAE,MAAM;YACjE,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC5B,KAAK,CAAC,IAAI,CACN,MAAM,EACN,UAAU,IAAI,EAAE,WAAW;gBACvB,MAAM,CACF,IAAI,KAAK,CAAC,2CAA2C,MAAM,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CACjG,CAAC;YACN,CAAC,CACJ,CAAC;YACF,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,OAAO;gBACnC,IAAI,CAAC;oBACD,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;gBACjD,CAAC;gBAAC,OAAO,KAAc,EAAE,CAAC;oBACtB,MAAM,CACF,KAAK,YAAY,KAAK;wBAClB,CAAC,CAAC,KAAK;wBACP,CAAC,CAAC,IAAI,KAAK,CAAC,2CAA2C,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CACjF,CAAC;gBACN,CAAC;YACL,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,IAAI,CACN;gBACI,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,IAAI;gBAC7B,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,SAAS;gBACvC,SAAS;gBACT,mBAAmB;aACtB,EACD,UAAU,KAAK;gBACX,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBACjB,MAAM,CAAC,KAAK,CAAC,CAAC;gBAClB,CAAC;YACL,CAAC,CACJ,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;YAAS,CAAC;QACP,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtB,MAAM,MAAM,CAAC;IACjB,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"execution-session-process.js","sourceRoot":"","sources":["../../../../source/run/execution-session-process.ts"],"names":[],"mappings":"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"}
@@ -38,6 +38,8 @@ export const executionReplySchema = z.discriminatedUnion('kind', [
38
38
  z.strictObject({ kind: z.literal('failure'), failure: runExecutionFailureSchema, data: z.json() }),
39
39
  z.strictObject({ kind: z.literal('timeout'), data: z.json() })
40
40
  ]);
41
+ const executionCheckpointSchema = z.strictObject({ kind: z.literal('execution-checkpoint'), data: z.json() });
42
+ export const executionHostMessageSchema = z.union([executionReplySchema, executionCheckpointSchema]);
41
43
  export const executionHostRequestSchema = z.strictObject({
42
44
  policy: frozenMicrotestPolicySchema,
43
45
  seed: z.strictObject({ value: z.bigint().nonnegative() }),
@@ -1 +1 @@
1
- {"version":3,"file":"execution-session-schema.js","sourceRoot":"","sources":["../../../../source/run/execution-session-schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execution-session-schema.js","sourceRoot":"","sources":["../../../../source/run/execution-session-schema.ts"],"names":[],"mappings":"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"}