modestbench 0.8.0 → 0.9.0
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.
- package/CHANGELOG.md +13 -0
- package/README.md +37 -4
- package/dist/adapters/types.d.cts +1 -1
- package/dist/adapters/types.d.cts.map +1 -1
- package/dist/adapters/types.d.ts +1 -1
- package/dist/adapters/types.d.ts.map +1 -1
- package/dist/cli/commands/run.cjs +9 -5
- package/dist/cli/commands/run.cjs.map +1 -1
- package/dist/cli/commands/run.d.cts +1 -0
- package/dist/cli/commands/run.d.cts.map +1 -1
- package/dist/cli/commands/run.d.ts +1 -0
- package/dist/cli/commands/run.d.ts.map +1 -1
- package/dist/cli/commands/run.js +10 -6
- package/dist/cli/commands/run.js.map +1 -1
- package/dist/cli/index.cjs +7 -1
- package/dist/cli/index.cjs.map +1 -1
- package/dist/cli/index.d.cts.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +7 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/{core → config}/benchmark-schema.cjs +1 -1
- package/dist/config/benchmark-schema.cjs.map +1 -0
- package/dist/config/benchmark-schema.d.cts +913 -0
- package/dist/config/benchmark-schema.d.cts.map +1 -0
- package/dist/config/benchmark-schema.d.ts +913 -0
- package/dist/config/benchmark-schema.d.ts.map +1 -0
- package/dist/{core → config}/benchmark-schema.js +1 -1
- package/dist/config/benchmark-schema.js.map +1 -0
- package/dist/config/schema.cjs +188 -105
- package/dist/config/schema.cjs.map +1 -1
- package/dist/config/schema.d.cts +208 -80
- package/dist/config/schema.d.cts.map +1 -1
- package/dist/config/schema.d.ts +208 -80
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +187 -104
- package/dist/config/schema.js.map +1 -1
- package/dist/core/engine.cjs +50 -45
- package/dist/core/engine.cjs.map +1 -1
- package/dist/core/engine.d.cts.map +1 -1
- package/dist/core/engine.d.ts.map +1 -1
- package/dist/core/engine.js +50 -45
- package/dist/core/engine.js.map +1 -1
- package/dist/core/output-path-resolver.cjs +15 -1
- package/dist/core/output-path-resolver.cjs.map +1 -1
- package/dist/core/output-path-resolver.d.cts +8 -0
- package/dist/core/output-path-resolver.d.cts.map +1 -1
- package/dist/core/output-path-resolver.d.ts +8 -0
- package/dist/core/output-path-resolver.d.ts.map +1 -1
- package/dist/core/output-path-resolver.js +13 -0
- package/dist/core/output-path-resolver.js.map +1 -1
- package/dist/reporters/json.cjs +1 -1
- package/dist/reporters/json.cjs.map +1 -1
- package/dist/reporters/json.js +1 -1
- package/dist/reporters/json.js.map +1 -1
- package/dist/schema/modestbench-config.schema.json +94 -87
- package/dist/services/budget-evaluator.cjs +8 -6
- package/dist/services/budget-evaluator.cjs.map +1 -1
- package/dist/services/budget-evaluator.d.cts +2 -2
- package/dist/services/budget-evaluator.d.cts.map +1 -1
- package/dist/services/budget-evaluator.d.ts +2 -2
- package/dist/services/budget-evaluator.d.ts.map +1 -1
- package/dist/services/budget-evaluator.js +8 -6
- package/dist/services/budget-evaluator.js.map +1 -1
- package/dist/services/budget-resolver.cjs +214 -0
- package/dist/services/budget-resolver.cjs.map +1 -0
- package/dist/services/budget-resolver.d.cts +98 -0
- package/dist/services/budget-resolver.d.cts.map +1 -0
- package/dist/services/budget-resolver.d.ts +98 -0
- package/dist/services/budget-resolver.d.ts.map +1 -0
- package/dist/services/budget-resolver.js +203 -0
- package/dist/services/budget-resolver.js.map +1 -0
- package/dist/services/file-loader.cjs +1 -1
- package/dist/services/file-loader.cjs.map +1 -1
- package/dist/services/file-loader.js +1 -1
- package/dist/services/file-loader.js.map +1 -1
- package/dist/types/budgets.d.cts +31 -0
- package/dist/types/budgets.d.cts.map +1 -1
- package/dist/types/budgets.d.ts +31 -0
- package/dist/types/budgets.d.ts.map +1 -1
- package/dist/types/core.cjs.map +1 -1
- package/dist/types/core.d.cts +28 -75
- package/dist/types/core.d.cts.map +1 -1
- package/dist/types/core.d.ts +28 -75
- package/dist/types/core.d.ts.map +1 -1
- package/dist/types/core.js.map +1 -1
- package/package.json +18 -7
- package/src/adapters/types.ts +1 -1
- package/src/cli/commands/run.ts +17 -5
- package/src/cli/index.ts +8 -1
- package/src/{core → config}/benchmark-schema.ts +1 -1
- package/src/config/schema.ts +379 -302
- package/src/core/engine.ts +74 -69
- package/src/core/output-path-resolver.ts +14 -0
- package/src/reporters/json.ts +1 -1
- package/src/services/budget-evaluator.ts +13 -9
- package/src/services/budget-resolver.ts +254 -0
- package/src/services/file-loader.ts +1 -1
- package/src/types/budgets.ts +38 -0
- package/src/types/core.ts +64 -99
- package/dist/core/benchmark-schema.cjs.map +0 -1
- package/dist/core/benchmark-schema.d.cts +0 -139
- package/dist/core/benchmark-schema.d.cts.map +0 -1
- package/dist/core/benchmark-schema.d.ts +0 -139
- package/dist/core/benchmark-schema.d.ts.map +0 -1
- package/dist/core/benchmark-schema.js.map +0 -1
package/dist/config/schema.d.ts
CHANGED
|
@@ -6,7 +6,171 @@
|
|
|
6
6
|
* enabling JSON Schema generation.
|
|
7
7
|
*/
|
|
8
8
|
import * as z from 'zod';
|
|
9
|
-
import type {
|
|
9
|
+
import type { Budget, ResolvedBudgets } from "../types/budgets.js";
|
|
10
|
+
/**
|
|
11
|
+
* Schema for JSON reporter configuration options
|
|
12
|
+
*/
|
|
13
|
+
export declare const jsonReporterConfigSchema: z.ZodObject<{
|
|
14
|
+
prettyPrint: z.ZodOptional<z.ZodBoolean>;
|
|
15
|
+
}, z.core.$strip>;
|
|
16
|
+
/**
|
|
17
|
+
* Schema for reporter-specific configuration
|
|
18
|
+
*
|
|
19
|
+
* Allows typed configuration for known reporters while permitting unknown
|
|
20
|
+
* reporter configs via catchall.
|
|
21
|
+
*/
|
|
22
|
+
export declare const reporterConfigSchema: z.ZodObject<{
|
|
23
|
+
json: z.ZodOptional<z.ZodObject<{
|
|
24
|
+
prettyPrint: z.ZodOptional<z.ZodBoolean>;
|
|
25
|
+
}, z.core.$strip>>;
|
|
26
|
+
}, z.core.$catchall<z.ZodUnknown>>;
|
|
27
|
+
/**
|
|
28
|
+
* Schema for the main ModestBench configuration
|
|
29
|
+
*
|
|
30
|
+
* This is the complete configuration schema used for validating benchmark
|
|
31
|
+
* configuration from all sources (files, CLI args, defaults).
|
|
32
|
+
*
|
|
33
|
+
* The budgets field uses transforms to:
|
|
34
|
+
*
|
|
35
|
+
* 1. Parse string values like "10ms" or "10%" to numbers
|
|
36
|
+
* 2. Separate exact matches from wildcard patterns into ResolvedBudgets
|
|
37
|
+
*/
|
|
38
|
+
declare const modestBenchConfigSchema: z.ZodObject<{
|
|
39
|
+
budgets: z.ZodOptional<z.ZodPipe<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodObject<{
|
|
40
|
+
absolute: z.ZodOptional<z.ZodObject<{
|
|
41
|
+
maxP99: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
|
|
42
|
+
maxTime: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
|
|
43
|
+
minOpsPerSec: z.ZodOptional<z.ZodNumber>;
|
|
44
|
+
}, z.core.$strip>>;
|
|
45
|
+
relative: z.ZodOptional<z.ZodObject<{
|
|
46
|
+
maxRegression: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
|
|
47
|
+
}, z.core.$strip>>;
|
|
48
|
+
}, z.core.$strip>, z.ZodTransform<Budget, {
|
|
49
|
+
absolute?: {
|
|
50
|
+
maxP99?: string | number | undefined;
|
|
51
|
+
maxTime?: string | number | undefined;
|
|
52
|
+
minOpsPerSec?: number | undefined;
|
|
53
|
+
} | undefined;
|
|
54
|
+
relative?: {
|
|
55
|
+
maxRegression?: string | number | undefined;
|
|
56
|
+
} | undefined;
|
|
57
|
+
}>>>>>, z.ZodTransform<ResolvedBudgets, Record<string, Record<string, Record<string, Budget>>>>>>;
|
|
58
|
+
$schema: z.ZodOptional<z.ZodString>;
|
|
59
|
+
bail: z.ZodBoolean;
|
|
60
|
+
baseline: z.ZodOptional<z.ZodString>;
|
|
61
|
+
budgetMode: z.ZodOptional<z.ZodEnum<{
|
|
62
|
+
fail: "fail";
|
|
63
|
+
warn: "warn";
|
|
64
|
+
report: "report";
|
|
65
|
+
}>>;
|
|
66
|
+
exclude: z.ZodArray<z.ZodString>;
|
|
67
|
+
excludeTags: z.ZodArray<z.ZodString>;
|
|
68
|
+
iterations: z.ZodNumber;
|
|
69
|
+
limitBy: z.ZodEnum<{
|
|
70
|
+
any: "any";
|
|
71
|
+
time: "time";
|
|
72
|
+
iterations: "iterations";
|
|
73
|
+
all: "all";
|
|
74
|
+
}>;
|
|
75
|
+
metadata: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
76
|
+
outputDir: z.ZodOptional<z.ZodString>;
|
|
77
|
+
pattern: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>;
|
|
78
|
+
profile: z.ZodOptional<z.ZodObject<{
|
|
79
|
+
exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
80
|
+
focus: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
81
|
+
minCallCount: z.ZodOptional<z.ZodNumber>;
|
|
82
|
+
minExecutionPercent: z.ZodDefault<z.ZodNumber>;
|
|
83
|
+
outputFile: z.ZodOptional<z.ZodString>;
|
|
84
|
+
smartDetection: z.ZodDefault<z.ZodBoolean>;
|
|
85
|
+
topN: z.ZodDefault<z.ZodNumber>;
|
|
86
|
+
}, z.core.$strip>>;
|
|
87
|
+
quiet: z.ZodBoolean;
|
|
88
|
+
reporterConfig: z.ZodObject<{
|
|
89
|
+
json: z.ZodOptional<z.ZodObject<{
|
|
90
|
+
prettyPrint: z.ZodOptional<z.ZodBoolean>;
|
|
91
|
+
}, z.core.$strip>>;
|
|
92
|
+
}, z.core.$catchall<z.ZodUnknown>>;
|
|
93
|
+
reporters: z.ZodArray<z.ZodString>;
|
|
94
|
+
tags: z.ZodArray<z.ZodString>;
|
|
95
|
+
thresholds: z.ZodObject<{
|
|
96
|
+
maxMarginOfError: z.ZodOptional<z.ZodNumber>;
|
|
97
|
+
maxMean: z.ZodOptional<z.ZodNumber>;
|
|
98
|
+
maxP95: z.ZodOptional<z.ZodNumber>;
|
|
99
|
+
maxP99: z.ZodOptional<z.ZodNumber>;
|
|
100
|
+
maxStdDev: z.ZodOptional<z.ZodNumber>;
|
|
101
|
+
minOpsPerSecond: z.ZodOptional<z.ZodNumber>;
|
|
102
|
+
}, z.core.$strict>;
|
|
103
|
+
time: z.ZodNumber;
|
|
104
|
+
timeout: z.ZodNumber;
|
|
105
|
+
verbose: z.ZodBoolean;
|
|
106
|
+
warmup: z.ZodNumber;
|
|
107
|
+
}, z.core.$strict>;
|
|
108
|
+
/**
|
|
109
|
+
* Partial input schema for JSON Schema generation
|
|
110
|
+
*
|
|
111
|
+
* This is used for generating JSON Schema for IDE autocomplete in config files.
|
|
112
|
+
*/
|
|
113
|
+
export declare const partialModestBenchConfigInputSchema: z.ZodObject<{
|
|
114
|
+
budgets: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
115
|
+
absolute: z.ZodOptional<z.ZodObject<{
|
|
116
|
+
maxP99: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
|
|
117
|
+
maxTime: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
|
|
118
|
+
minOpsPerSec: z.ZodOptional<z.ZodNumber>;
|
|
119
|
+
}, z.core.$strip>>;
|
|
120
|
+
relative: z.ZodOptional<z.ZodObject<{
|
|
121
|
+
maxRegression: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
|
|
122
|
+
}, z.core.$strip>>;
|
|
123
|
+
}, z.core.$strip>>>>>>;
|
|
124
|
+
$schema: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
125
|
+
bail: z.ZodOptional<z.ZodBoolean>;
|
|
126
|
+
baseline: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
127
|
+
budgetMode: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
|
|
128
|
+
fail: "fail";
|
|
129
|
+
warn: "warn";
|
|
130
|
+
report: "report";
|
|
131
|
+
}>>>;
|
|
132
|
+
exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
133
|
+
excludeTags: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
134
|
+
iterations: z.ZodOptional<z.ZodNumber>;
|
|
135
|
+
limitBy: z.ZodOptional<z.ZodEnum<{
|
|
136
|
+
any: "any";
|
|
137
|
+
time: "time";
|
|
138
|
+
iterations: "iterations";
|
|
139
|
+
all: "all";
|
|
140
|
+
}>>;
|
|
141
|
+
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
142
|
+
outputDir: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
143
|
+
pattern: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
|
|
144
|
+
profile: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
145
|
+
exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
146
|
+
focus: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
147
|
+
minCallCount: z.ZodOptional<z.ZodNumber>;
|
|
148
|
+
minExecutionPercent: z.ZodDefault<z.ZodNumber>;
|
|
149
|
+
outputFile: z.ZodOptional<z.ZodString>;
|
|
150
|
+
smartDetection: z.ZodDefault<z.ZodBoolean>;
|
|
151
|
+
topN: z.ZodDefault<z.ZodNumber>;
|
|
152
|
+
}, z.core.$strip>>>;
|
|
153
|
+
quiet: z.ZodOptional<z.ZodBoolean>;
|
|
154
|
+
reporterConfig: z.ZodOptional<z.ZodObject<{
|
|
155
|
+
json: z.ZodOptional<z.ZodObject<{
|
|
156
|
+
prettyPrint: z.ZodOptional<z.ZodBoolean>;
|
|
157
|
+
}, z.core.$strip>>;
|
|
158
|
+
}, z.core.$catchall<z.ZodUnknown>>>;
|
|
159
|
+
reporters: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
160
|
+
tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
161
|
+
thresholds: z.ZodOptional<z.ZodObject<{
|
|
162
|
+
maxMarginOfError: z.ZodOptional<z.ZodNumber>;
|
|
163
|
+
maxMean: z.ZodOptional<z.ZodNumber>;
|
|
164
|
+
maxP95: z.ZodOptional<z.ZodNumber>;
|
|
165
|
+
maxP99: z.ZodOptional<z.ZodNumber>;
|
|
166
|
+
maxStdDev: z.ZodOptional<z.ZodNumber>;
|
|
167
|
+
minOpsPerSecond: z.ZodOptional<z.ZodNumber>;
|
|
168
|
+
}, z.core.$strict>>;
|
|
169
|
+
time: z.ZodOptional<z.ZodNumber>;
|
|
170
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
171
|
+
verbose: z.ZodOptional<z.ZodBoolean>;
|
|
172
|
+
warmup: z.ZodOptional<z.ZodNumber>;
|
|
173
|
+
}, z.core.$strict>;
|
|
10
174
|
/**
|
|
11
175
|
* Validate a partial configuration object
|
|
12
176
|
*
|
|
@@ -15,31 +179,27 @@ import type { ModestBenchConfig } from "../types/core.js";
|
|
|
15
179
|
*/
|
|
16
180
|
export declare const partialModestBenchConfigSchema: z.ZodType<Partial<ModestBenchConfig>>;
|
|
17
181
|
/**
|
|
18
|
-
* Safely parse and validate a partial configuration object
|
|
19
|
-
* transformation
|
|
182
|
+
* Safely parse and validate a partial configuration object
|
|
20
183
|
*
|
|
21
184
|
* @param config - The configuration object to validate
|
|
22
185
|
* @returns A result object with either success: true and data, or success:
|
|
23
186
|
* false and error
|
|
24
187
|
*/
|
|
25
|
-
export declare const safeParsePartialConfig: (config: unknown) => z.ZodSafeParseResult<Partial<
|
|
26
|
-
/**
|
|
27
|
-
* Safely parse and validate a configuration object
|
|
28
|
-
*
|
|
29
|
-
* @param config - The configuration object to validate
|
|
30
|
-
* @returns A result object with either success: true and data, or success:
|
|
31
|
-
* false and error
|
|
32
|
-
*/
|
|
33
|
-
export declare const safeParseConfig: (config: unknown) => z.ZodSafeParseSuccess<{
|
|
188
|
+
export declare const safeParsePartialConfig: (config: unknown) => z.ZodSafeParseResult<Partial<{
|
|
34
189
|
bail: boolean;
|
|
35
190
|
exclude: string[];
|
|
36
191
|
excludeTags: string[];
|
|
37
192
|
iterations: number;
|
|
38
|
-
limitBy: "any" | "
|
|
193
|
+
limitBy: "any" | "time" | "iterations" | "all";
|
|
39
194
|
metadata: Record<string, unknown>;
|
|
40
195
|
pattern: string | string[];
|
|
41
196
|
quiet: boolean;
|
|
42
|
-
reporterConfig:
|
|
197
|
+
reporterConfig: {
|
|
198
|
+
[x: string]: unknown;
|
|
199
|
+
json?: {
|
|
200
|
+
prettyPrint?: boolean | undefined;
|
|
201
|
+
} | undefined;
|
|
202
|
+
};
|
|
43
203
|
reporters: string[];
|
|
44
204
|
tags: string[];
|
|
45
205
|
thresholds: {
|
|
@@ -54,19 +214,10 @@ export declare const safeParseConfig: (config: unknown) => z.ZodSafeParseSuccess
|
|
|
54
214
|
timeout: number;
|
|
55
215
|
verbose: boolean;
|
|
56
216
|
warmup: number;
|
|
217
|
+
budgets?: ResolvedBudgets | undefined;
|
|
57
218
|
$schema?: string | undefined;
|
|
58
219
|
baseline?: string | undefined;
|
|
59
220
|
budgetMode?: "fail" | "warn" | "report" | undefined;
|
|
60
|
-
budgets?: Record<string, Record<string, Record<string, {
|
|
61
|
-
absolute?: {
|
|
62
|
-
maxTime: string | number;
|
|
63
|
-
maxP99?: string | number | undefined;
|
|
64
|
-
minOpsPerSec?: number | undefined;
|
|
65
|
-
} | undefined;
|
|
66
|
-
relative?: {
|
|
67
|
-
maxRegression?: string | number | undefined;
|
|
68
|
-
} | undefined;
|
|
69
|
-
}>>> | undefined;
|
|
70
221
|
outputDir?: string | undefined;
|
|
71
222
|
profile?: {
|
|
72
223
|
minExecutionPercent: number;
|
|
@@ -77,16 +228,29 @@ export declare const safeParseConfig: (config: unknown) => z.ZodSafeParseSuccess
|
|
|
77
228
|
minCallCount?: number | undefined;
|
|
78
229
|
outputFile?: string | undefined;
|
|
79
230
|
} | undefined;
|
|
80
|
-
}
|
|
231
|
+
}>>;
|
|
232
|
+
/**
|
|
233
|
+
* Safely parse and validate a configuration object
|
|
234
|
+
*
|
|
235
|
+
* @param config - The configuration object to validate
|
|
236
|
+
* @returns A result object with either success: true and data, or success:
|
|
237
|
+
* false and error
|
|
238
|
+
*/
|
|
239
|
+
export declare const safeParseConfig: (config: unknown) => z.ZodSafeParseResult<{
|
|
81
240
|
bail: boolean;
|
|
82
241
|
exclude: string[];
|
|
83
242
|
excludeTags: string[];
|
|
84
243
|
iterations: number;
|
|
85
|
-
limitBy: "any" | "
|
|
244
|
+
limitBy: "any" | "time" | "iterations" | "all";
|
|
86
245
|
metadata: Record<string, unknown>;
|
|
87
246
|
pattern: string | string[];
|
|
88
247
|
quiet: boolean;
|
|
89
|
-
reporterConfig:
|
|
248
|
+
reporterConfig: {
|
|
249
|
+
[x: string]: unknown;
|
|
250
|
+
json?: {
|
|
251
|
+
prettyPrint?: boolean | undefined;
|
|
252
|
+
} | undefined;
|
|
253
|
+
};
|
|
90
254
|
reporters: string[];
|
|
91
255
|
tags: string[];
|
|
92
256
|
thresholds: {
|
|
@@ -101,19 +265,10 @@ export declare const safeParseConfig: (config: unknown) => z.ZodSafeParseSuccess
|
|
|
101
265
|
timeout: number;
|
|
102
266
|
verbose: boolean;
|
|
103
267
|
warmup: number;
|
|
268
|
+
budgets?: ResolvedBudgets | undefined;
|
|
104
269
|
$schema?: string | undefined;
|
|
105
270
|
baseline?: string | undefined;
|
|
106
271
|
budgetMode?: "fail" | "warn" | "report" | undefined;
|
|
107
|
-
budgets?: Record<string, Record<string, Record<string, {
|
|
108
|
-
absolute?: {
|
|
109
|
-
maxTime: string | number;
|
|
110
|
-
maxP99?: string | number | undefined;
|
|
111
|
-
minOpsPerSec?: number | undefined;
|
|
112
|
-
} | undefined;
|
|
113
|
-
relative?: {
|
|
114
|
-
maxRegression?: string | number | undefined;
|
|
115
|
-
} | undefined;
|
|
116
|
-
}>>> | undefined;
|
|
117
272
|
outputDir?: string | undefined;
|
|
118
273
|
profile?: {
|
|
119
274
|
minExecutionPercent: number;
|
|
@@ -124,47 +279,20 @@ export declare const safeParseConfig: (config: unknown) => z.ZodSafeParseSuccess
|
|
|
124
279
|
minCallCount?: number | undefined;
|
|
125
280
|
outputFile?: string | undefined;
|
|
126
281
|
} | undefined;
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
maxMean?: number | undefined;
|
|
144
|
-
maxP95?: number | undefined;
|
|
145
|
-
maxP99?: number | undefined;
|
|
146
|
-
maxStdDev?: number | undefined;
|
|
147
|
-
minOpsPerSecond?: number | undefined;
|
|
148
|
-
};
|
|
149
|
-
time: number;
|
|
150
|
-
timeout: number;
|
|
151
|
-
verbose: boolean;
|
|
152
|
-
warmup: number;
|
|
153
|
-
$schema?: string | undefined;
|
|
154
|
-
baseline?: string | undefined;
|
|
155
|
-
budgetMode?: "fail" | "warn" | "report" | undefined;
|
|
156
|
-
outputDir?: string | undefined;
|
|
157
|
-
profile?: {
|
|
158
|
-
minExecutionPercent: number;
|
|
159
|
-
smartDetection: boolean;
|
|
160
|
-
topN: number;
|
|
161
|
-
exclude?: string[] | undefined;
|
|
162
|
-
focus?: string[] | undefined;
|
|
163
|
-
minCallCount?: number | undefined;
|
|
164
|
-
outputFile?: string | undefined;
|
|
165
|
-
} | undefined;
|
|
166
|
-
};
|
|
167
|
-
success: true;
|
|
168
|
-
error?: never;
|
|
169
|
-
};
|
|
282
|
+
}>;
|
|
283
|
+
/**
|
|
284
|
+
* Configuration type after parsing (output type)
|
|
285
|
+
*
|
|
286
|
+
* This is the type you get after parsing a config file - budgets are
|
|
287
|
+
* transformed to ResolvedBudgets and string values are converted to numbers.
|
|
288
|
+
*/
|
|
289
|
+
export type ModestBenchConfig = z.infer<typeof modestBenchConfigSchema>;
|
|
290
|
+
/**
|
|
291
|
+
* Configuration type before parsing (input type)
|
|
292
|
+
*
|
|
293
|
+
* This is the type of config files written by users - budgets are nested (file
|
|
294
|
+
* → suite → task) and values can be strings like "10ms" or "10%".
|
|
295
|
+
*/
|
|
296
|
+
export type ModestBenchConfigInput = z.input<typeof modestBenchConfigSchema>;
|
|
297
|
+
export {};
|
|
170
298
|
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAEzB,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAEzB,OAAO,KAAK,EACV,MAAM,EAEN,eAAe,EAChB,4BAA4B;AAS7B;;GAEG;AACH,eAAO,MAAM,wBAAwB;;iBAKnC,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB;;;;kCAS9B,CAAC;AAkYJ;;;;;;;;;;GAUG;AACH,QAAA,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAOJ,CAAC;AAkB1B;;;;GAIG;AACH,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBACR,CAAC;AAEzC;;;;;GAKG;AACH,eAAO,MAAM,8BAA8B,EAAE,CAAC,CAAC,OAAO,CACpD,OAAO,CAAC,iBAAiB,CAAC,CACS,CAAC;AAEtC;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,GAAI,QAAQ,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAErD,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,GAAI,QAAQ,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE9C,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE;;;;;GAKG;AACH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
|