@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
@@ -0,0 +1,76 @@
1
+ import { z } from 'zod/v4';
2
+ export const serializedPropertyKeySchema = z.strictObject({ kind: z.enum(['string', 'symbol']), value: z.string() });
3
+ const truncationSchema = z
4
+ .strictObject({
5
+ budget: z.number(),
6
+ reason: z.enum([
7
+ 'array-entries',
8
+ 'object-entries',
9
+ 'depth',
10
+ 'serialized-bytes',
11
+ 'string-bytes',
12
+ 'visited-nodes'
13
+ ])
14
+ })
15
+ .nullable();
16
+ const byteFields = { bytes: z.array(z.number()), byteLength: z.number(), truncation: truncationSchema };
17
+ export const serializedValueSchema = z.lazy(function () {
18
+ const properties = z.array(z.strictObject({ key: serializedPropertyKeySchema, value: serializedValueSchema }));
19
+ return z.discriminatedUnion('kind', [
20
+ z.strictObject({ kind: z.literal('null') }),
21
+ z.strictObject({ kind: z.literal('undefined') }),
22
+ z.strictObject({ kind: z.literal('boolean'), value: z.boolean() }),
23
+ z.strictObject({ kind: z.literal('bigint'), value: z.string() }),
24
+ z.strictObject({ kind: z.literal('symbol'), value: z.string() }),
25
+ z.strictObject({
26
+ kind: z.literal('number'),
27
+ value: z.union([z.number(), z.enum(['-0', '-Infinity', 'Infinity', 'NaN'])])
28
+ }),
29
+ z.strictObject({ kind: z.literal('string'), value: z.string(), truncation: truncationSchema }),
30
+ z.strictObject({ kind: z.literal('function'), id: z.number(), name: z.string().nullable() }),
31
+ z.strictObject({ kind: z.literal('circular'), reference: z.number() }),
32
+ z.strictObject({ kind: z.literal('date'), value: z.string().nullable() }),
33
+ z.strictObject({ kind: z.literal('opaque'), type: z.enum(['promise', 'weak-map', 'weak-set']) }),
34
+ z.strictObject({ kind: z.literal('regexp'), flags: z.string(), source: z.string() }),
35
+ z.strictObject({ kind: z.literal('unavailable'), reason: z.string() }),
36
+ z.strictObject({
37
+ kind: z.literal('object'),
38
+ constructorName: z.string(),
39
+ entries: properties,
40
+ truncation: truncationSchema
41
+ }),
42
+ z.strictObject({
43
+ kind: z.literal('error'),
44
+ name: z.string(),
45
+ message: z.string(),
46
+ entries: properties,
47
+ truncation: truncationSchema
48
+ }),
49
+ z.strictObject({
50
+ kind: z.literal('array'),
51
+ entries: properties,
52
+ length: z.number(),
53
+ truncation: truncationSchema
54
+ }),
55
+ z.strictObject({
56
+ kind: z.literal('map'),
57
+ entries: z.array(z.strictObject({ key: serializedValueSchema, value: serializedValueSchema })),
58
+ size: z.number(),
59
+ truncation: truncationSchema
60
+ }),
61
+ z.strictObject({
62
+ kind: z.literal('set'),
63
+ size: z.number(),
64
+ values: z.array(serializedValueSchema),
65
+ truncation: truncationSchema
66
+ }),
67
+ z.strictObject({ kind: z.enum(['array-buffer', 'data-view']), ...byteFields }),
68
+ z.strictObject({
69
+ kind: z.literal('typed-array'),
70
+ constructorName: z.string(),
71
+ length: z.number(),
72
+ ...byteFields
73
+ })
74
+ ]);
75
+ });
76
+ //# sourceMappingURL=serialized-value-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serialized-value-schema.js","sourceRoot":"","sources":["../../../../source/run/serialized-value-schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import { preparedResourceAttachments, currentAttachmentLimits } from "../packages/resources/attachment-context.entry-point.js";
2
+ import { snapshotAttachmentJson } from "./attachment-json.js";
3
+ async function retainWitness(target, snapshot, witness) {
4
+ const metadata = { name: 'scenario-witness', mediaType: 'application/json' };
5
+ if (snapshot === null) {
6
+ return await target.json(metadata, witness);
7
+ }
8
+ const writer = await target.open({ ...metadata, kind: 'binary' });
9
+ await writer.write(Buffer.from(snapshot.encoded));
10
+ return await writer.close();
11
+ }
12
+ export function simulationWitnessAttachments(attachments, resource, work, attempt) {
13
+ return {
14
+ ...attachments,
15
+ async witness(input) {
16
+ const target = preparedResourceAttachments(resource, { kind: 'attempt', work, attempt }, 'native', 'witness');
17
+ if (target === null) {
18
+ throw new TypeError('Simulation witnesses require runner-managed integration execution.');
19
+ }
20
+ const limits = currentAttachmentLimits();
21
+ if (limits === null) {
22
+ throw new TypeError('Simulation witnesses require attachment limits.');
23
+ }
24
+ const witness = {
25
+ ...input,
26
+ version: 1,
27
+ case: work.case,
28
+ kind: 'simulation',
29
+ resource: { name: resource },
30
+ seed: input.seed === null ? null : input.seed.toString()
31
+ };
32
+ const snapshot = snapshotAttachmentJson(witness, limits.maxArtifactBytes);
33
+ const artifact = await retainWitness(target, snapshot, witness);
34
+ return { ...artifact, id: { ...artifact.id, subtype: 'witness' }, source: 'native' };
35
+ }
36
+ };
37
+ }
38
+ //# sourceMappingURL=simulation-witness.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simulation-witness.js","sourceRoot":"","sources":["../../../../source/run/simulation-witness.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,2BAA2B,EAC3B,uBAAuB,EAC1B,MAAM,yDAAyD,CAAC;AAIjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,KAAK,UAAU,aAAa,CACxB,MAA0B,EAC1B,QAAmD,EACnD,OAAgB;IAEhB,MAAM,QAAQ,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC;IAC7E,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,MAAM,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IAClE,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IAClD,OAAO,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,4BAA4B,CACxC,WAA+B,EAC/B,QAAgB,EAChB,IAAY,EACZ,OAAkB;IAElB,OAAO;QACH,GAAG,WAAW;QACd,KAAK,CAAC,OAAO,CAAC,KAAK;YACf,MAAM,MAAM,GAAG,2BAA2B,CACtC,QAAQ,EACR,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,EAClC,QAAQ,EACR,SAAS,CACZ,CAAC;YACF,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBAClB,MAAM,IAAI,SAAS,CAAC,oEAAoE,CAAC,CAAC;YAC9F,CAAC;YACD,MAAM,MAAM,GAAG,uBAAuB,EAAE,CAAC;YACzC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBAClB,MAAM,IAAI,SAAS,CAAC,iDAAiD,CAAC,CAAC;YAC3E,CAAC;YACD,MAAM,OAAO,GAAG;gBACZ,GAAG,KAAK;gBACR,OAAO,EAAE,CAAC;gBACV,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,YAAY;gBAClB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC5B,IAAI,EAAE,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE;aAC3D,CAAC;YACF,MAAM,QAAQ,GAAG,sBAAsB,CAAC,OAAO,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;YAC1E,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YAChE,OAAO,EAAE,GAAG,QAAQ,EAAE,EAAE,EAAE,EAAE,GAAG,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;QACzF,CAAC;KACJ,CAAC;AACN,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { crashError } from "./supervised-run-resource-policy.js";
2
+ export function recordChildProtocolFailure(state, reason, observedAtMicroseconds, restricted) {
3
+ const activeAttempts = Array.from(state.activeCases.values(), function affectedAttempt(active) {
4
+ return { attempt: active.attempt, case: active.id, work: active.workId };
5
+ });
6
+ state.recordRunnerError({
7
+ attributedTo: null,
8
+ attributedToAttempt: null,
9
+ attributedToWork: null,
10
+ cause: { activeAttempts, capability: 'child-process', reason, strictness: 'observed' },
11
+ diagnostics: [{ label: 'strictness', value: 'observed' }],
12
+ message: reason,
13
+ subtype: restricted ? 'runtime-policy' : 'crash'
14
+ });
15
+ state.recordTerminalActiveCases('crashed', observedAtMicroseconds);
16
+ }
17
+ export function recordPrematureChildExit(child, state, observedAtMicroseconds) {
18
+ const code = String(child.exitCode);
19
+ const signal = String(child.signalCode);
20
+ state.recordRunnerError({
21
+ ...crashError(state, `Supervised child terminated without successful protocol completion (code: ${code}, signal: ${signal}).`),
22
+ diagnostics: [{ label: 'exit-code', value: code }, { label: 'signal', value: signal }]
23
+ });
24
+ state.recordTerminalActiveCases('crashed', observedAtMicroseconds);
25
+ }
26
+ //# sourceMappingURL=supervised-child-failure.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supervised-child-failure.js","sourceRoot":"","sources":["../../../../source/run/supervised-child-failure.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AAGjE,MAAM,UAAU,0BAA0B,CACtC,KAAyB,EACzB,MAAc,EACd,sBAA8B,EAC9B,UAAmB;IAEnB,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,SAAS,eAAe,CAAC,MAAM;QACzF,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,iBAAiB,CAAC;QACpB,YAAY,EAAE,IAAI;QAClB,mBAAmB,EAAE,IAAI;QACzB,gBAAgB,EAAE,IAAI;QACtB,KAAK,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE;QACtF,WAAW,EAAE,CAAE,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,CAAE;QAC3D,OAAO,EAAE,MAAM;QACf,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO;KACnD,CAAC,CAAC;IACH,KAAK,CAAC,yBAAyB,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,wBAAwB,CACpC,KAA6B,EAC7B,KAAyB,EACzB,sBAA8B;IAE9B,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAExC,KAAK,CAAC,iBAAiB,CAAC;QACpB,GAAG,UAAU,CACT,KAAK,EACL,6EAA6E,IAAI,aAAa,MAAM,IAAI,CAC3G;QACD,WAAW,EAAE,CAAE,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,CAAE;KAC3F,CAAC,CAAC;IACH,KAAK,CAAC,yBAAyB,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;AACvE,CAAC"}
@@ -9,6 +9,8 @@ export type SupervisedChildCoverage = {
9
9
  };
10
10
  type SupervisedChildEventListener = {
11
11
  readonly error: (error: Error) => void;
12
+ readonly close: () => void;
13
+ readonly disconnect: () => void;
12
14
  readonly exit: () => void;
13
15
  readonly message: (message: unknown) => void;
14
16
  };
@@ -22,6 +24,7 @@ type SupervisedChildProcessOutput = {
22
24
  readonly on: (event: 'data', listener: (chunk: Uint8Array) => void) => unknown;
23
25
  };
24
26
  export type SupervisedChildProcess = {
27
+ readonly closeTransport: () => void;
25
28
  readonly exitCode: number | null;
26
29
  readonly kill: (signal: 'SIGKILL') => unknown;
27
30
  readonly on: (...registration: SupervisedChildListenerRegistration) => unknown;
@@ -1 +1 @@
1
- {"version":3,"file":"supervised-child-process.d.ts","sourceRoot":"","sources":["../../../../source/run/supervised-child-process.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACE,kCAAkC,EAAE,MAAM,kCAAkC,CAAC;AAE3F,OAAO,KAAK,EAAE,aAAsC,EAAE,MAAM,gBAAgB,CAAC;MAQvE,MAAM,uBAAuB,GAAG;IAClC,QAAQ,CAAC,WAAW,EAAE;QAClB,QAAQ,CAAC,0BAA0B,EAAE,GAAG,CAAC;QACzC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;KACrC,CAAC;IACF,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CACjC,CAAC;AAEF,KAAK,4BAA4B,GAAG;IAChC,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;CAChD,CAAC;AAEF,KAAK,mCAAmC,GAAG;IACvC,QAAQ,EAAE,KAAK,IAAI,MAAM,4BAA4B,GAAG,SAAS;QAC7D,KAAK;QACL,4BAA4B,CAAC,KAAK,CAAC;KACtC;CACJ,CAAC,MAAM,4BAA4B,CAAC,CAAC;AAEtC,KAAK,4BAA4B,GAAG;IAChC,QAAQ,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,KAAK,OAAO,CAAC;CAClF,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,OAAO,CAAC;IAC9C,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,YAAY,EAAE,mCAAmC,KAAK,OAAO,CAAC;IAC/E,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAAK,OAAO,CAAC;IACvE,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,4BAA4B,GAAG,IAAI,CAAC;IACrD,QAAQ,CAAC,MAAM,EAAE,4BAA4B,GAAG,IAAI,CAAC;CACxD,CAAC;AAEF,wBAAgB,IAAI,CAAC,KAAK,EAAE,sBAAsB,GAAG,IAAI,CAIxD;KAEW,eAKP,YAiD2B,GAAG;IAC/B,QAAQ,CAAC,sBAAsB,EAAE;QAC7B,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;KACzC,CAAC;IACF,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,uBAAuB,GAAG,IAAI,CAAC;IAClD,QAAQ,CAAC,oBAAoB,EAAE,kCAAkC,CAAC;IAClE,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;CACtC,CAAC;MASI,MAAM,6BAAyC,GAGlC,QAGJ,EAAE,eACR,YAK+B,KACnC,OAAO,CAAC,sBAAsB,CAAC,CAAC;AAOrC,MAAM,CAAqC,EAGtC,CAAC"}
1
+ {"version":3,"file":"supervised-child-process.d.ts","sourceRoot":"","sources":["../../../../source/run/supervised-child-process.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEE,kCAAkC,EAAE,MAAM,kCAAkC,CAAC;AAE3F,OAAO,KAAK,EAAE,aAAsC,EAAE,MAAM,gBAAgB,CAAC;MAQvE,MAAM,uBAAuB,GAAG;IAClC,QAAQ,CAAC,WAAW,EAAE;QAClB,QAAQ,CAAC,0BAA0B,EAAE,GAAG,CAAC;QACzC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;KACrC,CAAC;IACF,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CACjC,CAAC;AAEF,KAAK,4BAA4B,GAAG;IAChC,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;CAChD,CAAC;AAEF,KAAK,mCAAmC,GAAG;IACvC,QAAQ,EAAE,KAAK,IAAI,MAAM,4BAA4B,GAAG,SAAS;QAC7D,KAAK;QACL,4BAA4B,CAAC,KAAK,CAAC;KACtC;CACJ,CAAC,MAAM,4BAA4B,CAAC,CAAC;AAEtC,KAAK,4BAA4B,GAAG;IAChC,QAAQ,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,KAAK,OAAO,CAAC;CAClF,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACjC,QAAQ,CAAC,cAAc,EAAE,MAAM,IAAI,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,OAAO,CAAC;IAC9C,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,YAAY,EAAE,mCAAmC,KAAK,OAAO,CAAC;IAC/E,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAAK,OAAO,CAAC;IACvE,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,4BAA4B,GAAG,IAAI,CAAC;IACrD,QAAQ,CAAC,MAAM,EAAE,4BAA4B,GAAG,IAAI,CAAC;CACxD,CAAC;AAEF,wBAAgB,IAAI,CAAC,KAAK,EAAE,sBAAsB,GAAG,IAAI,CAKxD;KAEW,eAKP,YAiD2B,GAAG;IAC/B,QAAQ,CAAC,sBAAsB,EAAE;QAC7B,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;KACzC,CAAC;IACF,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,uBAAuB,GAAG,IAAI,CAAC;IAClD,QAAQ,CAAC,oBAAoB,EAAE,kCAAkC,CAAC;IAClE,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;CACtC,CAAC;MASI,MAAM,6BAAyC,GAGlC,QAGJ,EAAE,eACR,YAK+B,KACnC,OAAO,CAAC,sBAAsB,CAAC,CAAC;AAOrC,MAAM,CAAqC,EAGtC,CAAC"}
@@ -1,8 +1,10 @@
1
1
  import { dirname, join } from 'node:path';
2
+ import { startChildShutdown } from "./child-process-shutdown.js";
2
3
  import { childRoleArgument, supervisedChildRole } from "./child-process-roles.js";
3
4
  import { crashError } from "./supervised-run-resource-policy.js";
4
5
  import { remainingHardTimeoutMilliseconds } from "./supervised-run-state.js";
5
6
  export function kill(child) {
7
+ startChildShutdown(child);
6
8
  if (child.pid !== undefined && child.exitCode === null && child.signalCode === null) {
7
9
  child.kill('SIGKILL');
8
10
  }
@@ -48,7 +50,7 @@ function sanitizedMicrotestEnvironment(environmentVariables) {
48
50
  return environment;
49
51
  }
50
52
  export function sanitizedChildEnvironment(environmentVariables, testFamily) {
51
- if (testFamily === 'integration') {
53
+ if (testFamily !== 'microtest') {
52
54
  return definedEnvironmentVariables(environmentVariables);
53
55
  }
54
56
  return sanitizedMicrotestEnvironment(environmentVariables);
@@ -1 +1 @@
1
- {"version":3,"file":"supervised-child-process.js","sourceRoot":"","sources":["../../../../source/run/supervised-child-process.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"supervised-child-process.js","sourceRoot":"","sources":["../../../../source/run/supervised-child-process.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,125 @@
1
+ import { childProcessEnvelope, envelopeMessage } from "./child-process-protocol.js";
2
+ import { observeChildShutdown, startChildShutdown } from "./child-process-shutdown.js";
3
+ import { recordChildProtocolFailure, recordPrematureChildExit } from "./supervised-child-failure.js";
4
+ import { kill } from "./supervised-child-process.js";
5
+ import { supervisedChildCorrelationId } from "./supervised-protocol.js";
6
+ import { supervisedChildMessageSchema } from "./supervised-protocol-schema.js";
7
+ function successfulChildExit(child) {
8
+ return (child.exitCode === null || child.exitCode === 0) && child.signalCode === null;
9
+ }
10
+ function createSupervisedObserver(transport) {
11
+ const observations = { reportedFailure: false, boundaryFailure: false };
12
+ function recordFailure(reason, restricted) {
13
+ if (!observations.boundaryFailure) {
14
+ transport.terminalFailure.write(true);
15
+ observations.boundaryFailure = true;
16
+ recordChildProtocolFailure(transport.state, reason, Number(transport.wallClock.currentMonotonicMicroseconds), restricted);
17
+ }
18
+ }
19
+ function fail(reason, restricted) {
20
+ if (observations.boundaryFailure) {
21
+ return;
22
+ }
23
+ recordFailure(reason, restricted);
24
+ kill(transport.child);
25
+ transport.interrupted();
26
+ }
27
+ function failureReport(message) {
28
+ return message.kind === 'event' && message.event.kind === 'runner-error';
29
+ }
30
+ function terminalReport(message) {
31
+ return message.kind === 'result' || failureReport(message);
32
+ }
33
+ function deliver(message) {
34
+ if (transport.terminalFailure.read() && !terminalReport(message)) {
35
+ return;
36
+ }
37
+ if (!transport.accept(message)) {
38
+ fail('Invalid supervised child IPC lifecycle.', transport.restricted);
39
+ return;
40
+ }
41
+ if (failureReport(message)) {
42
+ observations.reportedFailure = true;
43
+ }
44
+ transport.receive(message);
45
+ if (transport.completed()) {
46
+ startChildShutdown(transport.child);
47
+ }
48
+ }
49
+ function receiveValidatedMessage(message) {
50
+ const decoded = envelopeMessage(message, supervisedChildCorrelationId, supervisedChildMessageSchema);
51
+ if (decoded !== null) {
52
+ deliver(decoded);
53
+ }
54
+ else if (transport.restricted) {
55
+ fail('Runtime policy violation: unexpected supervised child IPC message.', true);
56
+ }
57
+ }
58
+ function shouldReportPrematureExit() {
59
+ return !observations.reportedFailure && !observations.boundaryFailure &&
60
+ transport.state.runnerErrors().every(function alreadyReportedCrash(error) {
61
+ return error.subtype !== 'crash';
62
+ });
63
+ }
64
+ function recordIncompleteExit() {
65
+ const alreadyFailed = transport.terminalFailure.read();
66
+ transport.terminalFailure.write(true);
67
+ if (alreadyFailed && successfulChildExit(transport.child) && !observations.reportedFailure) {
68
+ transport.interrupted();
69
+ return;
70
+ }
71
+ const observedAtMicroseconds = Number(transport.wallClock.currentMonotonicMicroseconds);
72
+ if (shouldReportPrematureExit()) {
73
+ recordPrematureChildExit(transport.child, transport.state, observedAtMicroseconds);
74
+ }
75
+ else {
76
+ transport.state.recordTerminalActiveCases('crashed', observedAtMicroseconds);
77
+ }
78
+ transport.interrupted();
79
+ }
80
+ return {
81
+ fail,
82
+ timeout() {
83
+ recordFailure('Supervised child shutdown exceeded one second.', false);
84
+ transport.interrupted();
85
+ },
86
+ receive(message) {
87
+ if (observations.boundaryFailure) {
88
+ return;
89
+ }
90
+ try {
91
+ receiveValidatedMessage(message);
92
+ }
93
+ catch (error) {
94
+ fail(error instanceof Error ? error.message : 'Invalid supervised child IPC payload.', transport.restricted);
95
+ }
96
+ },
97
+ exit() {
98
+ if (!transport.completed() || !successfulChildExit(transport.child)) {
99
+ recordIncompleteExit();
100
+ }
101
+ },
102
+ disconnect() {
103
+ if (!transport.completed()) {
104
+ recordIncompleteExit();
105
+ kill(transport.child);
106
+ }
107
+ }
108
+ };
109
+ }
110
+ export function observeSupervisedTransport(transport) {
111
+ const observer = createSupervisedObserver(transport);
112
+ transport.child.on('message', observer.receive);
113
+ transport.child.on('error', function recordChildError(error) {
114
+ observer.fail(error.message, false);
115
+ });
116
+ transport.child.on('disconnect', observer.disconnect);
117
+ observeChildShutdown(transport.child, transport.wallClock, observer.timeout, function finishAfterDraining() {
118
+ observer.exit();
119
+ transport.finished();
120
+ });
121
+ }
122
+ export function sendSupervisedCommand(child, command) {
123
+ child.send(childProcessEnvelope(supervisedChildCorrelationId, command));
124
+ }
125
+ //# sourceMappingURL=supervised-child-transport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supervised-child-transport.js","sourceRoot":"","sources":["../../../../source/run/supervised-child-transport.ts"],"names":[],"mappings":"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"}
@@ -1,54 +1,60 @@
1
1
  import { createClock } from '@enormora/clock';
2
- import { childProcessEnvelope, envelopeMessage } from "./child-process-protocol.js";
2
+ import { createChildProcessOutbox } from "./child-process-outbox.js";
3
+ import { supervisedParentMessageSchema } from "./supervised-protocol-schema.js";
4
+ import { envelopeMessage } from "./child-process-protocol.js";
3
5
  import { readProcessEnvironment, readWebStorage } from "./node-host-readers.js";
4
6
  import { loadRunEngineModule, loadRunTestModules, runDiscovery } from "./node-run-dependencies.entry-point.js";
5
- import { installIpcRestriction as installProcessIpcRestriction, installProcessExecutionRestriction as installNodeProcessExecutionRestriction } from "./node-process-capability-restrictions.js";
7
+ import { observeProcessIpcListeners } from "./node-process-policy-observation.js";
6
8
  import { createNodeResourceUsageTracker } from "./resource-usage.js";
7
9
  import { runSupervisedChild } from "./supervised-child.js";
8
10
  import { supervisedChildCorrelationId } from "./supervised-protocol.js";
9
- const sendMessage = process.send?.bind(process);
10
- const disconnectProcess = process.disconnect?.bind(process);
11
+ const ownedMessageListeners = new WeakSet();
12
+ const outbox = createChildProcessOutbox(supervisedChildCorrelationId, {
13
+ disconnect: process.disconnect?.bind(process) ?? null,
14
+ send: process.send?.bind(process) ?? null
15
+ });
11
16
  function send(message) {
12
- sendMessage?.(childProcessEnvelope(supervisedChildCorrelationId, message));
13
- }
14
- function disconnect() {
15
- disconnectProcess?.();
17
+ outbox.send(message);
16
18
  }
17
- function isRecord(value) {
18
- return typeof value === 'object' && value !== null;
19
+ async function disconnect() {
20
+ await outbox.disconnect();
19
21
  }
20
- function isChildCommand(message) {
21
- return isRecord(message) &&
22
- Object.hasOwn(message, 'kind') &&
23
- (message.kind === 'collect' || message.kind === 'run');
22
+ function supervisedParentMessage(message) {
23
+ return envelopeMessage(message, supervisedChildCorrelationId, supervisedParentMessageSchema);
24
24
  }
25
- function isAssignmentCommand(message) {
26
- return isRecord(message) &&
27
- Object.hasOwn(message, 'kind') &&
28
- message.kind === 'assign';
25
+ function readCommand(message) {
26
+ const decoded = supervisedParentMessage(message);
27
+ if (decoded?.kind === 'run' || decoded?.kind === 'collect') {
28
+ return decoded;
29
+ }
30
+ throw new Error('Expected a supervised child command.');
29
31
  }
30
- function supervisedParentMessage(message) {
31
- return envelopeMessage(message, supervisedChildCorrelationId);
32
+ function readAssignment(message) {
33
+ const decoded = supervisedParentMessage(message);
34
+ if (decoded?.kind === 'assign') {
35
+ return decoded;
36
+ }
37
+ throw new Error('Expected a supervised child assignment.');
32
38
  }
33
- async function receiveCommand() {
34
- return new Promise(function waitForCommand(resolve) {
35
- process.once('message', function receiveChildCommand(message) {
36
- const parentMessage = supervisedParentMessage(message);
37
- if (isChildCommand(parentMessage)) {
38
- resolve(parentMessage);
39
+ async function receiveParentMessage(read) {
40
+ return new Promise(function waitForParentMessage(resolve, reject) {
41
+ const listener = function receiveMessage(message) {
42
+ try {
43
+ resolve(read(message));
44
+ }
45
+ catch (error) {
46
+ reject(error instanceof Error ? error : new Error('Invalid parent IPC payload.'));
39
47
  }
40
- });
48
+ };
49
+ ownedMessageListeners.add(listener);
50
+ process.once('message', listener);
41
51
  });
42
52
  }
53
+ async function receiveCommand() {
54
+ return receiveParentMessage(readCommand);
55
+ }
43
56
  async function receiveAssignment() {
44
- return new Promise(function waitForAssignment(resolve) {
45
- process.once('message', function receiveAssignmentCommand(message) {
46
- const parentMessage = supervisedParentMessage(message);
47
- if (isAssignmentCommand(parentMessage)) {
48
- resolve(parentMessage);
49
- }
50
- });
51
- });
57
+ return receiveParentMessage(readAssignment);
52
58
  }
53
59
  function validatePermissionHost(command) {
54
60
  if (command.capabilityRestrictions.mode === 'disabled') {
@@ -73,11 +79,13 @@ await runSupervisedChild({
73
79
  disconnect,
74
80
  discoverRunFiles: runDiscovery.discoverRunFiles,
75
81
  dropBodyReadPermission,
76
- installIpcRestriction(record) {
77
- return installProcessIpcRestriction(process, record);
82
+ observeIpcListeners(record) {
83
+ return observeProcessIpcListeners(process, record, ownedMessageListeners);
78
84
  },
79
- installProcessExecutionRestriction(record) {
80
- return installNodeProcessExecutionRestriction(process, record);
85
+ observeProcessExit() {
86
+ return function stopObservingChildExit() {
87
+ return undefined;
88
+ };
81
89
  },
82
90
  readEnvironment() {
83
91
  return readProcessEnvironment(process);
@@ -1 +1 @@
1
- {"version":3,"file":"supervised-child.entry-point.js","sourceRoot":"","sources":["../../../../source/run/supervised-child.entry-point.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"supervised-child.entry-point.js","sourceRoot":"","sources":["../../../../source/run/supervised-child.entry-point.ts"],"names":[],"mappings":"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"}
@@ -60,8 +60,8 @@ function createRuntimePolicy(command, host) {
60
60
  return command.capabilityRestrictions.mode === 'enabled'
61
61
  ? createRuntimeCapabilityPolicy({
62
62
  dependencies: {
63
- installIpcRestriction: host.installIpcRestriction,
64
- installProcessExecutionRestriction: host.installProcessExecutionRestriction,
63
+ observeIpcListeners: host.observeIpcListeners,
64
+ observeProcessExit: host.observeProcessExit,
65
65
  readEnvironment: host.readEnvironment,
66
66
  readStorage: host.readStorage
67
67
  },
@@ -202,7 +202,7 @@ async function runReceivedCommand(command, host, dependencies) {
202
202
  host.setExitCode(1);
203
203
  }
204
204
  finally {
205
- host.disconnect();
205
+ await host.disconnect();
206
206
  }
207
207
  }
208
208
  export async function runSupervisedChild(host, dependencies) {
@@ -1 +1 @@
1
- {"version":3,"file":"supervised-child.js","sourceRoot":"","sources":["../../../../source/run/supervised-child.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAe,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAOzE,OAAO,EACH,4BAA4B,EAC5B,iCAAiC,EACjC,gCAAgC,EACnC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACH,mCAAmC,EACnC,6BAA6B,EAEhC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACH,8BAA8B,EAC9B,eAAe,EAEf,wBAAwB,EAC3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACH,6BAA6B,EAC7B,qCAAqC,EACrC,iCAAiC,EAEpC,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACH,4BAA4B,EAC5B,6BAA6B,EAChC,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACH,uCAAuC,EACvC,sBAAsB,EAKzB,MAAM,0BAA0B,CAAC;AA6ClC,SAAS,eAAe,CAAC,QAAkB;IACvC,OAAO,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,OAAO,CAAC,QAAQ;QACvD,OAAO,CAAE,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAE,CAAC;IAC1D,CAAC,CAAC,CAAC,CAAC;AACR,CAAC;AAED,SAAS,oBAAoB,CACzB,UAA0D,EAC1D,IAAY;IAEZ,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;IAEvD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IAC1F,CAAC;IAED,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,SAAS,mBAAmB,CACxB,QAAkB,EAClB,YAA+B;IAE/B,MAAM,UAAU,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,SAAS,cAAc,CAAC,IAAI;QACvD,OAAO,oBAAoB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAEvB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IAC1F,CAAC;IAED,OAAO;QACH,GAAG,QAAQ;QACX,KAAK,EAAE,CAAE,KAAK,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAE;KACtC,CAAC;AACN,CAAC;AAED,SAAS,oCAAoC,CACzC,OAA6B,EAC7B,IAAyB,EACzB,YAAyC,EACzC,SAAgB;IAEhB,MAAM,OAAO,GAAG,YAAY,CAAC,0BAA0B,CAAC,SAAS,EAAE;QAC/D,4BAA4B,EAAE,OAAO,CAAC,yCAAyC;KAClF,CAAC,CAAC;IAEH,OAAO;QACH,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,KAAK,CAAC,QAAQ;YACV,OAAO,CAAC,KAAK,CAAC,SAAS,aAAa,CAAC,MAAM;gBACvC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;gBACtC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC;YACvB,CAAC,CAAC,CAAC;QACP,CAAC;KACJ,CAAC;AACN,CAAC;AAED,SAAS,2BAA2B,CAChC,QAAkB,EAClB,SAAgB;IAEhB,MAAM,qBAAqB,GAAG,MAAM,CAAC,SAAS,CAAC,4BAA4B,CAAC,CAAC;IAE7E,OAAO,gCAAgC,CACnC,iCAAiC,CAAC,QAAQ,EAAE,EAAE,CAAC,EAC/C,EAAE,EACF,EAAE,EACF;QACI,uBAAuB,EAAE,MAAM,CAAC,SAAS,CAAC,4BAA4B,CAAC;QACvE,UAAU,EAAE,iBAAiB;QAC7B,aAAa,EAAE,IAAI;QACnB,qBAAqB;QACrB,iCAAiC,EAAE,CAAC;KACvC,CACJ,CAAC;AACN,CAAC;AAED,SAAS,mBAAmB,CACxB,OAA+B,EAC/B,IAAyB;IAEzB,OAAO,OAAO,CAAC,sBAAsB,CAAC,IAAI,KAAK,SAAS;QACpD,CAAC,CAAC,6BAA6B,CAAC;YAC5B,YAAY,EAAE;gBACV,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;gBACjD,kCAAkC,EAAE,IAAI,CAAC,kCAAkC;gBAC3E,eAAe,EAAE,IAAI,CAAC,eAAe;gBACrC,WAAW,EAAE,IAAI,CAAC,WAAW;aAChC;YACD,cAAc,EAAE,KAAK;YACrB,cAAc,EAAE,KAAK;SACxB,CAAC;QACF,CAAC,CAAC,mCAAmC,EAAE,CAAC;AAChD,CAAC;AAED,KAAK,UAAU,2BAA2B,CACtC,OAA+B,EAC/B,IAAyB,EACzB,aAA6C;IAE7C,MAAM,UAAU,GAAG,KAAK,UAAU,0BAA0B;QACxD,OAAO,MAAM,6BAA6B,CAAC,OAAO,EAAE;YAChD,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;YAC7C,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;SAC9C,CAAC,CAAC;IACP,CAAC,CAAC;IAEF,OAAO,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,UAAU,EAAE,CAAC,CAAC,CAAC,MAAM,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACjG,CAAC;AAED,SAAS,uBAAuB,CAC5B,IAAyB,EACzB,aAA6C;IAE7C,MAAM,MAAM,GAAG,aAAa,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IAEpD,KAAK,MAAM,kBAAkB,IAAI,MAAM,EAAE,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC;YACN,KAAK,EAAE;gBACH,KAAK,EAAE,kBAAkB;gBACzB,IAAI,EAAE,cAAc;aACvB;YACD,IAAI,EAAE,OAAO;SAChB,CAAC,CAAC;IACP,CAAC;AACL,CAAC;AAED,KAAK,UAAU,qBAAqB,CAChC,OAA+B,EAC/B,IAAyB,EACzB,aAA6C;IAE7C,MAAM,QAAQ,GAAG,MAAM,2BAA2B,CAAC,OAAO,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;IACjF,MAAM,YAAY,GAAG,aAAa,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IAE1D,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC;AACtC,CAAC;AAED,KAAK,UAAU,uBAAuB,CAClC,OAA+B,EAC/B,IAAyB,EACzB,aAA6C;IAE7C,IAAI,CAAC;QACD,OAAO,MAAM,qBAAqB,CAAC,OAAO,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;IACrE,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACtB,uBAAuB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;QAC7C,MAAM,KAAK,CAAC;IAChB,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,aAAgC,EAAE,IAAyB;IAClF,IAAI,CAAC,IAAI,CAAC;QACN,aAAa,EAAE,4BAA4B,CAAC,aAAa,CAAC,QAAQ,CAAC;QACnE,IAAI,EAAE,WAAW;QACjB,YAAY,EAAE,aAAa,CAAC,YAAY;KAC3C,CAAC,CAAC;AACP,CAAC;AAED,KAAK,UAAU,OAAO,CAAC,OAA+B,EAAE,IAAyB;IAC7E,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,aAAa,GAAG,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACzD,MAAM,aAAa,GAAG,MAAM,uBAAuB,CAAC,OAAO,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;IAClF,iBAAiB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IAEvC,OAAO,aAAa,CAAC;AACzB,CAAC;AAED,SAAS,aAAa,CAAC,IAAyB,EAAE,MAAiB;IAC/D,IAAI,CAAC,IAAI,CAAC;QACN,IAAI,EAAE,QAAQ;QACd,MAAM;KACT,CAAC,CAAC;AACP,CAAC;AAED,SAAS,YAAY,CAAC,WAAmB;IACrC,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC;IAExC,OAAO,SAAS,CAAC,WAAW,EAAE,CAAC;AACnC,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,KAAoC;IACjE,MAAM,aAAa,GAAG,mBAAmB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACrE,MAAM,OAAO,GAAG,4BAA4B,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9D,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE,sBAAsB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;IAC7G,MAAM,cAAc,GAAG,uCAAuC,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEjG,OAAO,MAAM,OAAO,CAAC,QAAQ,EAAE;QAC3B,SAAS,EAAE,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC;QAClF,cAAc,EAAE,yBAAyB,EAAE;QAC3C,SAAS,EAAE,CAAE,6BAA6B,CAAC,KAAK,CAAC,IAAI,CAAC,CAAE;QACxD,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW;QACtC,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,eAAe;QAC9C,oBAAoB,EAAE,oCAAoC,CACtD,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,SAAS,CAClB;QACD,aAAa,EAAE,8BAA8B,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,EAAE,cAAc,CAAC;QAC5F,QAAQ,EAAE,EAAE;QACZ,SAAS,EAAE,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC;QAC1C,aAAa,EAAE;YACX,uBAAuB,EAAE,KAAK,CAAC,OAAO,CAAC,uBAAuB;YAC9D,mBAAmB,EAAE,KAAK,CAAC,OAAO,CAAC,mBAAmB;SACzD;KACJ,CAAC,CAAC;AACP,CAAC;AAED,KAAK,UAAU,GAAG,CACd,OAA6B,EAC7B,IAAyB,EACzB,YAAyC;IAEzC,MAAM,SAAS,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;IAC7C,MAAM,WAAW,GAAG,SAAS,CAAC,4BAA4B,CAAC;IAC3D,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAElD,IAAI,sBAAsB,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClD,aAAa,CAAC,IAAI,EAAE,2BAA2B,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;QACpF,OAAO;IACX,CAAC;IAED,aAAa,CACT,IAAI,EACJ,MAAM,wBAAwB,CAC1B,UAAU,CAAC,kBAAkB,EAC7B,IAAI,EACJ,KAAK,UAAU,2BAA2B;QACtC,OAAO,MAAM,iBAAiB,CAAC;YAC3B,UAAU;YACV,aAAa;YACb,OAAO;YACP,YAAY;YACZ,IAAI;YACJ,WAAW;YACX,SAAS;SACZ,CAAC,CAAC;IACP,CAAC,CACJ,CACJ,CAAC;AACN,CAAC;AAED,SAAS,WAAW,CAAC,KAAc,EAAE,IAAyB;IAC1D,IAAI,CAAC,IAAI,CAAC;QACN,KAAK,EAAE;YACH,KAAK,EAAE,qCAAqC,CAAC,KAAK,CAAC;YACnD,IAAI,EAAE,cAAc;SACvB;QACD,IAAI,EAAE,OAAO;KAChB,CAAC,CAAC;AACP,CAAC;AAED,KAAK,UAAU,uBAAuB,CAClC,OAA+B,EAC/B,IAAyB,EACzB,YAAyC;IAEzC,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACjC,CAAC;SAAM,CAAC;QACJ,MAAM,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;AACxB,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC7B,OAA+B,EAC/B,IAAyB,EACzB,YAAyC;IAEzC,IAAI,CAAC;QACD,MAAM,iCAAiC,CAAC,KAAK,UAAU,uBAAuB;YAC1E,MAAM,uBAAuB,CAAC,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACtB,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACzB,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;YAAS,CAAC;QACP,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACpC,IAAyB,EACzB,YAAyC;IAEzC,MAAM,kBAAkB,CAAC,MAAM,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;AAC9E,CAAC"}
1
+ {"version":3,"file":"supervised-child.js","sourceRoot":"","sources":["../../../../source/run/supervised-child.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import { z } from 'zod/v4';
2
+ import { caseIdSchema, workIdSchema } from "./run-identity-schema.js";
3
+ import { executionCommandFields } from "./run-command-schema.js";
4
+ import { collectedRunPlanSchema } from "./collected-run-plan-schema.js";
5
+ import { reporterEventSchema } from "./reporter-event-schema.js";
6
+ import { runResultSchema, runnerErrorSchema } from "./run-result-schema.js";
7
+ import { resourceUsageSnapshotSchema, runTimingSpanSchema } from "./run-runtime-schema.js";
8
+ import { attachmentEndpointSchema } from "./attachment-wire-schema.js";
9
+ const commandSchema = z.strictObject({
10
+ ...executionCommandFields,
11
+ kind: z.enum(['collect', 'run']),
12
+ capabilityRestrictions: z.strictObject({ mode: z.enum(['disabled', 'enabled']) }),
13
+ capture: z.enum(['buffered', 'live'])
14
+ });
15
+ const assignmentSchema = z.union([
16
+ z.strictObject({
17
+ kind: z.literal('assign'),
18
+ assignedWork: z.array(workIdSchema),
19
+ attachmentEndpoint: attachmentEndpointSchema.nullable()
20
+ }),
21
+ z.strictObject({
22
+ kind: z.literal('assign'),
23
+ assignedCases: z.array(caseIdSchema),
24
+ attachmentEndpoint: attachmentEndpointSchema.nullable()
25
+ })
26
+ ]);
27
+ export const supervisedParentMessageSchema = z.union([
28
+ commandSchema,
29
+ assignmentSchema
30
+ ]);
31
+ export const supervisedChildMessageSchema = z.discriminatedUnion('kind', [
32
+ z.strictObject({
33
+ kind: z.literal('collected'),
34
+ collectedPlan: collectedRunPlanSchema,
35
+ runnerErrors: z.array(runnerErrorSchema)
36
+ }),
37
+ z.strictObject({ kind: z.literal('event'), event: reporterEventSchema }),
38
+ z.strictObject({ kind: z.literal('result'), result: runResultSchema }),
39
+ z.strictObject({ kind: z.literal('sample'), sample: resourceUsageSnapshotSchema }),
40
+ z.strictObject({ kind: z.literal('timing'), span: runTimingSpanSchema })
41
+ ]);
42
+ //# sourceMappingURL=supervised-protocol-schema.js.map