@overkill-dev/run 0.0.80 → 0.0.82
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/baselines/calibration-reference.js +10 -0
- package/baselines/calibration-reference.js.map +1 -0
- package/baselines/calibration-store.js +185 -0
- package/baselines/calibration-store.js.map +1 -0
- package/baselines/performance-adapter.d.ts +1 -1
- package/baselines/performance-adapter.d.ts.map +1 -1
- package/baselines/performance-baseline.d.ts +17 -3
- package/baselines/performance-baseline.d.ts.map +1 -1
- package/baselines/performance-baseline.js +13 -1
- package/baselines/performance-baseline.js.map +1 -1
- package/baselines/performance-evaluation.js +12 -11
- package/baselines/performance-evaluation.js.map +1 -1
- package/baselines/performance-observation.js +74 -0
- package/baselines/performance-observation.js.map +1 -0
- package/baselines/performance-plan.js +28 -2
- package/baselines/performance-plan.js.map +1 -1
- package/baselines/performance-schema.js +14 -1
- package/baselines/performance-schema.js.map +1 -1
- package/baselines/performance-store.js +2 -14
- package/baselines/performance-store.js.map +1 -1
- package/baselines/performance-workflow.js +18 -10
- package/baselines/performance-workflow.js.map +1 -1
- package/bench/benchmark-run-report.js +14 -5
- package/bench/benchmark-run-report.js.map +1 -1
- package/bench/benchmark-statistics-schema.d.ts +4 -0
- package/bench/benchmark-statistics-schema.d.ts.map +1 -0
- package/bench/benchmark-statistics-schema.js +40 -0
- package/bench/benchmark-statistics-schema.js.map +1 -0
- package/bench/calibration-evidence.js +80 -0
- package/bench/calibration-evidence.js.map +1 -0
- package/bench/calibration-machine.d.ts +14 -0
- package/bench/calibration-machine.d.ts.map +1 -0
- package/bench/calibration-machine.js +43 -0
- package/bench/calibration-machine.js.map +1 -0
- package/bench/calibration-report.d.ts +24 -0
- package/bench/calibration-report.d.ts.map +1 -0
- package/bench/calibration-report.js +28 -0
- package/bench/calibration-report.js.map +1 -0
- package/bench/cpu-reference-workload.d.ts +2 -0
- package/bench/cpu-reference-workload.d.ts.map +1 -0
- package/bench/cpu-reference-workload.js +12 -0
- package/bench/cpu-reference-workload.js.map +1 -0
- package/bench/host-calibration-result.d.ts +15 -0
- package/bench/host-calibration-result.d.ts.map +1 -0
- package/engine/async-leak-diagnostics.js +18 -5
- package/engine/async-leak-diagnostics.js.map +1 -1
- package/engine/benchmark-environment.d.ts +8 -0
- package/engine/benchmark-environment.d.ts.map +1 -0
- package/engine/benchmark-garbage-collection.d.ts +0 -5
- package/engine/benchmark-garbage-collection.d.ts.map +1 -1
- package/engine/benchmark-garbage-collection.js.map +1 -1
- package/engine/benchmark-node.d.ts +3 -2
- package/engine/benchmark-node.d.ts.map +1 -1
- package/engine/benchmark-node.js +9 -0
- package/engine/benchmark-node.js.map +1 -0
- package/engine/benchmark-result.d.ts +85 -1
- package/engine/benchmark-result.d.ts.map +1 -1
- package/engine/benchmark-result.js.map +1 -1
- package/engine/case-attempt-execution.js +25 -17
- package/engine/case-attempt-execution.js.map +1 -1
- package/engine/case-body-execution.js +1 -0
- package/engine/case-body-execution.js.map +1 -1
- package/engine/execution-async-leak-policy.d.ts +3 -0
- package/engine/execution-async-leak-policy.d.ts.map +1 -0
- package/engine/execution-async-leak-policy.js +38 -23
- package/engine/execution-async-leak-policy.js.map +1 -1
- package/engine/execution-error-ownership.d.ts +6 -0
- package/engine/execution-error-ownership.d.ts.map +1 -0
- package/engine/execution-error-ownership.js +83 -0
- package/engine/execution-error-ownership.js.map +1 -0
- package/engine/execution-global-error-observer.d.ts +1 -4
- package/engine/execution-global-error-observer.d.ts.map +1 -1
- package/engine/execution-global-error-observer.js +41 -81
- package/engine/execution-global-error-observer.js.map +1 -1
- package/engine/execution-observation.js +198 -0
- package/engine/execution-observation.js.map +1 -0
- package/engine/execution-options.d.ts +9 -0
- package/engine/execution-options.d.ts.map +1 -1
- package/engine/execution-preparation.d.ts +13 -0
- package/engine/execution-preparation.d.ts.map +1 -0
- package/engine/execution-preparation.js +34 -0
- package/engine/execution-preparation.js.map +1 -0
- package/engine/execution-supervision-state.js +8 -0
- package/engine/execution-supervision-state.js.map +1 -1
- package/engine/execution-supervision.d.ts +1 -1
- package/engine/execution-supervision.d.ts.map +1 -1
- package/engine/execution-supervision.js +3 -3
- package/engine/execution-supervision.js.map +1 -1
- package/engine/execution-test-plan-cases.js +11 -9
- package/engine/execution-test-plan-cases.js.map +1 -1
- package/engine/execution.d.ts +3 -1
- package/engine/execution.d.ts.map +1 -1
- package/engine/execution.js +3 -27
- package/engine/execution.js.map +1 -1
- package/engine/infrastructure-resource-observation.js +55 -0
- package/engine/infrastructure-resource-observation.js.map +1 -0
- package/engine/reporter-dispatcher.d.ts.map +1 -1
- package/engine/reporter-dispatcher.js +6 -3
- package/engine/reporter-dispatcher.js.map +1 -1
- package/engine/reporter-output-scope.js +7 -2
- package/engine/reporter-output-scope.js.map +1 -1
- package/engine/resource-owner-observation.js +97 -7
- package/engine/resource-owner-observation.js.map +1 -1
- package/execution-termination.d.ts +2 -0
- package/execution-termination.d.ts.map +1 -0
- package/execution-termination.js +8 -0
- package/execution-termination.js.map +1 -0
- package/invocation-budget.d.ts +13 -0
- package/invocation-budget.d.ts.map +1 -0
- package/invocation-budget.js +35 -0
- package/invocation-budget.js.map +1 -0
- package/package.json +13 -1
- package/packages/run/benchmark-calibration.entry-point.d.ts +12 -14
- package/packages/run/benchmark-calibration.entry-point.d.ts.map +1 -1
- package/packages/run/benchmark-calibration.entry-point.js +11 -54
- package/packages/run/benchmark-calibration.entry-point.js.map +1 -1
- package/packages/run/command-line.entry-point.d.ts.map +1 -1
- package/packages/run/command-line.entry-point.js +4 -0
- package/packages/run/command-line.entry-point.js.map +1 -1
- package/packages/run/run.entry-point.d.ts +2 -0
- package/packages/run/run.entry-point.d.ts.map +1 -1
- package/packages/run/run.entry-point.js +2 -0
- package/packages/run/run.entry-point.js.map +1 -1
- package/readme.md +27 -0
- package/run/benchmark-baseline-commands.js +9 -4
- package/run/benchmark-baseline-commands.js.map +1 -1
- package/run/benchmark-baseline-execution.js +20 -0
- package/run/benchmark-baseline-execution.js.map +1 -0
- package/run/benchmark-baseline-operations.js +0 -14
- package/run/benchmark-baseline-operations.js.map +1 -1
- package/run/benchmark-baseline-preparation.js +63 -0
- package/run/benchmark-baseline-preparation.js.map +1 -0
- package/run/benchmark-baseline-run.js +1 -44
- package/run/benchmark-baseline-run.js.map +1 -1
- package/run/benchmark-calibration.js +7 -0
- package/run/benchmark-calibration.js.map +1 -1
- package/run/benchmark-commands.d.ts.map +1 -1
- package/run/benchmark-commands.js +31 -0
- package/run/benchmark-commands.js.map +1 -1
- package/run/benchmark-definition-schema.js +4 -1
- package/run/benchmark-definition-schema.js.map +1 -1
- package/run/benchmark-execution-environment.js +2 -1
- package/run/benchmark-execution-environment.js.map +1 -1
- package/run/benchmark-garbage-collection.js +14 -3
- package/run/benchmark-garbage-collection.js.map +1 -1
- package/run/benchmark-normalization-preparation.js +59 -0
- package/run/benchmark-normalization-preparation.js.map +1 -0
- package/run/benchmark-placement.js +1 -1
- package/run/benchmark-placement.js.map +1 -1
- package/run/benchmark-policy-schema.js +30 -0
- package/run/benchmark-policy-schema.js.map +1 -0
- package/run/benchmark-report-metadata.js +5 -3
- package/run/benchmark-report-metadata.js.map +1 -1
- package/run/benchmark-result-schema.js +5 -53
- package/run/benchmark-result-schema.js.map +1 -1
- package/run/calibration-baseline-references.js +39 -0
- package/run/calibration-baseline-references.js.map +1 -0
- package/run/calibration-capture-session.js +97 -0
- package/run/calibration-capture-session.js.map +1 -0
- package/run/calibration-inventory.js +27 -0
- package/run/calibration-inventory.js.map +1 -0
- package/run/calibration-maintenance.js +88 -0
- package/run/calibration-maintenance.js.map +1 -0
- package/run/capability-policy.js +82 -79
- package/run/capability-policy.js.map +1 -1
- package/run/child-process-outbox.js +13 -5
- package/run/child-process-outbox.js.map +1 -1
- package/run/collected-run-execution.js +3 -7
- package/run/collected-run-execution.js.map +1 -1
- package/run/command-line-command-namespace.js +3 -0
- package/run/command-line-command-namespace.js.map +1 -1
- package/run/command-line-command.d.ts +1 -0
- package/run/command-line-command.d.ts.map +1 -1
- package/run/command-line-command.js.map +1 -1
- package/run/default-run-engine.js +25 -0
- package/run/default-run-engine.js.map +1 -1
- package/run/execution-session-child.js +9 -2
- package/run/execution-session-child.js.map +1 -1
- package/run/execution-session-collected.js +7 -1
- package/run/execution-session-collected.js.map +1 -1
- package/run/execution-session-environment.js +1 -1
- package/run/execution-session-environment.js.map +1 -1
- package/run/execution-session-host.js +17 -0
- package/run/execution-session-host.js.map +1 -1
- package/run/execution-session-lifecycle.js +38 -10
- package/run/execution-session-lifecycle.js.map +1 -1
- package/run/execution-session-observation.js +95 -0
- package/run/execution-session-observation.js.map +1 -0
- package/run/execution-session-ownership.js +23 -0
- package/run/execution-session-ownership.js.map +1 -0
- package/run/execution-session-process.js +26 -4
- package/run/execution-session-process.js.map +1 -1
- package/run/execution-session-schema.js +2 -0
- package/run/execution-session-schema.js.map +1 -1
- package/run/execution-session-supervised.js +21 -75
- package/run/execution-session-supervised.js.map +1 -1
- package/run/execution-session.js +37 -35
- package/run/execution-session.js.map +1 -1
- package/run/frozen-policy-validation.js +8 -2
- package/run/frozen-policy-validation.js.map +1 -1
- package/run/frozen-supervised-command-schema.js +2 -2
- package/run/frozen-supervised-command-schema.js.map +1 -1
- package/run/initialized-run-collection.js +80 -0
- package/run/initialized-run-collection.js.map +1 -0
- package/run/initialized-run.js +2 -49
- package/run/initialized-run.js.map +1 -1
- package/run/node-child-process-starters.js +2 -0
- package/run/node-child-process-starters.js.map +1 -1
- package/run/path-containment.js +13 -0
- package/run/path-containment.js.map +1 -1
- package/run/permission-denial-runtime-policy.js +30 -50
- package/run/permission-denial-runtime-policy.js.map +1 -1
- package/run/run-cancellation.js.map +1 -1
- package/run/run-collected-resolution.js +7 -0
- package/run/run-collected-resolution.js.map +1 -1
- package/run/run-command-schema.js +2 -0
- package/run/run-command-schema.js.map +1 -1
- package/run/run-engine-primitives.d.ts +2 -1
- package/run/run-engine-primitives.d.ts.map +1 -1
- package/run/run-execution.js +1 -1
- package/run/run-execution.js.map +1 -1
- package/run/run-facts.js +1 -0
- package/run/run-facts.js.map +1 -1
- package/run/run-input-resolution.js +5 -3
- package/run/run-input-resolution.js.map +1 -1
- package/run/run-isolated-command.js +8 -2
- package/run/run-isolated-command.js.map +1 -1
- package/run/run-isolated-process.js +5 -0
- package/run/run-isolated-process.js.map +1 -1
- package/run/run-local-command.js +3 -7
- package/run/run-local-command.js.map +1 -1
- package/run/run-local-coverage.js +3 -7
- package/run/run-local-coverage.js.map +1 -1
- package/run/run-local-planning.js +2 -0
- package/run/run-local-planning.js.map +1 -1
- package/run/run-supervised-process.js +14 -3
- package/run/run-supervised-process.js.map +1 -1
- package/run/run-support.js +11 -9
- package/run/run-support.js.map +1 -1
- package/run/run-types.d.ts +5 -2
- package/run/run-types.d.ts.map +1 -1
- package/run/run-types.js.map +1 -1
- package/run/run.js +3 -1
- package/run/run.js.map +1 -1
- package/run/supervised-child-execution.js +1 -1
- package/run/supervised-child-execution.js.map +1 -1
- package/run/supervised-child-failure.js +9 -3
- package/run/supervised-child-failure.js.map +1 -1
- package/run/supervised-child-process.d.ts.map +1 -1
- package/run/supervised-child-process.js +2 -2
- package/run/supervised-child-process.js.map +1 -1
- package/run/supervised-child-test-plan.js +3 -3
- package/run/supervised-child-test-plan.js.map +1 -1
- package/run/supervised-child-transport.js +10 -5
- package/run/supervised-child-transport.js.map +1 -1
- package/run/supervised-child.entry-point.js +1 -0
- package/run/supervised-child.entry-point.js.map +1 -1
- package/run/supervised-child.js +49 -35
- package/run/supervised-child.js.map +1 -1
- package/run/supervised-protocol-schema.js +1 -1
- package/run/supervised-protocol-schema.js.map +1 -1
- package/run/supervised-protocol.js.map +1 -1
- package/run/supervised-run-process-policy.js +11 -0
- package/run/supervised-run-process-policy.js.map +1 -1
- package/run/supervised-run-runtime.js +1 -1
- package/run/supervised-run-runtime.js.map +1 -1
- package/run/worker-execution-engine.js +1 -1
- package/run/worker-execution-engine.js.map +1 -1
- package/run/worker-pool-command.js +4 -6
- package/run/worker-pool-command.js.map +1 -1
- package/run/worker-pool-host.entry-point.js +1 -1
- package/run/worker-pool-host.entry-point.js.map +1 -1
- package/run/worker-pool-protocol.js.map +1 -1
- package/run/worker-pool-worker-plan.js +2 -2
- package/run/worker-pool-worker-plan.js.map +1 -1
- package/software-bill-of-materials.cyclonedx.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"benchmark-baseline-run.js","sourceRoot":"","sources":["../../../../source/run/benchmark-baseline-run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"benchmark-baseline-run.js","sourceRoot":"","sources":["../../../../source/run/benchmark-baseline-run.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { execFile } from 'node:child_process';
|
|
2
2
|
import { fileURLToPath } from 'node:url';
|
|
3
|
+
import { readCalibrationHostMetadata, calibrationMachineClass } from "../bench/calibration-machine.js";
|
|
3
4
|
import { benchmarkCalibrationSchema } from "../bench/calibration-schema.js";
|
|
4
5
|
import { childProcessEntryPointUrl } from "./child-process.entry-point.js";
|
|
5
6
|
import { benchmarkCalibrationRole, childRoleArgument } from "./child-process-roles.js";
|
|
@@ -23,6 +24,12 @@ function calibrationNodeArguments(execution) {
|
|
|
23
24
|
}
|
|
24
25
|
return execution.hostProcess.kind === 'child' ? execution.hostProcess.nodeArguments : Array.from(process.execArgv);
|
|
25
26
|
}
|
|
27
|
+
export function benchmarkNormalizationMachine(execution, calibration) {
|
|
28
|
+
const metadata = readCalibrationHostMetadata(calibrationNodeArguments(execution));
|
|
29
|
+
return calibration === null
|
|
30
|
+
? { machineClass: calibrationMachineClass(metadata), metadata }
|
|
31
|
+
: { machineClass: calibration.machineClass, metadata: calibration.metadata };
|
|
32
|
+
}
|
|
26
33
|
export async function collectBenchmarkCalibration(input) {
|
|
27
34
|
const nodeArguments = calibrationNodeArguments(input.profile.execution);
|
|
28
35
|
const stdout = await calibrationOutput([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"benchmark-calibration.js","sourceRoot":"","sources":["../../../../source/run/benchmark-calibration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAwB,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"benchmark-calibration.js","sourceRoot":"","sources":["../../../../source/run/benchmark-calibration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAwB,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAGvG,OAAO,EAAE,0BAA0B,EAAmC,MAAM,gCAAgC,CAAC;AAC7G,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAQ1E,KAAK,UAAU,iBAAiB,CAAC,IAAuB,EAAE,OAAwB;IAC9E,OAAO,IAAI,OAAO,CAAC,SAAS,kBAAkB,CAAC,OAAO,EAAE,MAAM;QAC1D,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,SAAS,CAAC,KAAmB,EAAE,MAAuB;YACrG,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACjB,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACJ,MAAM,CAAC,KAAK,CAAC,CAAC;YAClB,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,wBAAwB,CAAC,SAA8C;IAC5E,IAAI,SAAS,CAAC,YAAY,KAAK,aAAa,EAAE,CAAC;QAC3C,OAAO,EAAE,CAAC;IACd,CAAC;IACD,OAAO,SAAS,CAAC,WAAW,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AACvH,CAAC;AAED,MAAM,UAAU,6BAA6B,CACzC,SAA8C,EAC9C,WAAyC;IAEzC,MAAM,QAAQ,GAAG,2BAA2B,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC,CAAC;IAClF,OAAO,WAAW,KAAK,IAAI;QACvB,CAAC,CAAC,EAAE,YAAY,EAAE,uBAAuB,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE;QAC/D,CAAC,CAAC,EAAE,YAAY,EAAE,WAAW,CAAC,YAAY,EAAE,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC;AACrF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,KAAyB;IACvE,MAAM,aAAa,GAAG,wBAAwB,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC;QACnC,GAAG,aAAa;QAChB,aAAa,CAAC,yBAAyB,CAAC;QACxC,iBAAiB,CAAC,wBAAwB,CAAC;KAC9C,EAAE;QACC,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,GAAG,EAAE,yBAAyB,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC;QAC5E,SAAS,EAAE,MAAM;QACjB,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,sBAAsB;KACzD,CAAC,CAAC;IACH,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3C,OAAO,0BAA0B,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AACpD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"benchmark-commands.d.ts","sourceRoot":"","sources":["../../../../source/run/benchmark-commands.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"benchmark-commands.d.ts","sourceRoot":"","sources":["../../../../source/run/benchmark-commands.ts"],"names":[],"mappings":"AACA,OAAO,EAEH,KAAK,4BAA4B,EAIpC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAiC,KAAK,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AA2CjH,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,4BAA4B,GAAG,4BAA4B,CA8EhH"}
|
|
@@ -1,7 +1,29 @@
|
|
|
1
|
+
import { readCalibrationReferenceReport } from "../bench/calibration-report.js";
|
|
1
2
|
import { createCommandLineErrorResultFromUnknown } from "./command-line-command.js";
|
|
2
3
|
import { selectBenchmarkCommandProfile } from "./benchmark-command-policy.js";
|
|
3
4
|
import { listTestsWithLoadedConfig, runTestsWithLoadedConfig } from "./command-line-execution.js";
|
|
4
5
|
import { createSystemRunTimingMeasurement, emptyTimingSpanMetadata } from "./run-timing-collection.js";
|
|
6
|
+
async function executeCalibration(dependencies, request, execution, timing) {
|
|
7
|
+
const loaded = await dependencies.loadConfig(request);
|
|
8
|
+
const profile = selectBenchmarkCommandProfile(request.runRequest.profile, loaded);
|
|
9
|
+
const result = await runTestsWithLoadedConfig({ ...request, runRequest: { ...request.runRequest, profile } }, {
|
|
10
|
+
...execution,
|
|
11
|
+
orchestrator: {
|
|
12
|
+
...execution.orchestrator,
|
|
13
|
+
runWithReporterDelivery: dependencies
|
|
14
|
+
.orchestrator
|
|
15
|
+
.bench
|
|
16
|
+
.calibrate
|
|
17
|
+
}
|
|
18
|
+
}, loaded, { timing });
|
|
19
|
+
const report = result.runResult === null ? null : readCalibrationReferenceReport(result.runResult);
|
|
20
|
+
return {
|
|
21
|
+
...result,
|
|
22
|
+
stdoutLines: report?.completed.map(function capturedReference(file) {
|
|
23
|
+
return `Captured calibration reference ${file}`;
|
|
24
|
+
}) ?? []
|
|
25
|
+
};
|
|
26
|
+
}
|
|
5
27
|
export function createBenchmarkCommands(dependencies) {
|
|
6
28
|
function baselineVerb(verb) {
|
|
7
29
|
return async function runBaselineCommand(request) {
|
|
@@ -17,6 +39,15 @@ export function createBenchmarkCommands(dependencies) {
|
|
|
17
39
|
}
|
|
18
40
|
};
|
|
19
41
|
return {
|
|
42
|
+
async calibrate(request) {
|
|
43
|
+
const timing = createSystemRunTimingMeasurement();
|
|
44
|
+
try {
|
|
45
|
+
return await executeCalibration(dependencies, request, execution, timing);
|
|
46
|
+
}
|
|
47
|
+
catch (error) {
|
|
48
|
+
return createCommandLineErrorResultFromUnknown(error);
|
|
49
|
+
}
|
|
50
|
+
},
|
|
20
51
|
baseline: {
|
|
21
52
|
apply: baselineVerb('apply'),
|
|
22
53
|
bootstrap: baselineVerb('bootstrap'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"benchmark-commands.js","sourceRoot":"","sources":["../../../../source/run/benchmark-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,uCAAuC,
|
|
1
|
+
{"version":3,"file":"benchmark-commands.js","sourceRoot":"","sources":["../../../../source/run/benchmark-commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { z } from 'zod/v4';
|
|
2
|
-
import {
|
|
2
|
+
import { normalizationRuleSummarySchema } from "../bench/calibration-evidence.js";
|
|
3
|
+
import { budgetStatisticSchema } from "../bench/benchmark-statistics-schema.js";
|
|
4
|
+
import { samplingPolicySchema, benchmarkLifecyclePolicySchema } from "./benchmark-policy-schema.js";
|
|
3
5
|
export const benchmarkDefinitionSchema = z.strictObject({
|
|
6
|
+
normalization: z.record(z.string(), normalizationRuleSummarySchema).default({}),
|
|
4
7
|
lifecycle: benchmarkLifecyclePolicySchema.nullable().default(null),
|
|
5
8
|
kind: z.string(),
|
|
6
9
|
workloads: z.array(z.strictObject({ name: z.string(), parameters: z.record(z.string(), z.json()) })),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"benchmark-definition-schema.js","sourceRoot":"","sources":["../../../../source/run/benchmark-definition-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"benchmark-definition-schema.js","sourceRoot":"","sources":["../../../../source/run/benchmark-definition-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAElF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAEpG,MAAM,CAAC,MAAM,yBAAyB,GAA0C,CAAC,CAAC,YAAY,CAAC;IAC3F,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,8BAA8B,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC/E,SAAS,EAAE,8BAA8B,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IACpG,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC;QACjB,CAAC,CAAC,YAAY,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAE,OAAO,EAAE,MAAM,CAAE,CAAC;YACjC,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC;gBAC/B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;gBAChB,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC;oBAC5B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;oBAChB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;oBACrB,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAE,CAAC;oBACrE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;iBACnB,CAAC,CAAC;aACN,CAAC,CAAC;SACN,CAAC;QACF,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,CAAE,MAAM,EAAE,KAAK,CAAE,CAAC,EAAE,CAAC;KAC7F,CAAC;IACF,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAChC,OAAO,EAAE,CAAC,CAAC,MAAM,CACb,CAAC,CAAC,MAAM,EAAE,EACV,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC;QACnB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;QAClB,SAAS,EAAE,qBAAqB;QAChC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC9B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KACjC,CAAC,CAAC,CACN;IACD,MAAM,EAAE,oBAAoB;CAC/B,CAAC,CAAC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
export function createBenchmarkExecutionEnvironment(policy, boundary) {
|
|
1
|
+
export function createBenchmarkExecutionEnvironment(policy, boundary, normalization) {
|
|
2
2
|
if (policy === null) {
|
|
3
3
|
return null;
|
|
4
4
|
}
|
|
5
5
|
const collect = globalThis.gc;
|
|
6
6
|
return {
|
|
7
|
+
normalization,
|
|
7
8
|
profileGarbageCollection: policy,
|
|
8
9
|
garbageCollection: boundary !== 'direct' && typeof collect === 'function'
|
|
9
10
|
? {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"benchmark-execution-environment.js","sourceRoot":"","sources":["../../../../source/run/benchmark-execution-environment.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,mCAAmC,CAC/C,MAA+C,EAC/C,QAA2D;
|
|
1
|
+
{"version":3,"file":"benchmark-execution-environment.js","sourceRoot":"","sources":["../../../../source/run/benchmark-execution-environment.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,mCAAmC,CAC/C,MAA+C,EAC/C,QAA2D,EAC3D,aAAmD;IAEnD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,OAAO,GAAG,UAAU,CAAC,EAAE,CAAC;IAC9B,OAAO;QACH,aAAa;QACb,wBAAwB,EAAE,MAAM;QAChC,iBAAiB,EAAE,QAAQ,KAAK,QAAQ,IAAI,OAAO,OAAO,KAAK,UAAU;YACrE,CAAC,CAAC;gBACE,IAAI,EAAE,WAAW;gBACjB,OAAO;oBACH,OAAO,EAAE,CAAC;gBACd,CAAC;aACJ;YACD,CAAC,CAAC;gBACE,IAAI,EAAE,aAAa;gBACnB,MAAM,EAAE,8FAA8F;aACzG;KACR,CAAC;AACN,CAAC"}
|
|
@@ -1,9 +1,20 @@
|
|
|
1
1
|
import { resolveBenchmarkGarbageCollection } from "../engine/benchmark-garbage-collection.js";
|
|
2
2
|
import { invalidRequest } from "./run-errors.js";
|
|
3
3
|
function requiresGarbageCollection(cases, profile) {
|
|
4
|
-
return cases
|
|
5
|
-
|
|
6
|
-
return testCase.skipReason === null
|
|
4
|
+
return cases
|
|
5
|
+
.filter(function activeCase({ testCase }) {
|
|
6
|
+
return testCase.skipReason === null;
|
|
7
|
+
})
|
|
8
|
+
.some(function requestsCollection({ testCase }) {
|
|
9
|
+
const requests = [
|
|
10
|
+
testCase.benchmark?.lifecycle?.garbageCollection ?? 'off',
|
|
11
|
+
...Object.values(testCase.benchmark?.normalization ?? {}).map(function calibrationRequest(rule) {
|
|
12
|
+
return rule.garbageCollection;
|
|
13
|
+
})
|
|
14
|
+
];
|
|
15
|
+
return requests.some(function enabled(request) {
|
|
16
|
+
return resolveBenchmarkGarbageCollection(request, profile) === 'after-sample';
|
|
17
|
+
});
|
|
7
18
|
});
|
|
8
19
|
}
|
|
9
20
|
function garbageCollectionArguments(nodeArguments) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"benchmark-garbage-collection.js","sourceRoot":"","sources":["../../../../source/run/benchmark-garbage-collection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,MAAM,2CAA2C,CAAC;AAI9F,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAIjD,SAAS,yBAAyB,CAAC,KAAqB,EAAE,OAAyC;IAC/F,OAAO,KAAK,CAAC,IAAI,CAAC,SAAS,kBAAkB,CAAC,EAAE,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"benchmark-garbage-collection.js","sourceRoot":"","sources":["../../../../source/run/benchmark-garbage-collection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,MAAM,2CAA2C,CAAC;AAI9F,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAIjD,SAAS,yBAAyB,CAAC,KAAqB,EAAE,OAAyC;IAC/F,OAAO,KAAK;SACP,MAAM,CAAC,SAAS,UAAU,CAAC,EAAE,QAAQ,EAAE;QACpC,OAAO,QAAQ,CAAC,UAAU,KAAK,IAAI,CAAC;IACxC,CAAC,CAAC;SACD,IAAI,CAAC,SAAS,kBAAkB,CAAC,EAAE,QAAQ,EAAE;QAC1C,MAAM,QAAQ,GAAG;YACb,QAAQ,CAAC,SAAS,EAAE,SAAS,EAAE,iBAAiB,IAAI,KAAK;YACzD,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,aAAa,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS,kBAAkB,CAAC,IAAI;gBAC1F,OAAO,IAAI,CAAC,iBAAiB,CAAC;YAClC,CAAC,CAAC;SACL,CAAC;QACF,OAAO,QAAQ,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,OAAO;YACzC,OAAO,iCAAiC,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,cAAc,CAAC;QAClF,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACX,CAAC;AAED,SAAS,0BAA0B,CAAC,aAAgC;IAChE,IACI,aAAa,CAAC,IAAI,CAAC,SAAS,yBAAyB,CAAC,QAAQ;QAC1D,OAAO,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrD,CAAC,CAAC,EACJ,CAAC;QACC,cAAc,CAAC,mFAAmF,CAAC,CAAC;IACxG,CAAC;IACD,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,SAAS,wBAAwB,CAAC,QAAQ;QACzE,OAAO,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,aAAa,CAAC;IAC3D,CAAC,CAAC,CAAC;IACH,OAAO,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAE,GAAG,aAAa,EAAE,aAAa,CAAE,CAAC;AACzE,CAAC;AAED,MAAM,UAAU,qCAAqC,CACjD,WAAwB,EACxB,OAAyC,EACzC,KAAqB;IAErB,IAAI,CAAC,yBAAyB,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;QAC7C,OAAO,WAAW,CAAC;IACvB,CAAC;IACD,OAAO;QACH,IAAI,EAAE,OAAO;QACb,aAAa,EAAE,0BAA0B,CAAC,WAAW,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3G,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { randomUUID } from 'node:crypto';
|
|
2
|
+
import { createCalibrationReferenceStore } from "../baselines/calibration-store.js";
|
|
3
|
+
import { benchmarkNormalizationMachine } from "./benchmark-calibration.js";
|
|
4
|
+
import { calibrationMaintenanceSession } from "./calibration-maintenance.js";
|
|
5
|
+
import { createCalibrationCaptureSession } from "./calibration-capture-session.js";
|
|
6
|
+
import { readSavedCalibrationReferences } from "./calibration-baseline-references.js";
|
|
7
|
+
export async function prepareBenchmarkNormalization(input, calibration, dependencies) {
|
|
8
|
+
if (input.profile.testFamily !== 'benchmark') {
|
|
9
|
+
throw new TypeError('Calibration references require a benchmark profile.');
|
|
10
|
+
}
|
|
11
|
+
const storeInput = {
|
|
12
|
+
projectRoot: input.projectRoot,
|
|
13
|
+
directory: input.profile.baselines.directory,
|
|
14
|
+
maxBytes: input.profile.attachments.maxArtifactBytes
|
|
15
|
+
};
|
|
16
|
+
const store = await createCalibrationReferenceStore(storeInput);
|
|
17
|
+
const references = input.benchmarkPurpose === 'capture' ? [] : await store.list();
|
|
18
|
+
const machine = benchmarkNormalizationMachine(input.profile.execution, calibration);
|
|
19
|
+
const context = {
|
|
20
|
+
executionId: randomUUID(),
|
|
21
|
+
mode: input.benchmarkPurpose,
|
|
22
|
+
profile: input.request.profile,
|
|
23
|
+
machine,
|
|
24
|
+
references: references
|
|
25
|
+
.filter(function matchingReference(entry) {
|
|
26
|
+
return entry.profile === input.request.profile;
|
|
27
|
+
})
|
|
28
|
+
.map(function snapshot(entry) {
|
|
29
|
+
return entry.snapshot;
|
|
30
|
+
}),
|
|
31
|
+
saved: await readSavedCalibrationReferences({
|
|
32
|
+
profile: input.profile,
|
|
33
|
+
profileName: input.request.profile,
|
|
34
|
+
projectRoot: input.projectRoot,
|
|
35
|
+
purpose: input.benchmarkPurpose
|
|
36
|
+
})
|
|
37
|
+
};
|
|
38
|
+
return {
|
|
39
|
+
context,
|
|
40
|
+
capture: input.benchmarkPurpose === 'capture'
|
|
41
|
+
? createCalibrationCaptureSession({
|
|
42
|
+
store,
|
|
43
|
+
profile: input.request.profile,
|
|
44
|
+
maxBytes: storeInput.maxBytes,
|
|
45
|
+
dependencies
|
|
46
|
+
})
|
|
47
|
+
: null,
|
|
48
|
+
maintain(baseline) {
|
|
49
|
+
return calibrationMaintenanceSession({
|
|
50
|
+
input: { ...input, benchmarkNormalization: context },
|
|
51
|
+
references,
|
|
52
|
+
store,
|
|
53
|
+
baseline,
|
|
54
|
+
dependencies
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=benchmark-normalization-preparation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"benchmark-normalization-preparation.js","sourceRoot":"","sources":["../../../../source/run/benchmark-normalization-preparation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AAEpF,OAAO,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAC7E,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AACnF,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AActF,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAC/C,KAAuB,EACvB,WAAyC,EACzC,YAAyC;IAEzC,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,KAAK,WAAW,EAAE,CAAC;QAC3C,MAAM,IAAI,SAAS,CAAC,qDAAqD,CAAC,CAAC;IAC/E,CAAC;IACD,MAAM,UAAU,GAAG;QACf,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS;QAC5C,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,gBAAgB;KACvD,CAAC;IACF,MAAM,KAAK,GAAG,MAAM,+BAA+B,CAAC,UAAU,CAAC,CAAC;IAChE,MAAM,UAAU,GAAG,KAAK,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;IAClF,MAAM,OAAO,GAAG,6BAA6B,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACpF,MAAM,OAAO,GAAkC;QAC3C,WAAW,EAAE,UAAU,EAAE;QACzB,IAAI,EAAE,KAAK,CAAC,gBAAgB;QAC5B,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO;QAC9B,OAAO;QACP,UAAU,EAAE,UAAU;aACjB,MAAM,CAAC,SAAS,iBAAiB,CAAC,KAAK;YACpC,OAAO,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QACnD,CAAC,CAAC;aACD,GAAG,CAAC,SAAS,QAAQ,CAAC,KAAK;YACxB,OAAO,KAAK,CAAC,QAAQ,CAAC;QAC1B,CAAC,CAAC;QACN,KAAK,EAAE,MAAM,8BAA8B,CAAC;YACxC,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO;YAClC,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,OAAO,EAAE,KAAK,CAAC,gBAAgB;SAClC,CAAC;KACL,CAAC;IACF,OAAO;QACH,OAAO;QACP,OAAO,EAAE,KAAK,CAAC,gBAAgB,KAAK,SAAS;YACzC,CAAC,CAAC,+BAA+B,CAAC;gBAC9B,KAAK;gBACL,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO;gBAC9B,QAAQ,EAAE,UAAU,CAAC,QAAQ;gBAC7B,YAAY;aACf,CAAC;YACF,CAAC,CAAC,IAAI;QACV,QAAQ,CAAC,QAAQ;YACb,OAAO,6BAA6B,CAAC;gBACjC,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,sBAAsB,EAAE,OAAO,EAAE;gBACpD,UAAU;gBACV,KAAK;gBACL,QAAQ;gBACR,YAAY;aACf,CAAC,CAAC;QACP,CAAC;KACJ,CAAC;AACN,CAAC"}
|
|
@@ -13,7 +13,7 @@ function parallelMeasurement(definition) {
|
|
|
13
13
|
});
|
|
14
14
|
})
|
|
15
15
|
];
|
|
16
|
-
return metrics.every(function artifactMetric(name) {
|
|
16
|
+
return Object.keys(definition.normalization).length === 0 && metrics.every(function artifactMetric(name) {
|
|
17
17
|
return !timingMetrics.has(name);
|
|
18
18
|
});
|
|
19
19
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"benchmark-placement.js","sourceRoot":"","sources":["../../../../source/run/benchmark-placement.ts"],"names":[],"mappings":"AAeA,MAAM,aAAa,GAAwB,IAAI,GAAG,CAAC,CAAE,sBAAsB,EAAE,qBAAqB,CAAE,CAAC,CAAC;AACtG,MAAM,YAAY,GAAG,GAAG,CAAC;AAEzB,SAAS,mBAAmB,CAAC,UAA6C;IACtE,IACI,UAAU,EAAE,IAAI,KAAK,aAAa,IAAI,UAAU,CAAC,WAAW,CAAC,IAAI,KAAK,SAAS;QAC/E,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAC9C,CAAC;QACC,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM,OAAO,GAAG;QACZ,GAAG,UAAU,CAAC,WAAW;QACzB,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,SAAS,aAAa,CAAC,OAAO;YACvE,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,MAAM;gBACrC,OAAO,MAAM,CAAC,MAAM,CAAC;YACzB,CAAC,CAAC,CAAC;QACP,CAAC,CAAC;KACL,CAAC;IACF,OAAO,OAAO,CAAC,KAAK,CAAC,SAAS,cAAc,CAAC,IAAI;
|
|
1
|
+
{"version":3,"file":"benchmark-placement.js","sourceRoot":"","sources":["../../../../source/run/benchmark-placement.ts"],"names":[],"mappings":"AAeA,MAAM,aAAa,GAAwB,IAAI,GAAG,CAAC,CAAE,sBAAsB,EAAE,qBAAqB,CAAE,CAAC,CAAC;AACtG,MAAM,YAAY,GAAG,GAAG,CAAC;AAEzB,SAAS,mBAAmB,CAAC,UAA6C;IACtE,IACI,UAAU,EAAE,IAAI,KAAK,aAAa,IAAI,UAAU,CAAC,WAAW,CAAC,IAAI,KAAK,SAAS;QAC/E,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAC9C,CAAC;QACC,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM,OAAO,GAAG;QACZ,GAAG,UAAU,CAAC,WAAW;QACzB,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,SAAS,aAAa,CAAC,OAAO;YACvE,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,MAAM;gBACrC,OAAO,MAAM,CAAC,MAAM,CAAC;YACzB,CAAC,CAAC,CAAC;QACP,CAAC,CAAC;KACL,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,cAAc,CAAC,IAAI;QACnG,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,eAAe,CAAC,OAA4B;IAGjD,OAAO,OAAO,CAAC,YAAY,KAAK,WAAW,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC;QACzE,OAAO,CAAC,KAAK,IAAI,CAAC,IAAI,OAAO,CAAC,KAAK,IAAI,YAAY,CAAC;AAC5D,CAAC;AAED,SAAS,UAAU,CAAC,OAA4B;IAG5C,OAAO,OAAO,CAAC,YAAY,KAAK,WAAW,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC;AAC5G,CAAC;AAED,SAAS,gBAAgB,CAAC,QAA+B;IACrD,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,eAAe,KAAK,OAAO;QACzD,CAAC,CAAC;YACE,QAAQ,CAAC,OAAO,CAAC,oBAAoB;YACrC,QAAQ,CAAC,OAAO,CAAC,uBAAuB;YACxC,QAAQ,CAAC,OAAO,CAAC,mBAAmB;SACvC;QACD,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,eAAe,KAAK,QAAQ;QAC5D,CAAC,CAAC,CAAE,QAAQ,CAAC,OAAO,CAAC,qBAAqB,EAAE,QAAQ,CAAC,OAAO,CAAC,yBAAyB,CAAE;QACxF,CAAC,CAAC,EAAE,CAAC;IACT,OAAO,QAAQ,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,OAAO;QACzC,OAAO,OAAO,CAAC,YAAY,KAAK,WAAW,IAAI,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IACpG,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,SAAS,SAAS,CAAC,OAAO;QAC5C,OAAO,OAAO,CAAC,YAAY,KAAK,WAAW,IAAI,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,KAAK,GAAG,YAAY,CAAC,CAAC;IAC/G,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,YAAY,CAAC,OAAyD;IAC3E,IAAI,OAAO,CAAC,YAAY,KAAK,aAAa,EAAE,CAAC;QACzC,OAAO,CAAC,CAAC;IACb,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC9B,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AAC5D,CAAC;AAED,SAAS,WAAW,CAAC,QAA+B;IAChD,MAAM,EAAE,oBAAoB,EAAE,eAAe,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC;IACpE,MAAM,EAAE,cAAc,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC;IAC5C,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,EAAE,CAAC;QACxG,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,IAAI,GAAG,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACzD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAChB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,KAAK,GAAG,cAAc,CAAC,KAAK,GAAG,YAAY,EAAE,IAAI,CAAC,CAAC;IAC3F,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,KAAK,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,UAAU,CAAC,IAAoC;IACpD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAChB,OAAO,CAAE,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC,EAAE,CAAE,CAAC;IAC7D,CAAC;IACD,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IAC1B,MAAM,cAAc,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC7C,MAAM,EAAE,sBAAsB,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC;IACpD,IAAI,cAAc,KAAK,IAAI,IAAI,CAAC,eAAe,CAAC,sBAAsB,CAAC,EAAE,CAAC;QACtE,OAAO,CAAE,EAAE,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,CAAC,EAAE,CAAE,CAAC;IAC9D,CAAC;IACD,OAAO;QACH,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE;QAC1C,GAAG,sBAAsB,CAAC,KAAK,KAAK,CAAC;YACjC,CAAC,CAAC,CAAE,EAAE,MAAM,EAAE,iBAA0B,EAAE,cAAc,EAAE,CAAC,EAAE,CAAE;YAC/D,CAAC,CAAC,EAAE;QACR,GAAG,gBAAgB,CAAC,QAAQ,CAAC;YACzB,CAAC,CAAC,CAAE,EAAE,MAAM,EAAE,mBAA4B,EAAE,cAAc,EAAE,CAAC,EAAE,CAAE;YACjE,CAAC,CAAC,EAAE;KACX,CAAC;AACN,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,KAA8B;IACpE,MAAM,MAAM,GAAuC;QAC/C,GAAG,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,mBAAmB,CAAC;YAC3C,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,CAAE,EAAE,MAAM,EAAE,aAAsB,EAAE,cAAc,EAAE,CAAC,EAAE,CAAE;QAC/D,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC;QACzB,GAAG,KAAK,CAAC,YAAY,KAAK,oBAAoB;YAC1C,CAAC,CAAC,CAAE,EAAE,MAAM,EAAE,eAAwB,EAAE,cAAc,EAAE,CAAC,EAAE,CAAE;YAC7D,CAAC,CAAC,EAAE;KACX,CAAC;IACF,OAAO;QACH,MAAM,EAAE,2BAA2B;QACnC,cAAc,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,OAAO,CAAC,KAAK;YACzD,OAAO,KAAK,CAAC,cAAc,CAAC;QAChC,CAAC,CAAC,CAAC;QACH,MAAM;KACT,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { z } from 'zod/v4';
|
|
2
|
+
import { maximumRetainedSamples, minimumInferentialSamples } from "../engine/benchmark-limits.js";
|
|
3
|
+
export const samplingPolicySchema = z
|
|
4
|
+
.strictObject({
|
|
5
|
+
confidenceLevel: z.number().gt(0).lt(1),
|
|
6
|
+
relativePrecision: z.number().nonnegative(),
|
|
7
|
+
absolutePrecision: z.record(z.string(), z.number().nonnegative()),
|
|
8
|
+
minimumSamples: z.number().int().min(minimumInferentialSamples),
|
|
9
|
+
maximumSamples: z.number().int().min(minimumInferentialSamples).max(maximumRetainedSamples)
|
|
10
|
+
})
|
|
11
|
+
.refine(function orderedLimits(policy) {
|
|
12
|
+
return policy.minimumSamples <= policy.maximumSamples;
|
|
13
|
+
});
|
|
14
|
+
const minimumCooldownMilliseconds = 100;
|
|
15
|
+
const maximumCooldownMilliseconds = 60_000;
|
|
16
|
+
export const legacyLifecyclePolicySchema = z.strictObject({
|
|
17
|
+
warmupSamples: z.number().int().min(0).max(maximumRetainedSamples),
|
|
18
|
+
cooldown: z.discriminatedUnion('mode', [
|
|
19
|
+
z.strictObject({ mode: z.literal('off') }),
|
|
20
|
+
z.strictObject({
|
|
21
|
+
mode: z.literal('runtime'),
|
|
22
|
+
maximumEventLoopUtilization: z.number().min(0).max(1),
|
|
23
|
+
timeoutMilliseconds: z.number().int().gt(minimumCooldownMilliseconds).max(maximumCooldownMilliseconds)
|
|
24
|
+
})
|
|
25
|
+
])
|
|
26
|
+
});
|
|
27
|
+
export const benchmarkLifecyclePolicySchema = legacyLifecyclePolicySchema.extend({
|
|
28
|
+
garbageCollection: z.enum(['off', 'after-sample', 'profile-default']).default('off')
|
|
29
|
+
});
|
|
30
|
+
//# sourceMappingURL=benchmark-policy-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"benchmark-policy-schema.js","sourceRoot":"","sources":["../../../../source/run/benchmark-policy-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAElG,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC;KAChC,YAAY,CAAC;IACV,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACvC,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE;IAC3C,iBAAiB,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC;IACjE,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,yBAAyB,CAAC;IAC/D,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,GAAG,CAAC,sBAAsB,CAAC;CAC9F,CAAC;KACD,MAAM,CAAC,SAAS,aAAa,CAAC,MAAM;IACjC,OAAO,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,cAAc,CAAC;AAC1D,CAAC,CAAC,CAAC;AAEP,MAAM,2BAA2B,GAAG,GAAG,CAAC;AACxC,MAAM,2BAA2B,GAAG,MAAM,CAAC;AAC3C,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,YAAY,CAAC;IACtD,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,sBAAsB,CAAC;IAClE,QAAQ,EAAE,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;QACnC,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1C,CAAC,CAAC,YAAY,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;YAC1B,2BAA2B,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACrD,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,2BAA2B,CAAC,CAAC,GAAG,CAAC,2BAA2B,CAAC;SACzG,CAAC;KACL,CAAC;CACL,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,8BAA8B,GAAG,2BAA2B,CAAC,MAAM,CAAC;IAC7E,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAE,KAAK,EAAE,cAAc,EAAE,iBAAiB,CAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;CACzF,CAAC,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { appendRunnerErrors } from "../engine/execution-result.js";
|
|
2
2
|
import { defaultAttachmentLimits } from "../engine/runtime-attachment.js";
|
|
3
3
|
import { runJsonArtifact } from "../attachments/run-json-artifact.js";
|
|
4
|
-
import { benchmarkRunMediaType, readBenchmarkRunMetadata } from "../bench/benchmark-run-report.js";
|
|
4
|
+
import { benchmarkRunMediaType, benchmarkRunMetadataVersion, readBenchmarkRunMetadata } from "../bench/benchmark-run-report.js";
|
|
5
5
|
function attachMetadata(result, metadata, maxBytes, capturedAtMicroseconds) {
|
|
6
6
|
try {
|
|
7
7
|
const artifact = runJsonArtifact({
|
|
@@ -32,7 +32,8 @@ export function withBenchmarkRunMetadata(result, facts, capturedAtMicroseconds)
|
|
|
32
32
|
return result;
|
|
33
33
|
}
|
|
34
34
|
const metadata = {
|
|
35
|
-
version:
|
|
35
|
+
version: benchmarkRunMetadataVersion,
|
|
36
|
+
normalization: facts.benchmarkNormalization,
|
|
36
37
|
host: facts.benchmarkHost,
|
|
37
38
|
placement: facts.benchmarkPlacement,
|
|
38
39
|
node: facts.environment.node,
|
|
@@ -54,7 +55,8 @@ export function withBenchmarkErrorMetadata(result, command, host) {
|
|
|
54
55
|
return result;
|
|
55
56
|
}
|
|
56
57
|
const metadata = {
|
|
57
|
-
version:
|
|
58
|
+
version: benchmarkRunMetadataVersion,
|
|
59
|
+
normalization: null,
|
|
58
60
|
host,
|
|
59
61
|
placement: null,
|
|
60
62
|
node: { arch: process.arch, platform: process.platform, version: process.version },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"benchmark-report-metadata.js","sourceRoot":"","sources":["../../../../source/run/benchmark-report-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EACH,qBAAqB,EACrB,wBAAwB,EAE3B,MAAM,kCAAkC,CAAC;AAK1C,SAAS,cAAc,CACnB,MAAiB,EACjB,QAA8B,EAC9B,QAAgB,EAChB,sBAA8B;IAE9B,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,eAAe,CAAC;YAC7B,MAAM;YACN,KAAK,EAAE,QAAQ;YACf,IAAI,EAAE,eAAe;YACrB,SAAS,EAAE,qBAAqB;YAChC,QAAQ;YACR,sBAAsB;SACzB,CAAC,CAAC;QACH,OAAO,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,CAAE,GAAG,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAE,EAAE,CAAC;IACvE,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACtB,OAAO,kBAAkB,CAAC,MAAM,EAAE,CAAE;gBAChC,YAAY,EAAE,IAAI;gBAClB,mBAAmB,EAAE,IAAI;gBACzB,gBAAgB,EAAE,IAAI;gBACtB,KAAK,EAAE,KAAK;gBACZ,WAAW,EAAE,EAAE;gBACf,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC/D,OAAO,EAAE,UAAU;aACtB,CAAE,CAAC,CAAC;IACT,CAAC;AACL,CAAC;AACD,MAAM,UAAU,wBAAwB,CACpC,MAAiB,EACjB,KAAe,EACf,sBAA8B;IAE9B,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAC5B,IAAI,SAAS,CAAC,UAAU,KAAK,WAAW,EAAE,CAAC;QACvC,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,MAAM,QAAQ,GAAyB;QACnC,OAAO,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"benchmark-report-metadata.js","sourceRoot":"","sources":["../../../../source/run/benchmark-report-metadata.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,52 +1,12 @@
|
|
|
1
1
|
import { z } from 'zod/v4';
|
|
2
|
+
import { metricSummarySchema, benchmarkBudgetResultSchema } from "../bench/benchmark-statistics-schema.js";
|
|
3
|
+
import { normalizationEvidenceSchema } from "../bench/calibration-evidence.js";
|
|
2
4
|
import { benchmarkLifecycleVersion } from "../engine/benchmark-result.js";
|
|
3
5
|
import { workloadIdSchema } from "../engine/identity-schema.js";
|
|
4
|
-
import {
|
|
5
|
-
const minimumCooldownMilliseconds = 100;
|
|
6
|
-
const maximumCooldownMilliseconds = 60_000;
|
|
7
|
-
const legacyLifecyclePolicySchema = z.strictObject({
|
|
8
|
-
warmupSamples: z.number().int().min(0).max(maximumRetainedSamples),
|
|
9
|
-
cooldown: z.discriminatedUnion('mode', [
|
|
10
|
-
z.strictObject({ mode: z.literal('off') }),
|
|
11
|
-
z.strictObject({
|
|
12
|
-
mode: z.literal('runtime'),
|
|
13
|
-
maximumEventLoopUtilization: z.number().min(0).max(1),
|
|
14
|
-
timeoutMilliseconds: z.number().int().gt(minimumCooldownMilliseconds).max(maximumCooldownMilliseconds)
|
|
15
|
-
})
|
|
16
|
-
])
|
|
17
|
-
});
|
|
18
|
-
export const benchmarkLifecyclePolicySchema = legacyLifecyclePolicySchema.extend({
|
|
19
|
-
garbageCollection: z.enum(['off', 'after-sample', 'profile-default']).default('off')
|
|
20
|
-
});
|
|
6
|
+
import { samplingPolicySchema, legacyLifecyclePolicySchema } from "./benchmark-policy-schema.js";
|
|
21
7
|
const resolvedLifecyclePolicySchema = legacyLifecyclePolicySchema.extend({
|
|
22
8
|
garbageCollection: z.enum(['off', 'after-sample'])
|
|
23
9
|
});
|
|
24
|
-
export const budgetStatisticSchema = z.discriminatedUnion('kind', [
|
|
25
|
-
z.strictObject({ kind: z.literal('quantile'), probability: z.number().gt(0).lt(1) }),
|
|
26
|
-
z.strictObject({ kind: z.literal('mean'), range: z.strictObject({ minimum: z.number(), maximum: z.number() }) }),
|
|
27
|
-
z.strictObject({ kind: z.literal('observed-minimum') }),
|
|
28
|
-
z.strictObject({ kind: z.literal('observed-maximum') })
|
|
29
|
-
]);
|
|
30
|
-
export const samplingPolicySchema = z.strictObject({
|
|
31
|
-
confidenceLevel: z.number().gt(0).lt(1),
|
|
32
|
-
relativePrecision: z.number().nonnegative(),
|
|
33
|
-
absolutePrecision: z.record(z.string(), z.number().nonnegative()),
|
|
34
|
-
minimumSamples: z.number().int().min(minimumInferentialSamples),
|
|
35
|
-
maximumSamples: z.number().int().min(minimumInferentialSamples).max(maximumRetainedSamples)
|
|
36
|
-
});
|
|
37
|
-
const metricSummarySchema = z.strictObject({
|
|
38
|
-
count: z.number().int().nonnegative(),
|
|
39
|
-
minimum: z.number().nullable(),
|
|
40
|
-
maximum: z.number().nullable(),
|
|
41
|
-
mean: z.number().nullable(),
|
|
42
|
-
median: z.number().nullable(),
|
|
43
|
-
provenance: z.strictObject({
|
|
44
|
-
collector: z.string(),
|
|
45
|
-
scope: z.enum(['region', 'thread', 'process', 'runtime', 'custom']),
|
|
46
|
-
unit: z.string()
|
|
47
|
-
}),
|
|
48
|
-
unavailableReasons: z.array(z.string())
|
|
49
|
-
});
|
|
50
10
|
const rawSamplesSchema = z.strictObject({
|
|
51
11
|
status: z.enum(['recorded', 'omitted', 'truncated']),
|
|
52
12
|
reference: z.string().nullable(),
|
|
@@ -99,6 +59,7 @@ const lifecycleResultSchema = z.union([
|
|
|
99
59
|
})
|
|
100
60
|
]);
|
|
101
61
|
export const benchmarkResultSchema = z.strictObject({
|
|
62
|
+
normalization: normalizationEvidenceSchema.nullable().default(null),
|
|
102
63
|
lifecycle: lifecycleResultSchema.nullable().default(null),
|
|
103
64
|
workload: workloadIdSchema,
|
|
104
65
|
policy: samplingPolicySchema,
|
|
@@ -106,16 +67,7 @@ export const benchmarkResultSchema = z.strictObject({
|
|
|
106
67
|
status: z.enum(['sampling', 'complete', 'incomplete']),
|
|
107
68
|
assumption: z.literal('independent-stationary-observations'),
|
|
108
69
|
metrics: z.record(z.string(), metricSummarySchema),
|
|
109
|
-
budgets: z.array(
|
|
110
|
-
metric: z.string(),
|
|
111
|
-
statistic: budgetStatisticSchema,
|
|
112
|
-
minimum: z.number().nullable(),
|
|
113
|
-
maximum: z.number().nullable(),
|
|
114
|
-
estimate: z.number().nullable(),
|
|
115
|
-
interval: z.strictObject({ lower: z.number().nullable(), upper: z.number().nullable() }),
|
|
116
|
-
precise: z.boolean(),
|
|
117
|
-
decision: z.enum(['pass', 'fail', 'undecided', 'unavailable'])
|
|
118
|
-
})),
|
|
70
|
+
budgets: z.array(benchmarkBudgetResultSchema),
|
|
119
71
|
rawSamples: rawSamplesSchema
|
|
120
72
|
});
|
|
121
73
|
//# sourceMappingURL=benchmark-result-schema.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"benchmark-result-schema.js","sourceRoot":"","sources":["../../../../source/run/benchmark-result-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,
|
|
1
|
+
{"version":3,"file":"benchmark-result-schema.js","sourceRoot":"","sources":["../../../../source/run/benchmark-result-schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { createPerformanceBaselineStore } from "../baselines/performance-store.js";
|
|
2
|
+
import { normalizedPerformanceBaselineVersion } from "../baselines/performance-baseline.js";
|
|
3
|
+
function selectedBaseline(input, baseline) {
|
|
4
|
+
return baseline.profile === input.profileName &&
|
|
5
|
+
input.profile.baselines.adapters.some(function selectedAdapter(adapter) {
|
|
6
|
+
return adapter.id === baseline.adapter;
|
|
7
|
+
});
|
|
8
|
+
}
|
|
9
|
+
function storedReferences(baseline) {
|
|
10
|
+
if (baseline.version !== normalizedPerformanceBaselineVersion || baseline.normalization === null) {
|
|
11
|
+
return [];
|
|
12
|
+
}
|
|
13
|
+
return Object.entries(baseline.normalization.metrics).map(function metric([name, evidence]) {
|
|
14
|
+
return {
|
|
15
|
+
work: baseline.work,
|
|
16
|
+
metric: name,
|
|
17
|
+
reference: evidence.reference,
|
|
18
|
+
budgetReference: evidence.budgetReference
|
|
19
|
+
};
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
async function readReferences(input, store) {
|
|
23
|
+
const expected = await store.list();
|
|
24
|
+
return expected.flatMap(function savedReferences(entry) {
|
|
25
|
+
return selectedBaseline(input, entry.baseline) ? storedReferences(entry.baseline) : [];
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
export async function readSavedCalibrationReferences(input) {
|
|
29
|
+
if (input.purpose === 'capture' || input.profile.baselines.adapters.length === 0) {
|
|
30
|
+
return [];
|
|
31
|
+
}
|
|
32
|
+
const store = await createPerformanceBaselineStore({
|
|
33
|
+
projectRoot: input.projectRoot,
|
|
34
|
+
directory: input.profile.baselines.directory,
|
|
35
|
+
maxBytes: input.profile.attachments.maxArtifactBytes
|
|
36
|
+
});
|
|
37
|
+
return await readReferences(input, store);
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=calibration-baseline-references.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calibration-baseline-references.js","sourceRoot":"","sources":["../../../../source/run/calibration-baseline-references.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAiC,MAAM,mCAAmC,CAAC;AAClH,OAAO,EACH,oCAAoC,EAEvC,MAAM,sCAAsC,CAAC;AAU9C,SAAS,gBAAgB,CAAC,KAAsB,EAAE,QAAmC;IACjF,OAAO,QAAQ,CAAC,OAAO,KAAK,KAAK,CAAC,WAAW;QACzC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,eAAe,CAAC,OAAO;YAClE,OAAO,OAAO,CAAC,EAAE,KAAK,QAAQ,CAAC,OAAO,CAAC;QAC3C,CAAC,CAAC,CAAC;AACX,CAAC;AACD,SAAS,gBAAgB,CAAC,QAAmC;IACzD,IAAI,QAAQ,CAAC,OAAO,KAAK,oCAAoC,IAAI,QAAQ,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;QAC/F,OAAO,EAAE,CAAC;IACd,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,CAAE,IAAI,EAAE,QAAQ,CAAE;QACxF,OAAO;YACH,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,eAAe,EAAE,QAAQ,CAAC,eAAe;SAC5C,CAAC;IACN,CAAC,CAAC,CAAC;AACP,CAAC;AACD,KAAK,UAAU,cAAc,CACzB,KAAsB,EACtB,KAA+B;IAE/B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;IACpC,OAAO,QAAQ,CAAC,OAAO,CAAC,SAAS,eAAe,CAAC,KAAK;QAClD,OAAO,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3F,CAAC,CAAC,CAAC;AACP,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAAC,KAAsB;IACvE,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/E,OAAO,EAAE,CAAC;IACd,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,8BAA8B,CAAC;QAC/C,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS;QAC5C,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,gBAAgB;KACvD,CAAC,CAAC;IACH,OAAO,MAAM,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAC9C,CAAC"}
|