@overkill-dev/run 0.0.12 → 0.0.14

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 (39) hide show
  1. package/engine/execution-resource-budget-tracking.js +33 -0
  2. package/engine/execution-resource-budget-tracking.js.map +1 -0
  3. package/engine/execution.d.ts.map +1 -1
  4. package/engine/execution.js +18 -24
  5. package/engine/execution.js.map +1 -1
  6. package/engine/reporter-output.d.ts +8 -1
  7. package/engine/reporter-output.d.ts.map +1 -1
  8. package/engine/reporter-output.js +9 -2
  9. package/engine/reporter-output.js.map +1 -1
  10. package/engine/reporter.d.ts +6 -0
  11. package/engine/reporter.d.ts.map +1 -1
  12. package/engine/reporter.js +7 -0
  13. package/engine/reporter.js.map +1 -1
  14. package/package.json +3 -1
  15. package/packages/engine/engine.entry-point.js +2 -2
  16. package/packages/engine/engine.entry-point.js.map +1 -1
  17. package/packages/run/command-line.entry-point.d.ts +1 -1
  18. package/packages/run/command-line.entry-point.d.ts.map +1 -1
  19. package/packages/run/run.entry-point.d.ts +3 -1
  20. package/packages/run/run.entry-point.d.ts.map +1 -1
  21. package/packages/run/run.entry-point.js +1 -0
  22. package/packages/run/run.entry-point.js.map +1 -1
  23. package/readme.md +9 -6
  24. package/reporters/line-reporter.js +3 -2
  25. package/reporters/line-reporter.js.map +1 -1
  26. package/run/command-line-runner.d.ts.map +1 -1
  27. package/run/command-line-runner.js +6 -3
  28. package/run/command-line-runner.js.map +1 -1
  29. package/run/run-config.d.ts +144 -36
  30. package/run/run-config.d.ts.map +1 -1
  31. package/run/run-config.js +157 -74
  32. package/run/run-config.js.map +1 -1
  33. package/run/run-types.d.ts +29 -15
  34. package/run/run-types.d.ts.map +1 -1
  35. package/run/run.js +69 -45
  36. package/run/run.js.map +1 -1
  37. package/run/supervised-run.js +7 -6
  38. package/run/supervised-run.js.map +1 -1
  39. package/sbom.cdx.json +5 -5
@@ -1,14 +1,8 @@
1
+ import { z } from 'zod/v4';
1
2
  import type { NonEmptyReadonlyArray } from '../assertion-protocol/assertion-node-shape.ts';
2
- import { type OutputRenderer } from '../engine/reporter-output.ts';
3
- import type { Reporter } from '../engine/reporter.ts';
3
+ import { type DefinedOutputRenderer, type OutputRenderer } from '../engine/reporter-output.ts';
4
+ import { type DefinedReporter, type Reporter } from '../engine/reporter.ts';
4
5
  import type { RunLoaderConfig, RunProfilesConfig } from './run-types.ts';
5
- export type RunProjectConfig = {
6
- readonly loader?: RunLoaderConfig | undefined;
7
- readonly outputRenderer?: OutputRenderer | undefined;
8
- readonly profiles?: RunProjectProfilesConfig | undefined;
9
- readonly reporters?: NonEmptyReadonlyArray<Reporter> | undefined;
10
- readonly runtimeStateDir?: string | undefined;
11
- };
12
6
  export type LoadedRunConfig = {
13
7
  readonly configPath: string | null;
14
8
  readonly loader: RunLoaderConfig;
@@ -17,33 +11,6 @@ export type LoadedRunConfig = {
17
11
  readonly reporters: NonEmptyReadonlyArray<Reporter> | null;
18
12
  readonly runtimeStateDir: string;
19
13
  };
20
- export type RunProjectResourceBudgets = {
21
- readonly activeResourceCount?: number | null | undefined;
22
- readonly javaScriptEngineHeapBytes?: number | null | undefined;
23
- readonly residentSetBytes?: number | null | undefined;
24
- readonly residentSetGrowthBytesPerSecond?: number | null | undefined;
25
- };
26
- export type RunProjectMeasuredMicrotestProfileConfig = {
27
- readonly hardTimeoutMilliseconds?: number | undefined;
28
- readonly measureResourceUsage: true;
29
- readonly resourceBudgets?: RunProjectResourceBudgets | undefined;
30
- readonly resourceUsageSamplingIntervalMilliseconds?: number | undefined;
31
- readonly timeoutMilliseconds?: number | undefined;
32
- };
33
- export type RunProjectUnmeasuredMicrotestProfileConfig = {
34
- readonly hardTimeoutMilliseconds?: number | undefined;
35
- readonly measureResourceUsage?: false | undefined;
36
- readonly timeoutMilliseconds?: number | undefined;
37
- };
38
- type RunProjectMicrotestProfileConfigVariants = readonly [
39
- RunProjectMeasuredMicrotestProfileConfig,
40
- RunProjectUnmeasuredMicrotestProfileConfig
41
- ];
42
- export type RunProjectMicrotestProfileConfig = RunProjectMicrotestProfileConfigVariants[number];
43
- export type RunProjectProfilesConfig = {
44
- readonly microtest?: RunProjectMicrotestProfileConfig | undefined;
45
- readonly microtestSupervised?: RunProjectMicrotestProfileConfig | undefined;
46
- };
47
14
  export type RunConfigLoadRequest = {
48
15
  readonly configPath: string | null;
49
16
  readonly cwd: string;
@@ -51,6 +18,147 @@ export type RunConfigLoadRequest = {
51
18
  export declare class RunConfigError extends Error {
52
19
  constructor(message: string, options?: Readonly<ErrorOptions>);
53
20
  }
21
+ declare const resourceBudgetsSchema: z.ZodReadonly<z.ZodObject<{
22
+ activeResourceCount: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
23
+ javaScriptEngineHeapBytes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
24
+ residentSetBytes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
25
+ residentSetGrowthBytesPerSecond: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
26
+ }, z.core.$strict>>;
27
+ declare const measuredResourceUsageSchema: z.ZodReadonly<z.ZodObject<{
28
+ budgets: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
29
+ activeResourceCount: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
30
+ javaScriptEngineHeapBytes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
31
+ residentSetBytes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
32
+ residentSetGrowthBytesPerSecond: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
33
+ }, z.core.$strict>>>;
34
+ measure: z.ZodLiteral<true>;
35
+ samplingIntervalMilliseconds: z.ZodOptional<z.ZodNumber>;
36
+ }, z.core.$strict>>;
37
+ declare const unmeasuredResourceUsageSchema: z.ZodReadonly<z.ZodObject<{
38
+ measure: z.ZodOptional<z.ZodLiteral<false>>;
39
+ }, z.core.$strict>>;
40
+ declare const resourceUsageSchema: z.ZodUnion<readonly [z.ZodReadonly<z.ZodObject<{
41
+ budgets: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
42
+ activeResourceCount: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
43
+ javaScriptEngineHeapBytes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
44
+ residentSetBytes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
45
+ residentSetGrowthBytesPerSecond: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
46
+ }, z.core.$strict>>>;
47
+ measure: z.ZodLiteral<true>;
48
+ samplingIntervalMilliseconds: z.ZodOptional<z.ZodNumber>;
49
+ }, z.core.$strict>>, z.ZodReadonly<z.ZodObject<{
50
+ measure: z.ZodOptional<z.ZodLiteral<false>>;
51
+ }, z.core.$strict>>]>;
52
+ declare const timeoutSchema: z.ZodReadonly<z.ZodObject<{
53
+ hardMilliseconds: z.ZodOptional<z.ZodNumber>;
54
+ softMilliseconds: z.ZodOptional<z.ZodNumber>;
55
+ }, z.core.$strict>>;
56
+ declare const microtestExecutionSchema: z.ZodDiscriminatedUnion<[z.ZodReadonly<z.ZodObject<{
57
+ processModel: z.ZodLiteral<"in-process">;
58
+ scheduling: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"concurrent">, z.ZodLiteral<"serial">]>>;
59
+ }, z.core.$strict>>, z.ZodReadonly<z.ZodObject<{
60
+ processModel: z.ZodLiteral<"supervised-process">;
61
+ scheduling: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"concurrent">, z.ZodLiteral<"serial">]>>;
62
+ }, z.core.$strict>>], "processModel">;
63
+ declare const profileSchema: z.ZodDiscriminatedUnion<[z.ZodReadonly<z.ZodObject<{
64
+ execution: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodReadonly<z.ZodObject<{
65
+ processModel: z.ZodLiteral<"in-process">;
66
+ scheduling: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"concurrent">, z.ZodLiteral<"serial">]>>;
67
+ }, z.core.$strict>>, z.ZodReadonly<z.ZodObject<{
68
+ processModel: z.ZodLiteral<"supervised-process">;
69
+ scheduling: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"concurrent">, z.ZodLiteral<"serial">]>>;
70
+ }, z.core.$strict>>], "processModel">>;
71
+ reporters: z.ZodOptional<z.ZodReadonly<z.ZodTuple<[z.ZodCustom<DefinedReporter, DefinedReporter>], z.ZodCustom<DefinedReporter, DefinedReporter>>>>;
72
+ resourceUsage: z.ZodOptional<z.ZodUnion<readonly [z.ZodReadonly<z.ZodObject<{
73
+ budgets: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
74
+ activeResourceCount: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
75
+ javaScriptEngineHeapBytes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
76
+ residentSetBytes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
77
+ residentSetGrowthBytesPerSecond: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
78
+ }, z.core.$strict>>>;
79
+ measure: z.ZodLiteral<true>;
80
+ samplingIntervalMilliseconds: z.ZodOptional<z.ZodNumber>;
81
+ }, z.core.$strict>>, z.ZodReadonly<z.ZodObject<{
82
+ measure: z.ZodOptional<z.ZodLiteral<false>>;
83
+ }, z.core.$strict>>]>>;
84
+ testFamily: z.ZodLiteral<"microtest">;
85
+ timeouts: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
86
+ hardMilliseconds: z.ZodOptional<z.ZodNumber>;
87
+ softMilliseconds: z.ZodOptional<z.ZodNumber>;
88
+ }, z.core.$strict>>>;
89
+ }, z.core.$strict>>], "testFamily">;
90
+ declare const profilesSchema: z.ZodReadonly<z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodReadonly<z.ZodObject<{
91
+ execution: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodReadonly<z.ZodObject<{
92
+ processModel: z.ZodLiteral<"in-process">;
93
+ scheduling: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"concurrent">, z.ZodLiteral<"serial">]>>;
94
+ }, z.core.$strict>>, z.ZodReadonly<z.ZodObject<{
95
+ processModel: z.ZodLiteral<"supervised-process">;
96
+ scheduling: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"concurrent">, z.ZodLiteral<"serial">]>>;
97
+ }, z.core.$strict>>], "processModel">>;
98
+ reporters: z.ZodOptional<z.ZodReadonly<z.ZodTuple<[z.ZodCustom<DefinedReporter, DefinedReporter>], z.ZodCustom<DefinedReporter, DefinedReporter>>>>;
99
+ resourceUsage: z.ZodOptional<z.ZodUnion<readonly [z.ZodReadonly<z.ZodObject<{
100
+ budgets: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
101
+ activeResourceCount: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
102
+ javaScriptEngineHeapBytes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
103
+ residentSetBytes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
104
+ residentSetGrowthBytesPerSecond: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
105
+ }, z.core.$strict>>>;
106
+ measure: z.ZodLiteral<true>;
107
+ samplingIntervalMilliseconds: z.ZodOptional<z.ZodNumber>;
108
+ }, z.core.$strict>>, z.ZodReadonly<z.ZodObject<{
109
+ measure: z.ZodOptional<z.ZodLiteral<false>>;
110
+ }, z.core.$strict>>]>>;
111
+ testFamily: z.ZodLiteral<"microtest">;
112
+ timeouts: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
113
+ hardMilliseconds: z.ZodOptional<z.ZodNumber>;
114
+ softMilliseconds: z.ZodOptional<z.ZodNumber>;
115
+ }, z.core.$strict>>>;
116
+ }, z.core.$strict>>], "testFamily">>>;
117
+ declare const projectConfigSchema: z.ZodReadonly<z.ZodObject<{
118
+ loader: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
119
+ sourceMaps: z.ZodBoolean;
120
+ stripMode: z.ZodLiteral<"strip-only">;
121
+ }, z.core.$strict>>>;
122
+ outputRenderer: z.ZodOptional<z.ZodCustom<DefinedOutputRenderer, DefinedOutputRenderer>>;
123
+ profiles: z.ZodOptional<z.ZodReadonly<z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodReadonly<z.ZodObject<{
124
+ execution: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodReadonly<z.ZodObject<{
125
+ processModel: z.ZodLiteral<"in-process">;
126
+ scheduling: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"concurrent">, z.ZodLiteral<"serial">]>>;
127
+ }, z.core.$strict>>, z.ZodReadonly<z.ZodObject<{
128
+ processModel: z.ZodLiteral<"supervised-process">;
129
+ scheduling: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"concurrent">, z.ZodLiteral<"serial">]>>;
130
+ }, z.core.$strict>>], "processModel">>;
131
+ reporters: z.ZodOptional<z.ZodReadonly<z.ZodTuple<[z.ZodCustom<DefinedReporter, DefinedReporter>], z.ZodCustom<DefinedReporter, DefinedReporter>>>>;
132
+ resourceUsage: z.ZodOptional<z.ZodUnion<readonly [z.ZodReadonly<z.ZodObject<{
133
+ budgets: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
134
+ activeResourceCount: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
135
+ javaScriptEngineHeapBytes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
136
+ residentSetBytes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
137
+ residentSetGrowthBytesPerSecond: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
138
+ }, z.core.$strict>>>;
139
+ measure: z.ZodLiteral<true>;
140
+ samplingIntervalMilliseconds: z.ZodOptional<z.ZodNumber>;
141
+ }, z.core.$strict>>, z.ZodReadonly<z.ZodObject<{
142
+ measure: z.ZodOptional<z.ZodLiteral<false>>;
143
+ }, z.core.$strict>>]>>;
144
+ testFamily: z.ZodLiteral<"microtest">;
145
+ timeouts: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
146
+ hardMilliseconds: z.ZodOptional<z.ZodNumber>;
147
+ softMilliseconds: z.ZodOptional<z.ZodNumber>;
148
+ }, z.core.$strict>>>;
149
+ }, z.core.$strict>>], "testFamily">>>>;
150
+ reporters: z.ZodOptional<z.ZodReadonly<z.ZodTuple<[z.ZodCustom<DefinedReporter, DefinedReporter>], z.ZodCustom<DefinedReporter, DefinedReporter>>>>;
151
+ runtimeStateDir: z.ZodOptional<z.ZodString>;
152
+ }, z.core.$strict>>;
153
+ export type RunProjectResourceBudgets = z.infer<typeof resourceBudgetsSchema>;
154
+ export type RunProjectMeasuredResourceUsage = z.infer<typeof measuredResourceUsageSchema>;
155
+ export type RunProjectUnmeasuredResourceUsage = z.infer<typeof unmeasuredResourceUsageSchema>;
156
+ export type RunProjectResourceUsageConfig = z.infer<typeof resourceUsageSchema>;
157
+ export type RunProjectTimeoutConfig = z.infer<typeof timeoutSchema>;
158
+ export type RunProjectMicrotestExecution = z.infer<typeof microtestExecutionSchema>;
159
+ export type RunProjectMicrotestProfileConfig = z.infer<typeof profileSchema>;
160
+ export type RunProjectProfilesConfig = z.infer<typeof profilesSchema>;
161
+ export type RunProjectConfig = z.infer<typeof projectConfigSchema>;
54
162
  export declare function defineConfig(config: RunProjectConfig): RunProjectConfig;
55
163
  export declare function loadRunConfig(request: RunConfigLoadRequest): Promise<LoadedRunConfig>;
56
164
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"run-config.d.ts","sourceRoot":"","sources":["../../../../source/run/run-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-config.d.ts","sourceRoot":"","sources":["../../../../source/run/run-config.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+CAA+C,CAAC;AAC3F,OAAO,EAGH,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACtB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAc,KAAK,eAAe,EAAE,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACxF,OAAO,KAAK,EACR,eAAe,EAGf,iBAAiB,EAIpB,MAAM,gBAAgB,CAAC;AAOxB,MAAM,MAAM,eAAe,GAAG;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,qBAAqB,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;IAC3D,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,qBAAa,cAAe,SAAQ,KAAK;gBAClB,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC;CAIvE;AA8CD,QAAA,MAAM,qBAAqB;;;;;mBAOZ,CAAC;AAEhB,QAAA,MAAM,2BAA2B;;;;;;;;;mBAMlB,CAAC;AAEhB,QAAA,MAAM,6BAA6B;;mBAIpB,CAAC;AAEhB,QAAA,MAAM,mBAAmB;;;;;;;;;;;qBAA0E,CAAC;AAEpG,QAAA,MAAM,aAAa;;;mBAKJ,CAAC;AAEhB,QAAA,MAAM,wBAAwB;;;;;;qCAa5B,CAAC;AAEH,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;mCAUjB,CAAC;AAEH,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;qCAAiD,CAAC;AAEtE,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAQV,CAAC;AAEhB,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAC9E,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAC1F,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAC9F,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AACpE,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AACpF,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAC7E,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEnE,wBAAgB,YAAY,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAEvE;AAgPD,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,eAAe,CAAC,CAW3F"}
package/run/run-config.js CHANGED
@@ -11,7 +11,8 @@ import path from 'node:path';
11
11
  import { pathToFileURL } from 'node:url';
12
12
  import { parse } from '@schema-hub/zod-error-formatter';
13
13
  import { z } from 'zod/v4';
14
- import { createPlainOutputRenderer } from "../engine/reporter-output.js";
14
+ import { createPlainOutputRenderer, isOutputRenderer } from "../engine/reporter-output.js";
15
+ import { isReporter } from "../engine/reporter.js";
15
16
  const defaultConfigFileNames = ['overkill.config.ts', 'overkill.config.js'];
16
17
  const defaultResourceUsageSamplingIntervalMilliseconds = 100;
17
18
  const defaultMicrotestHardTimeoutMilliseconds = 1000;
@@ -27,66 +28,96 @@ const defaultLoader = {
27
28
  stripMode: 'strip-only'
28
29
  };
29
30
  const defaultResourceUsagePolicy = {
30
- hardTimeoutMilliseconds: defaultMicrotestHardTimeoutMilliseconds,
31
- measureResourceUsage: false,
32
- resourceBudgets: {
31
+ budgets: {
33
32
  activeResourceCount: null,
34
33
  javaScriptEngineHeapBytes: null,
35
34
  residentSetBytes: null,
36
35
  residentSetGrowthBytesPerSecond: null
37
36
  },
38
- resourceUsageSamplingIntervalMilliseconds: defaultResourceUsageSamplingIntervalMilliseconds,
39
- timeoutMilliseconds: defaultMicrotestTimeoutMilliseconds
37
+ measure: false,
38
+ samplingIntervalMilliseconds: defaultResourceUsageSamplingIntervalMilliseconds
40
39
  };
41
- const reporterSchema = z.custom(function isReporter(value) {
42
- return typeof value === 'object' && value !== null &&
43
- Object.hasOwn(value, 'kind') &&
44
- Object.hasOwn(value, 'name') &&
45
- Object.hasOwn(value, 'sinks');
46
- });
47
- function hasRenderProperty(value) {
48
- return typeof value === 'object' && value !== null && Object.hasOwn(value, 'render');
49
- }
50
- const outputRendererSchema = z.custom(function isOutputRenderer(value) {
51
- return hasRenderProperty(value) && typeof value.render === 'function';
52
- });
53
- const loaderSchema = z.strictObject({
40
+ const defaultTimeoutPolicy = {
41
+ hardMilliseconds: defaultMicrotestHardTimeoutMilliseconds,
42
+ softMilliseconds: defaultMicrotestTimeoutMilliseconds
43
+ };
44
+ const defaultMicrotestExecution = {
45
+ processModel: 'supervised-process',
46
+ scheduling: 'concurrent'
47
+ };
48
+ const reporterSchema = z.custom(isReporter, 'must be created with defineReporter(...)');
49
+ const outputRendererSchema = z.custom(isOutputRenderer, 'must be created with defineOutputRenderer(...)');
50
+ const loaderSchema = z
51
+ .strictObject({
54
52
  sourceMaps: z.boolean(),
55
53
  stripMode: z.literal('strip-only')
56
- });
54
+ })
55
+ .readonly();
57
56
  const positiveSafeIntegerSchema = z.number().refine(function isPositiveSafeInteger(value) {
58
57
  return Number.isSafeInteger(value) && value > 0;
59
58
  }, 'must be a positive safe integer');
60
- const resourceBudgetsSchema = z.strictObject({
59
+ const resourceBudgetsSchema = z
60
+ .strictObject({
61
61
  activeResourceCount: z.optional(z.nullable(positiveSafeIntegerSchema)),
62
62
  javaScriptEngineHeapBytes: z.optional(z.nullable(positiveSafeIntegerSchema)),
63
63
  residentSetBytes: z.optional(z.nullable(positiveSafeIntegerSchema)),
64
64
  residentSetGrowthBytesPerSecond: z.optional(z.nullable(positiveSafeIntegerSchema))
65
- });
66
- const measuredMicrotestProfileSchema = z.strictObject({
67
- hardTimeoutMilliseconds: z.optional(positiveSafeIntegerSchema),
68
- measureResourceUsage: z.literal(true),
69
- resourceBudgets: z.optional(resourceBudgetsSchema),
70
- resourceUsageSamplingIntervalMilliseconds: z.optional(positiveSafeIntegerSchema),
71
- timeoutMilliseconds: z.optional(positiveSafeIntegerSchema)
72
- });
73
- const unmeasuredMicrotestProfileSchema = z.strictObject({
74
- hardTimeoutMilliseconds: z.optional(positiveSafeIntegerSchema),
75
- measureResourceUsage: z.optional(z.literal(false)),
76
- timeoutMilliseconds: z.optional(positiveSafeIntegerSchema)
77
- });
78
- const microtestProfileSchema = z.union([measuredMicrotestProfileSchema, unmeasuredMicrotestProfileSchema]);
79
- const profilesSchema = z.strictObject({
80
- microtest: z.optional(microtestProfileSchema),
81
- microtestSupervised: z.optional(microtestProfileSchema)
82
- });
83
- const projectConfigSchema = z.strictObject({
65
+ })
66
+ .readonly();
67
+ const measuredResourceUsageSchema = z
68
+ .strictObject({
69
+ budgets: z.optional(resourceBudgetsSchema),
70
+ measure: z.literal(true),
71
+ samplingIntervalMilliseconds: z.optional(positiveSafeIntegerSchema)
72
+ })
73
+ .readonly();
74
+ const unmeasuredResourceUsageSchema = z
75
+ .strictObject({
76
+ measure: z.optional(z.literal(false))
77
+ })
78
+ .readonly();
79
+ const resourceUsageSchema = z.union([measuredResourceUsageSchema, unmeasuredResourceUsageSchema]);
80
+ const timeoutSchema = z
81
+ .strictObject({
82
+ hardMilliseconds: z.optional(positiveSafeIntegerSchema),
83
+ softMilliseconds: z.optional(positiveSafeIntegerSchema)
84
+ })
85
+ .readonly();
86
+ const microtestExecutionSchema = z.discriminatedUnion('processModel', [
87
+ z
88
+ .strictObject({
89
+ processModel: z.literal('in-process'),
90
+ scheduling: z.optional(z.union([z.literal('concurrent'), z.literal('serial')]))
91
+ })
92
+ .readonly(),
93
+ z
94
+ .strictObject({
95
+ processModel: z.literal('supervised-process'),
96
+ scheduling: z.optional(z.union([z.literal('concurrent'), z.literal('serial')]))
97
+ })
98
+ .readonly()
99
+ ]);
100
+ const profileSchema = z.discriminatedUnion('testFamily', [
101
+ z
102
+ .strictObject({
103
+ execution: z.optional(microtestExecutionSchema),
104
+ reporters: z.optional(z.tuple([reporterSchema]).rest(reporterSchema).readonly()),
105
+ resourceUsage: z.optional(resourceUsageSchema),
106
+ testFamily: z.literal('microtest'),
107
+ timeouts: z.optional(timeoutSchema)
108
+ })
109
+ .readonly()
110
+ ]);
111
+ const profilesSchema = z.record(z.string(), profileSchema).readonly();
112
+ const projectConfigSchema = z
113
+ .strictObject({
84
114
  loader: z.optional(loaderSchema),
85
115
  outputRenderer: z.optional(outputRendererSchema),
86
116
  profiles: z.optional(profilesSchema),
87
- reporters: z.optional(z.tuple([reporterSchema]).rest(reporterSchema)),
117
+ reporters: z.optional(z.tuple([reporterSchema]).rest(reporterSchema).readonly()),
88
118
  runtimeStateDir: z.optional(z.string().min(1))
89
- });
119
+ })
120
+ .readonly();
90
121
  export function defineConfig(config) {
91
122
  return config;
92
123
  }
@@ -125,11 +156,26 @@ async function importConfigModule(configPath) {
125
156
  function hasDefaultExport(configModule) {
126
157
  return typeof configModule === 'object' && configModule !== null && Object.hasOwn(configModule, 'default');
127
158
  }
128
- function readDefaultExport(configModule, configPath) {
159
+ function hasNamedConfigExport(configModule) {
160
+ return typeof configModule === 'object' && configModule !== null && Object.hasOwn(configModule, 'config');
161
+ }
162
+ function assertNoExtraConfigExports(configModule, configPath) {
163
+ const extraExports = Object.keys(configModule).filter(function isExtraExport(exportName) {
164
+ return exportName !== 'config';
165
+ });
166
+ if (extraExports.length > 0) {
167
+ throw new RunConfigError(`Config file "${configPath}" must only export a named config value.`);
168
+ }
169
+ }
170
+ function readNamedConfigExport(configModule, configPath) {
129
171
  if (hasDefaultExport(configModule)) {
130
- return configModule.default;
172
+ throw new RunConfigError(`Config file "${configPath}" must not export a default config.`);
131
173
  }
132
- throw new RunConfigError(`Config file "${configPath}" must export a default config object.`);
174
+ if (hasNamedConfigExport(configModule)) {
175
+ assertNoExtraConfigExports(configModule, configPath);
176
+ return configModule.config;
177
+ }
178
+ throw new RunConfigError(`Config file "${configPath}" must export a named config value.`);
133
179
  }
134
180
  function normalizeReporters(reporters) {
135
181
  return reporters ?? null;
@@ -163,54 +209,91 @@ function copyResourceBudgets(resourceBudgets) {
163
209
  }
164
210
  function copyResourceUsagePolicy(policy) {
165
211
  return {
166
- hardTimeoutMilliseconds: policy.hardTimeoutMilliseconds,
167
- measureResourceUsage: policy.measureResourceUsage,
168
- resourceBudgets: copyResourceBudgets(policy.resourceBudgets),
169
- resourceUsageSamplingIntervalMilliseconds: policy.resourceUsageSamplingIntervalMilliseconds,
170
- timeoutMilliseconds: policy.timeoutMilliseconds
212
+ budgets: copyResourceBudgets(policy.budgets),
213
+ measure: policy.measure,
214
+ samplingIntervalMilliseconds: policy.samplingIntervalMilliseconds
171
215
  };
172
216
  }
173
- function normalizeUnmeasuredMicrotestProfile(profile, inheritedPolicy) {
217
+ function normalizeUnmeasuredResourceUsage() {
174
218
  return {
175
- hardTimeoutMilliseconds: profile.hardTimeoutMilliseconds ?? inheritedPolicy.hardTimeoutMilliseconds,
176
- measureResourceUsage: false,
177
- resourceBudgets: disabledResourceBudgets(),
178
- resourceUsageSamplingIntervalMilliseconds: inheritedPolicy.resourceUsageSamplingIntervalMilliseconds,
179
- timeoutMilliseconds: profile.timeoutMilliseconds ?? inheritedPolicy.timeoutMilliseconds
219
+ budgets: disabledResourceBudgets(),
220
+ measure: false,
221
+ samplingIntervalMilliseconds: defaultResourceUsageSamplingIntervalMilliseconds
180
222
  };
181
223
  }
182
- function normalizeMeasuredMicrotestProfile(profile, inheritedPolicy) {
224
+ function normalizeMeasuredResourceUsage(profile) {
183
225
  return {
184
- hardTimeoutMilliseconds: profile.hardTimeoutMilliseconds ?? inheritedPolicy.hardTimeoutMilliseconds,
185
- measureResourceUsage: true,
186
- resourceBudgets: normalizeResourceBudgets(profile.resourceBudgets),
187
- resourceUsageSamplingIntervalMilliseconds: profile.resourceUsageSamplingIntervalMilliseconds ??
188
- inheritedPolicy.resourceUsageSamplingIntervalMilliseconds,
189
- timeoutMilliseconds: profile.timeoutMilliseconds ?? inheritedPolicy.timeoutMilliseconds
226
+ budgets: normalizeResourceBudgets(profile.budgets),
227
+ measure: true,
228
+ samplingIntervalMilliseconds: profile.samplingIntervalMilliseconds ??
229
+ defaultResourceUsageSamplingIntervalMilliseconds
190
230
  };
191
231
  }
192
- function normalizeMicrotestProfile(profile, inheritedPolicy) {
232
+ function normalizeResourceUsage(profile) {
193
233
  if (profile === undefined) {
194
- return copyResourceUsagePolicy(inheritedPolicy);
234
+ return copyResourceUsagePolicy(defaultResourceUsagePolicy);
235
+ }
236
+ if (profile.measure !== true) {
237
+ return normalizeUnmeasuredResourceUsage();
195
238
  }
196
- if (profile.measureResourceUsage !== true) {
197
- return normalizeUnmeasuredMicrotestProfile(profile, inheritedPolicy);
239
+ return normalizeMeasuredResourceUsage(profile);
240
+ }
241
+ function normalizeTimeouts(timeouts) {
242
+ return {
243
+ hardMilliseconds: timeouts?.hardMilliseconds ?? defaultTimeoutPolicy.hardMilliseconds,
244
+ softMilliseconds: timeouts?.softMilliseconds ?? defaultTimeoutPolicy.softMilliseconds
245
+ };
246
+ }
247
+ function assertValidTimeouts(timeouts) {
248
+ if (timeouts.softMilliseconds > timeouts.hardMilliseconds) {
249
+ throw new RunConfigError('Invalid profile timeouts: softMilliseconds must be less than or equal to hardMilliseconds.');
198
250
  }
199
- return normalizeMeasuredMicrotestProfile(profile, inheritedPolicy);
200
251
  }
201
- function normalizeProfiles(profiles) {
202
- const microtest = normalizeMicrotestProfile(profiles?.microtest, defaultResourceUsagePolicy);
252
+ function normalizeExecution(execution) {
203
253
  return {
204
- microtest,
205
- microtestSupervised: normalizeMicrotestProfile(profiles?.microtestSupervised, microtest)
254
+ processModel: execution?.processModel ?? defaultMicrotestExecution.processModel,
255
+ scheduling: execution?.scheduling ?? defaultMicrotestExecution.scheduling
206
256
  };
207
257
  }
258
+ function normalizeMicrotestProfile(profile) {
259
+ const timeouts = normalizeTimeouts(profile.timeouts);
260
+ assertValidTimeouts(timeouts);
261
+ return {
262
+ execution: normalizeExecution(profile.execution),
263
+ reporters: normalizeReporters(profile.reporters),
264
+ resourceUsage: normalizeResourceUsage(profile.resourceUsage),
265
+ testFamily: 'microtest',
266
+ timeouts
267
+ };
268
+ }
269
+ function assertValidProfileName(profileName) {
270
+ if (!/^[A-Za-z0-9._-]+$/u.test(profileName)) {
271
+ const message = `Invalid profile name "${profileName}". ` +
272
+ 'Profile names may only contain letters, numbers, dots, underscores, and hyphens.';
273
+ throw new RunConfigError(message);
274
+ }
275
+ }
276
+ function defaultMicrotestProfile() {
277
+ return normalizeMicrotestProfile({ testFamily: 'microtest' });
278
+ }
279
+ function normalizeConfiguredProfiles(profiles) {
280
+ const normalizedProfiles = {};
281
+ const profileEntries = Object.entries(profiles ?? {});
282
+ for (const [profileName, profile] of profileEntries) {
283
+ assertValidProfileName(profileName);
284
+ normalizedProfiles[profileName] = normalizeMicrotestProfile(profile);
285
+ }
286
+ if (normalizedProfiles.microtest === undefined) {
287
+ normalizedProfiles.microtest = defaultMicrotestProfile();
288
+ }
289
+ return normalizedProfiles;
290
+ }
208
291
  function normalizeConfig(parsedConfig, configPath) {
209
292
  return {
210
293
  configPath,
211
294
  loader: parsedConfig.loader ?? defaultLoader,
212
295
  outputRenderer: parsedConfig.outputRenderer ?? createPlainOutputRenderer(),
213
- profiles: normalizeProfiles(parsedConfig.profiles),
296
+ profiles: normalizeConfiguredProfiles(parsedConfig.profiles),
214
297
  reporters: normalizeReporters(parsedConfig.reporters),
215
298
  runtimeStateDir: parsedConfig.runtimeStateDir ?? '.overkill'
216
299
  };
@@ -230,7 +313,7 @@ export async function loadRunConfig(request) {
230
313
  return normalizeConfig({}, null);
231
314
  }
232
315
  const configModule = await importConfigModule(configPath);
233
- const configValue = readDefaultExport(configModule, configPath);
316
+ const configValue = readNamedConfigExport(configModule, configPath);
234
317
  return normalizeConfig(parseConfig(configValue, configPath), configPath);
235
318
  }
236
319
  //# sourceMappingURL=run-config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"run-config.js","sourceRoot":"","sources":["../../../../source/run/run-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-config.js","sourceRoot":"","sources":["../../../../source/run/run-config.ts"],"names":[],"mappings":";;;;;;;;AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AACxD,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EACH,yBAAyB,EACzB,gBAAgB,EAGnB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,UAAU,EAAuC,MAAM,uBAAuB,CAAC;AAWxF,MAAM,sBAAsB,GAAG,CAAE,oBAAoB,EAAE,oBAAoB,CAAE,CAAC;AAC9E,MAAM,gDAAgD,GAAG,GAAG,CAAC;AAC7D,MAAM,uCAAuC,GAAG,IAAI,CAAC;AACrD,MAAM,mCAAmC,GAAG,GAAG,CAAC;AAgBhD,MAAM,OAAO,cAAe,SAAQ,KAAK;IACrC,YAAmB,OAAe,EAAE,OAAgC;QAChE,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IACjC,CAAC;CACJ;AAED,MAAM,aAAa,GAAoB;IACnC,UAAU,EAAE,KAAK;IACjB,SAAS,EAAE,YAAY;CAC1B,CAAC;AAEF,MAAM,0BAA0B,GAA2B;IACvD,OAAO,EAAE;QACL,mBAAmB,EAAE,IAAI;QACzB,yBAAyB,EAAE,IAAI;QAC/B,gBAAgB,EAAE,IAAI;QACtB,+BAA+B,EAAE,IAAI;KACxC;IACD,OAAO,EAAE,KAAK;IACd,4BAA4B,EAAE,gDAAgD;CACjF,CAAC;AAEF,MAAM,oBAAoB,GAAqB;IAC3C,gBAAgB,EAAE,uCAAuC;IACzD,gBAAgB,EAAE,mCAAmC;CACxD,CAAC;AAEF,MAAM,yBAAyB,GAA0B;IACrD,YAAY,EAAE,oBAAoB;IAClC,UAAU,EAAE,YAAY;CAC3B,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAkB,UAAU,EAAE,0CAA0C,CAAC,CAAC;AAEzG,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CACjC,gBAAgB,EAChB,gDAAgD,CACnD,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC;KACjB,YAAY,CAAC;IACV,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE;IACvB,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;CACrC,CAAC;KACD,QAAQ,EAAE,CAAC;AAEhB,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,qBAAqB,CAAC,KAAK;IACpF,OAAO,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;AACpD,CAAC,EAAE,iCAAiC,CAAC,CAAC;AAEtC,MAAM,qBAAqB,GAAG,CAAC;KAC1B,YAAY,CAAC;IACV,mBAAmB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;IACtE,yBAAyB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;IAC5E,gBAAgB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;IACnE,+BAA+B,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;CACrF,CAAC;KACD,QAAQ,EAAE,CAAC;AAEhB,MAAM,2BAA2B,GAAG,CAAC;KAChC,YAAY,CAAC;IACV,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IAC1C,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxB,4BAA4B,EAAE,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC;CACtE,CAAC;KACD,QAAQ,EAAE,CAAC;AAEhB,MAAM,6BAA6B,GAAG,CAAC;KAClC,YAAY,CAAC;IACV,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;CACxC,CAAC;KACD,QAAQ,EAAE,CAAC;AAEhB,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,CAAE,2BAA2B,EAAE,6BAA6B,CAAE,CAAC,CAAC;AAEpG,MAAM,aAAa,GAAG,CAAC;KAClB,YAAY,CAAC;IACV,gBAAgB,EAAE,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC;IACvD,gBAAgB,EAAE,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC;CAC1D,CAAC;KACD,QAAQ,EAAE,CAAC;AAEhB,MAAM,wBAAwB,GAAG,CAAC,CAAC,kBAAkB,CAAC,cAAc,EAAE;IAClE,CAAC;SACI,YAAY,CAAC;QACV,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;QACrC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAE,CAAC,CAAC;KACpF,CAAC;SACD,QAAQ,EAAE;IACf,CAAC;SACI,YAAY,CAAC;QACV,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC;QAC7C,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAE,CAAC,CAAC;KACpF,CAAC;SACD,QAAQ,EAAE;CAClB,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,CAAC,CAAC,kBAAkB,CAAC,YAAY,EAAE;IACrD,CAAC;SACI,YAAY,CAAC;QACV,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC;QAC/C,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAE,cAAc,CAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,CAAC;QAClF,aAAa,EAAE,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC;QAC9C,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;QAClC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;KACtC,CAAC;SACD,QAAQ,EAAE;CAClB,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,aAAa,CAAC,CAAC,QAAQ,EAAE,CAAC;AAEtE,MAAM,mBAAmB,GAAG,CAAC;KACxB,YAAY,CAAC;IACV,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC;IAChC,cAAc,EAAE,CAAC,CAAC,QAAQ,CAAC,oBAAoB,CAAC;IAChD,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;IACpC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAE,cAAc,CAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,CAAC;IAClF,eAAe,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACjD,CAAC;KACD,QAAQ,EAAE,CAAC;AAYhB,MAAM,UAAU,YAAY,CAAC,MAAwB;IACjD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,QAAgB;IACtC,IAAI,CAAC;QACD,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAE1B,OAAO,IAAI,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,GAAW;IACzC,KAAK,MAAM,cAAc,IAAI,sBAAsB,EAAE,CAAC;QAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAEpD,IAAI,MAAM,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,OAAO,SAAS,CAAC;QACrB,CAAC;IACL,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,OAA6B;IAC1D,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IACzD,CAAC;IAED,OAAO,MAAM,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AACjD,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,UAAkB;IAChD,IAAI,CAAC;QACD,OAAO,MAAM,MAAM,kCAAC,aAAa,CAAC,UAAU,CAAC,CAAC,IAAI,EAAC,CAAC;IACxD,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACtB,MAAM,IAAI,cAAc,CAAC,+BAA+B,UAAU,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9F,CAAC;AACL,CAAC;AAUD,SAAS,gBAAgB,CAAC,YAAqB;IAC3C,OAAO,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,KAAK,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;AAC/G,CAAC;AAED,SAAS,oBAAoB,CAAC,YAAqB;IAC/C,OAAO,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,KAAK,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;AAC9G,CAAC;AAED,SAAS,0BAA0B,CAAC,YAA+C,EAAE,UAAkB;IACnG,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,SAAS,aAAa,CAAC,UAAU;QACnF,OAAO,UAAU,KAAK,QAAQ,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,cAAc,CAAC,gBAAgB,UAAU,0CAA0C,CAAC,CAAC;IACnG,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAAC,YAAqB,EAAE,UAAkB;IACpE,IAAI,gBAAgB,CAAC,YAAY,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,cAAc,CAAC,gBAAgB,UAAU,qCAAqC,CAAC,CAAC;IAC9F,CAAC;IAED,IAAI,oBAAoB,CAAC,YAAY,CAAC,EAAE,CAAC;QACrC,0BAA0B,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QAErD,OAAO,YAAY,CAAC,MAAM,CAAC;IAC/B,CAAC;IAED,MAAM,IAAI,cAAc,CAAC,gBAAgB,UAAU,qCAAqC,CAAC,CAAC;AAC9F,CAAC;AAED,SAAS,kBAAkB,CAAC,SAAsD;IAC9E,OAAO,SAAS,IAAI,IAAI,CAAC;AAC7B,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAgC;IAC1D,OAAO,KAAK,IAAI,IAAI,CAAC;AACzB,CAAC;AAED,SAAS,wBAAwB,CAAC,eAAsD;IACpF,OAAO;QACH,mBAAmB,EAAE,oBAAoB,CAAC,eAAe,EAAE,mBAAmB,CAAC;QAC/E,yBAAyB,EAAE,oBAAoB,CAAC,eAAe,EAAE,yBAAyB,CAAC;QAC3F,gBAAgB,EAAE,oBAAoB,CAAC,eAAe,EAAE,gBAAgB,CAAC;QACzE,+BAA+B,EAAE,oBAAoB,CAAC,eAAe,EAAE,+BAA+B,CAAC;KAC1G,CAAC;AACN,CAAC;AAED,SAAS,uBAAuB;IAC5B,OAAO;QACH,mBAAmB,EAAE,IAAI;QACzB,yBAAyB,EAAE,IAAI;QAC/B,gBAAgB,EAAE,IAAI;QACtB,+BAA+B,EAAE,IAAI;KACxC,CAAC;AACN,CAAC;AAED,SAAS,mBAAmB,CAAC,eAAmC;IAC5D,OAAO;QACH,mBAAmB,EAAE,eAAe,CAAC,mBAAmB;QACxD,yBAAyB,EAAE,eAAe,CAAC,yBAAyB;QACpE,gBAAgB,EAAE,eAAe,CAAC,gBAAgB;QAClD,+BAA+B,EAAE,eAAe,CAAC,+BAA+B;KACnF,CAAC;AACN,CAAC;AAED,SAAS,uBAAuB,CAAC,MAA8B;IAC3D,OAAO;QACH,OAAO,EAAE,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC;QAC5C,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,4BAA4B,EAAE,MAAM,CAAC,4BAA4B;KACpE,CAAC;AACN,CAAC;AAED,SAAS,gCAAgC;IACrC,OAAO;QACH,OAAO,EAAE,uBAAuB,EAAE;QAClC,OAAO,EAAE,KAAK;QACd,4BAA4B,EAAE,gDAAgD;KACjF,CAAC;AACN,CAAC;AAED,SAAS,8BAA8B,CAAC,OAAwC;IAC5E,OAAO;QACH,OAAO,EAAE,wBAAwB,CAAC,OAAO,CAAC,OAAO,CAAC;QAClD,OAAO,EAAE,IAAI;QACb,4BAA4B,EAAE,OAAO,CAAC,4BAA4B;YAC9D,gDAAgD;KACvD,CAAC;AACN,CAAC;AAED,SAAS,sBAAsB,CAC3B,OAAkD;IAElD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,uBAAuB,CAAC,0BAA0B,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QAC3B,OAAO,gCAAgC,EAAE,CAAC;IAC9C,CAAC;IAED,OAAO,8BAA8B,CAAC,OAAO,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,iBAAiB,CAAC,QAA6C;IACpE,OAAO;QACH,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB,IAAI,oBAAoB,CAAC,gBAAgB;QACrF,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB,IAAI,oBAAoB,CAAC,gBAAgB;KACxF,CAAC;AACN,CAAC;AAED,SAAS,mBAAmB,CAAC,QAA0B;IACnD,IAAI,QAAQ,CAAC,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB,EAAE,CAAC;QACxD,MAAM,IAAI,cAAc,CACpB,4FAA4F,CAC/F,CAAC;IACN,CAAC;AACL,CAAC;AAED,SAAS,kBAAkB,CAAC,SAAmD;IAC3E,OAAO;QACH,YAAY,EAAE,SAAS,EAAE,YAAY,IAAI,yBAAyB,CAAC,YAAY;QAC/E,UAAU,EAAE,SAAS,EAAE,UAAU,IAAI,yBAAyB,CAAC,UAAU;KAC5E,CAAC;AACN,CAAC;AAED,SAAS,yBAAyB,CAAC,OAAyC;IACxE,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAErD,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAE9B,OAAO;QACH,SAAS,EAAE,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC;QAChD,SAAS,EAAE,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC;QAChD,aAAa,EAAE,sBAAsB,CAAC,OAAO,CAAC,aAAa,CAAC;QAC5D,UAAU,EAAE,WAAW;QACvB,QAAQ;KACX,CAAC;AACN,CAAC;AAED,SAAS,sBAAsB,CAAC,WAAmB;IAC/C,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;QAC1C,MAAM,OAAO,GAAG,yBAAyB,WAAW,KAAK;YACrD,kFAAkF,CAAC;QAEvF,MAAM,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;AACL,CAAC;AAED,SAAS,uBAAuB;IAC5B,OAAO,yBAAyB,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,2BAA2B,CAAC,QAA8C;IAC/E,MAAM,kBAAkB,GAA8C,EAAE,CAAC;IACzE,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IAEtD,KAAK,MAAM,CAAE,WAAW,EAAE,OAAO,CAAE,IAAI,cAAc,EAAE,CAAC;QACpD,sBAAsB,CAAC,WAAW,CAAC,CAAC;QACpC,kBAAkB,CAAC,WAAW,CAAC,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACzE,CAAC;IAED,IAAI,kBAAkB,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAC7C,kBAAkB,CAAC,SAAS,GAAG,uBAAuB,EAAE,CAAC;IAC7D,CAAC;IAED,OAAO,kBAAkB,CAAC;AAC9B,CAAC;AAED,SAAS,eAAe,CAAC,YAA8B,EAAE,UAAyB;IAC9E,OAAO;QACH,UAAU;QACV,MAAM,EAAE,YAAY,CAAC,MAAM,IAAI,aAAa;QAC5C,cAAc,EAAE,YAAY,CAAC,cAAc,IAAI,yBAAyB,EAAE;QAC1E,QAAQ,EAAE,2BAA2B,CAAC,YAAY,CAAC,QAAQ,CAAC;QAC5D,SAAS,EAAE,kBAAkB,CAAC,YAAY,CAAC,SAAS,CAAC;QACrD,eAAe,EAAE,YAAY,CAAC,eAAe,IAAI,WAAW;KAC/D,CAAC;AACN,CAAC;AAED,SAAS,WAAW,CAAC,WAAoB,EAAE,UAAkB;IACzD,IAAI,CAAC;QACD,MAAM,YAAY,GAAqB,KAAK,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC;QAE/E,OAAO,YAAY,CAAC;IACxB,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACtB,MAAM,IAAI,cAAc,CAAC,wBAAwB,UAAU,MAAM,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IACxG,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAA6B;IAC7D,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAEpD,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO,eAAe,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC1D,MAAM,WAAW,GAAG,qBAAqB,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAEpE,OAAO,eAAe,CAAC,WAAW,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,UAAU,CAAC,CAAC;AAC7E,CAAC"}
@@ -37,17 +37,30 @@ export type RunResourceBudgets = {
37
37
  readonly residentSetBytes: number | null;
38
38
  readonly residentSetGrowthBytesPerSecond: number | null;
39
39
  };
40
- export type RunResourceUsagePolicy = {
41
- readonly hardTimeoutMilliseconds: number;
42
- readonly measureResourceUsage: boolean;
43
- readonly resourceBudgets: RunResourceBudgets;
44
- readonly resourceUsageSamplingIntervalMilliseconds: number;
45
- readonly timeoutMilliseconds: number;
46
- };
47
- export type RunProfilesConfig = {
48
- readonly microtest: RunResourceUsagePolicy;
49
- readonly microtestSupervised: RunResourceUsagePolicy;
40
+ export type RunTestFamily = 'microtest';
41
+ export type RunProcessModel = 'in-process' | 'supervised-process';
42
+ export type RunScheduling = 'concurrent' | 'serial';
43
+ export type RunMicrotestExecution = {
44
+ readonly processModel: RunProcessModel;
45
+ readonly scheduling: RunScheduling;
50
46
  };
47
+ export type RunResourceUsagePolicy = {
48
+ readonly budgets: RunResourceBudgets;
49
+ readonly measure: boolean;
50
+ readonly samplingIntervalMilliseconds: number;
51
+ };
52
+ export type RunTimeoutPolicy = {
53
+ readonly hardMilliseconds: number;
54
+ readonly softMilliseconds: number;
55
+ };
56
+ export type RunMicrotestProfileConfig = {
57
+ readonly execution: RunMicrotestExecution;
58
+ readonly reporters: RunReporters | null;
59
+ readonly resourceUsage: RunResourceUsagePolicy;
60
+ readonly testFamily: 'microtest';
61
+ readonly timeouts: RunTimeoutPolicy;
62
+ };
63
+ export type RunProfilesConfig = Readonly<Record<string, RunMicrotestProfileConfig>>;
51
64
  export type RunConfig = {
52
65
  readonly loader: RunLoaderConfig;
53
66
  readonly outputRenderer: RunOutputRenderer;
@@ -58,13 +71,12 @@ export type RunConfig = {
58
71
  export type RunRequest = {
59
72
  readonly baselineUpdateMode: 'none';
60
73
  readonly capture: 'buffered' | 'live';
61
- readonly coverage: false;
62
74
  readonly debug: RunDebugRequest;
63
75
  readonly execution: RunExecutionRequest;
64
76
  readonly measureResourceUsage: boolean | null;
65
77
  readonly order: 'plan';
66
78
  readonly paths: readonly string[];
67
- readonly profile: 'microtest' | 'microtest-supervised';
79
+ readonly profile: string;
68
80
  readonly resourceBudgetOverrides: RunResourceBudgets | null;
69
81
  readonly resourceUsageSamplingIntervalMilliseconds: number | null;
70
82
  readonly seed: RunSeed;
@@ -100,12 +112,14 @@ export type RunEnvironmentFacts = {
100
112
  export type RunExecutionFacts = {
101
113
  readonly baselineUpdateMode: 'none';
102
114
  readonly capture: 'buffered' | 'live';
103
- readonly coverage: false;
104
115
  readonly debug: RunDebugRequest;
105
- readonly mode: 'concurrent-in-process' | 'single-child-process';
106
116
  readonly order: 'plan';
107
- readonly profile: 'microtest' | 'microtest-supervised';
117
+ readonly processModel: RunProcessModel;
118
+ readonly profile: string;
108
119
  readonly resourceUsagePolicy: RunResourceUsagePolicy;
120
+ readonly scheduling: RunScheduling;
121
+ readonly testFamily: RunTestFamily;
122
+ readonly timeoutPolicy: RunTimeoutPolicy;
109
123
  readonly verbose: false;
110
124
  };
111
125
  export type RunReproducibilityFacts = {