@overkill-dev/run 0.0.8 → 0.0.10

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 (51) hide show
  1. package/engine/execution-result.js +77 -0
  2. package/engine/execution-result.js.map +1 -0
  3. package/engine/execution.d.ts +6 -2
  4. package/engine/execution.d.ts.map +1 -1
  5. package/engine/execution.js +68 -108
  6. package/engine/execution.js.map +1 -1
  7. package/engine/reporter-dispatcher.d.ts +16 -0
  8. package/engine/reporter-dispatcher.d.ts.map +1 -0
  9. package/engine/reporter-dispatcher.js +244 -0
  10. package/engine/reporter-dispatcher.js.map +1 -0
  11. package/engine/reporter-event-queue.js +2 -2
  12. package/engine/reporter-event-queue.js.map +1 -1
  13. package/engine/reporter-output.d.ts +24 -0
  14. package/engine/reporter-output.d.ts.map +1 -0
  15. package/engine/reporter-output.js +8 -0
  16. package/engine/reporter-output.js.map +1 -0
  17. package/engine/reporter.d.ts +86 -21
  18. package/engine/reporter.d.ts.map +1 -1
  19. package/engine/reporter.js +51 -145
  20. package/engine/reporter.js.map +1 -1
  21. package/engine/run-result.d.ts +22 -0
  22. package/engine/run-result.d.ts.map +1 -1
  23. package/engine/run-result.js.map +1 -1
  24. package/package.json +2 -2
  25. package/packages/run/command-line.entry-point.d.ts +1 -1
  26. package/packages/run/command-line.entry-point.d.ts.map +1 -1
  27. package/packages/run/run.entry-point.d.ts +1 -1
  28. package/packages/run/run.entry-point.d.ts.map +1 -1
  29. package/readme.md +18 -2
  30. package/reporters/line-failure-rendering.js +1 -0
  31. package/reporters/line-failure-rendering.js.map +1 -1
  32. package/reporters/line-reporter.js +1 -1
  33. package/reporters/line-reporter.js.map +1 -1
  34. package/reporters/source-location-rendering.js +1 -0
  35. package/reporters/source-location-rendering.js.map +1 -0
  36. package/run/command-line-runner.d.ts.map +1 -1
  37. package/run/command-line-runner.js +3 -1
  38. package/run/command-line-runner.js.map +1 -1
  39. package/run/resource-usage.d.ts +15 -0
  40. package/run/resource-usage.d.ts.map +1 -0
  41. package/run/resource-usage.js +107 -0
  42. package/run/resource-usage.js.map +1 -0
  43. package/run/run-config.d.ts +32 -4
  44. package/run/run-config.d.ts.map +1 -1
  45. package/run/run-config.js +70 -0
  46. package/run/run-config.js.map +1 -1
  47. package/run/run.d.ts +35 -4
  48. package/run/run.d.ts.map +1 -1
  49. package/run/run.js +150 -2
  50. package/run/run.js.map +1 -1
  51. package/sbom.cdx.json +10 -10
@@ -1,26 +1,58 @@
1
+ const managedStandardOutputSinkKinds = [
2
+ 'stderr-managed-primary',
3
+ 'stderr-managed-supplemental',
4
+ 'stdout-managed-primary',
5
+ 'stdout-managed-supplemental'
6
+ ];
7
+ const managedStandardOutputSinkKindNames = managedStandardOutputSinkKinds;
1
8
  export class ReporterSinkConflictError extends Error {
2
9
  constructor(message, options) {
3
10
  super(message, options);
4
11
  this.name = 'ReporterSinkConflictError';
5
12
  }
6
13
  }
7
- const callbackTimeoutMs = 100;
8
- function standardOutputSinkKey(sink) {
9
- return `standard-output:${sink.kind}`;
10
- }
11
14
  function pathSinkKey(sink) {
12
15
  return `path:${sink.path}`;
13
16
  }
14
- function validateStandardOutputSink(claimedSinks, sink) {
15
- const key = standardOutputSinkKey(sink);
16
- const existingSink = claimedSinks.get(key);
17
- if (existingSink !== undefined &&
18
- (existingSink.conflictPolicy === 'exclusive' || sink.conflictPolicy === 'exclusive')) {
19
- throw new ReporterSinkConflictError(`Reporter sink conflict: ${sink.kind} is claimed exclusively.`);
17
+ function standardOutputStream(sink) {
18
+ return sink.kind.startsWith('stderr') ? 'stderr' : 'stdout';
19
+ }
20
+ function isManagedStandardOutputSink(sink) {
21
+ return managedStandardOutputSinkKindNames.includes(sink.kind);
22
+ }
23
+ function standardOutputRole(sink) {
24
+ if (sink.kind.endsWith('primary')) {
25
+ return 'primary';
20
26
  }
27
+ return 'supplemental';
28
+ }
29
+ function standardOutputSinkConflictMessage(stream) {
30
+ return `Reporter sink conflict: ${stream} is claimed by incompatible reporters.`;
31
+ }
32
+ function nextClaimedStandardOutputRole(existingSink, sink) {
33
+ return existingSink?.role === 'primary' ? 'primary' : standardOutputRole(sink);
34
+ }
35
+ function claimStandardOutputSink(claimedSinks, key, sink) {
21
36
  const updatedSinks = new Map(claimedSinks);
22
- return updatedSinks.set(key, {
23
- conflictPolicy: sink.conflictPolicy
37
+ return updatedSinks.set(key, sink);
38
+ }
39
+ function validateRawStandardOutputSink(claimedSinks, sink) {
40
+ const key = standardOutputStream(sink);
41
+ if (claimedSinks.has(key)) {
42
+ throw new ReporterSinkConflictError(standardOutputSinkConflictMessage(key));
43
+ }
44
+ return claimStandardOutputSink(claimedSinks, key, { mode: 'raw', role: null });
45
+ }
46
+ function validateManagedStandardOutputSink(claimedSinks, sink) {
47
+ const key = standardOutputStream(sink);
48
+ const existingSink = claimedSinks.get(key);
49
+ const sinkRole = standardOutputRole(sink);
50
+ if (existingSink?.mode === 'raw' || existingSink?.role === 'primary' && sinkRole === 'primary') {
51
+ throw new ReporterSinkConflictError(standardOutputSinkConflictMessage(key));
52
+ }
53
+ return claimStandardOutputSink(claimedSinks, key, {
54
+ mode: 'managed',
55
+ role: nextClaimedStandardOutputRole(existingSink, sink)
24
56
  });
25
57
  }
26
58
  function validatePathSink(claimedSinks, sink) {
@@ -30,12 +62,16 @@ function validatePathSink(claimedSinks, sink) {
30
62
  }
31
63
  const updatedSinks = new Map(claimedSinks);
32
64
  return updatedSinks.set(key, {
33
- conflictPolicy: sink.conflictPolicy
65
+ mode: 'raw',
66
+ role: null
34
67
  });
35
68
  }
36
69
  function validateReporterSink(claimedSinks, sink) {
37
- if (sink.kind === 'stdout' || sink.kind === 'stderr') {
38
- return validateStandardOutputSink(claimedSinks, sink);
70
+ if (sink.kind === 'stdout-raw' || sink.kind === 'stderr-raw') {
71
+ return validateRawStandardOutputSink(claimedSinks, sink);
72
+ }
73
+ if (isManagedStandardOutputSink(sink)) {
74
+ return validateManagedStandardOutputSink(claimedSinks, sink);
39
75
  }
40
76
  if (sink.kind === 'file' || sink.kind === 'directory') {
41
77
  return validatePathSink(claimedSinks, sink);
@@ -50,134 +86,4 @@ export function validateReporterSinks(reporters) {
50
86
  }
51
87
  }
52
88
  }
53
- function formatReporterError(reporter, cause) {
54
- const reason = cause instanceof Error ? cause.message : String(cause);
55
- return {
56
- attributedTo: null,
57
- cause,
58
- message: `${reporter.name}: ${reason}`,
59
- subtype: 'reporter'
60
- };
61
- }
62
- function timeoutError(reporter) {
63
- return new Error(`${reporter.name} reporter callback timed out after ${callbackTimeoutMs} ms.`);
64
- }
65
- async function runReporterCallback(callback) {
66
- await callback();
67
- }
68
- export function createReporterDispatcher(dependencies) {
69
- const { wallClock } = dependencies;
70
- function createReporterTimeout(reporter) {
71
- const { promise, reject } = Promise.withResolvers();
72
- const timeout = wallClock.setTimeout(function rejectTimedOutCallback() {
73
- reject(timeoutError(reporter));
74
- }, callbackTimeoutMs);
75
- return {
76
- cancel() {
77
- wallClock.clearTimeout(timeout);
78
- },
79
- promise
80
- };
81
- }
82
- async function awaitReporterCallback(reporter, callback) {
83
- const reporterTimeout = createReporterTimeout(reporter);
84
- try {
85
- await Promise.race([runReporterCallback(callback), reporterTimeout.promise]);
86
- return null;
87
- }
88
- catch (error) {
89
- return formatReporterError(reporter, error);
90
- }
91
- finally {
92
- reporterTimeout.cancel();
93
- }
94
- }
95
- async function reportEventToReporter(reporter, event) {
96
- const error = await awaitReporterCallback(reporter, function sendReporterEvent() {
97
- return reporter.onEvent(event);
98
- });
99
- if (error === null) {
100
- return null;
101
- }
102
- return { error, reporter };
103
- }
104
- async function reportRunnerErrorToOtherReporters(reporters, failedReporter, error) {
105
- const event = { error, kind: 'runner-error' };
106
- const failures = await Promise.all(reporters.map(async function reportRunnerError(reporter) {
107
- if (reporter.kind !== 'real-time' || reporter === failedReporter) {
108
- return null;
109
- }
110
- return reportEventToReporter(reporter, event);
111
- }));
112
- return failures.flatMap(function collectFailure(failure) {
113
- return failure === null ? [] : [failure.error];
114
- });
115
- }
116
- async function collectReporterErrorsWithNotifications(reporters, reporterErrors) {
117
- const notificationErrors = await Promise.all(reporterErrors.map(async function reportError(failure) {
118
- return reportRunnerErrorToOtherReporters(reporters, failure.reporter, failure.error);
119
- }));
120
- return [
121
- ...reporterErrors.map(function toError(failure) {
122
- return failure.error;
123
- }),
124
- ...notificationErrors.flat()
125
- ];
126
- }
127
- async function reportEvent(reporters, event) {
128
- const failures = await Promise.all(reporters.map(async function reportRealTimeEvent(reporter) {
129
- if (reporter.kind !== 'real-time') {
130
- return null;
131
- }
132
- return reportEventToReporter(reporter, event);
133
- }));
134
- const reporterErrors = failures.flatMap(function collectFailure(failure) {
135
- return failure === null ? [] : [failure];
136
- });
137
- if (event.kind === 'runner-error') {
138
- return reporterErrors.map(function toError(failure) {
139
- return failure.error;
140
- });
141
- }
142
- return collectReporterErrorsWithNotifications(reporters, reporterErrors);
143
- }
144
- async function reportResult(reporters, result) {
145
- const failures = await Promise.all(reporters.map(async function reportFinalResult(reporter) {
146
- if (reporter.kind === 'final-result') {
147
- const error = await awaitReporterCallback(reporter, function reportResultToFinalReporter() {
148
- return reporter.onResult(result);
149
- });
150
- return error === null ? null : { error, reporter };
151
- }
152
- if (reporter.onFinish === null) {
153
- return null;
154
- }
155
- const { onFinish } = reporter;
156
- const error = await awaitReporterCallback(reporter, function reportResultToRealTimeReporter() {
157
- return onFinish(result);
158
- });
159
- return error === null ? null : { error, reporter };
160
- }));
161
- const reporterErrors = failures.flatMap(function collectFailure(failure) {
162
- return failure === null ? [] : [failure];
163
- });
164
- return collectReporterErrorsWithNotifications(reporters, reporterErrors);
165
- }
166
- async function disposeReporters(reporters) {
167
- const failures = await Promise.all(reporters.map(async function disposeReporter(reporter) {
168
- if (reporter.dispose === null) {
169
- return null;
170
- }
171
- const { dispose } = reporter;
172
- const error = await awaitReporterCallback(reporter, function disposeReporterResources() {
173
- return dispose();
174
- });
175
- return error === null ? null : { error, reporter };
176
- }));
177
- return failures.flatMap(function collectFailure(failure) {
178
- return failure === null ? [] : [failure.error];
179
- });
180
- }
181
- return { disposeReporters, reportEvent, reportResult };
182
- }
183
89
  //# sourceMappingURL=reporter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reporter.js","sourceRoot":"","sources":["../../../../source/engine/reporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reporter.js","sourceRoot":"","sources":["../../../../source/engine/reporter.ts"],"names":[],"mappings":"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"}
@@ -91,6 +91,27 @@ export type SuiteRunCounts = {
91
91
  readonly executed: number;
92
92
  readonly planned: number;
93
93
  };
94
+ export type ResourceUsageSnapshot = {
95
+ readonly activeResourceCount: number;
96
+ readonly activeResourceTypes: readonly string[];
97
+ readonly capturedAtMilliseconds: number;
98
+ readonly javaScriptEngineHeapBytes: number;
99
+ readonly residentSetBytes: number;
100
+ };
101
+ export type RunResourceUsage = {
102
+ readonly activeResourceTypes: readonly string[];
103
+ readonly end: ResourceUsageSnapshot;
104
+ readonly peakActiveResourceCount: number;
105
+ readonly peakJavaScriptEngineHeapBytes: number;
106
+ readonly peakResidentSetBytes: number;
107
+ readonly peakResidentSetGrowthBytesPerSecond: number;
108
+ readonly sampleCount: number;
109
+ readonly start: ResourceUsageSnapshot;
110
+ };
111
+ export type RunResourceUsageTracker = {
112
+ readonly finish: () => RunResourceUsage;
113
+ readonly start: () => void;
114
+ };
94
115
  export type OrphanedNode = {
95
116
  readonly file: string | null;
96
117
  readonly kind: 'suite' | 'table' | 'test';
@@ -101,6 +122,7 @@ export type RunResult = {
101
122
  readonly bySuite: Readonly<Record<string, SuiteRunCounts>>;
102
123
  readonly orphans: readonly OrphanedNode[];
103
124
  readonly perTest: readonly PerTestResult[];
125
+ readonly resourceUsage: RunResourceUsage | null;
104
126
  readonly runnerErrors: readonly RunnerError[];
105
127
  readonly summary: RunSummary;
106
128
  readonly wallTimeMs: number;
@@ -1 +1 @@
1
- {"version":3,"file":"run-result.d.ts","sourceRoot":"","sources":["../../../../source/engine/run-result.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-result.d.ts","sourceRoot":"","sources":["../../../../source/engine/run-result.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AACvF,OAAO,KAAK,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,+CAA+C,CAAC;AACxG,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE5C,KAAK,wBAAwB,GAAG;IAC5B,QAAQ,CAAC,gBAAgB,EAAE,mBAAmB,CAAC;IAC/C,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC9B,QAAQ,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;CACtD,CAAC;AAEF,KAAK,kBAAkB,GAAG,wBAAwB,CAAC,MAAM,wBAAwB,CAAC,CAAC;AAEnF,MAAM,MAAM,WAAW,GAAG;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAC/B,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC,WAAW,CAAC,CAAC;IACpD,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAC/B,QAAQ,CAAC,KAAK,EAAE;QACZ,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QAC9B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;KAC5B,CAAC;IACF,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;CAC/B,CAAC;AAEF,KAAK,6BAA6B,GAAG;IACjC,QAAQ,CAAC,oBAAoB,EAAE,wBAAwB,CAAC;IACxD,QAAQ,CAAC,yBAAyB,EAAE,6BAA6B,CAAC;IAClE,QAAQ,CAAC,sBAAsB,EAAE,0BAA0B,CAAC;IAC5D,QAAQ,CAAC,2BAA2B,EAAE,gCAAgC,CAAC;IACvE,QAAQ,CAAC,WAAW,EAAE,cAAc,CAAC;IACrC,QAAQ,CAAC,uBAAuB,EAAE,2BAA2B,CAAC;IAC9D,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;IACvC,QAAQ,CAAC,qBAAqB,EAAE,yBAAyB,CAAC;IAC1D,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,6BAA6B,CAAC,MAAM,6BAA6B,CAAC,CAAC;AAEzG,MAAM,MAAM,mBAAmB,GAAG;IAC9B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,oBAAoB,GAAG,oBAAoB,GAAG,mBAAmB,CAAC;AAE5F,wBAAgB,kCAAkC,CAAC,MAAM,EAAE,2BAA2B,GAAG,mBAAmB,CAQ3G;AAED,MAAM,MAAM,WAAW,GAAG;IACtB,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC,WAAW,CAAC,CAAC;IACtD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,mBAAmB,GAAG,WAAW,GAAG,WAAW,CAAC;AAExF,MAAM,MAAM,WAAW,GAAG;IACtB,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IACxB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAChC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,mBAAmB,EAAE,SAAS,MAAM,EAAE,CAAC;IAChD,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,yBAAyB,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,CAAC,mBAAmB,EAAE,SAAS,MAAM,EAAE,CAAC;IAChD,QAAQ,CAAC,GAAG,EAAE,qBAAqB,CAAC;IACpC,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;IACzC,QAAQ,CAAC,6BAA6B,EAAE,MAAM,CAAC;IAC/C,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,mCAAmC,EAAE,MAAM,CAAC;IACrD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,qBAAqB,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IAClC,QAAQ,CAAC,MAAM,EAAE,MAAM,gBAAgB,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;IAC1C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACpB,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IAC3D,QAAQ,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,SAAS,aAAa,EAAE,CAAC;IAC3C,QAAQ,CAAC,aAAa,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAChD,QAAQ,CAAC,YAAY,EAAE,SAAS,WAAW,EAAE,CAAC;IAC9C,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,WAAW,GAAG,aAAa,CAAC,SAAS,CAAC,CAEjF"}
@@ -1 +1 @@
1
- {"version":3,"file":"run-result.js","sourceRoot":"","sources":["../../../../source/engine/run-result.ts"],"names":[],"mappings":"AA6DA,MAAM,UAAU,kCAAkC,CAAC,MAAmC;IAClF,OAAO;QACH,MAAM;QACN,IAAI,EAAE,gCAAgC;QACtC,QAAQ,EAAE,sCAAsC;QAChD,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,iDAAiD;KAC7D,CAAC;AACN,CAAC;AAmED,MAAM,UAAU,kBAAkB,CAAC,OAAoB;IACnD,OAAO,OAAO,CAAC,IAAI,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"run-result.js","sourceRoot":"","sources":["../../../../source/engine/run-result.ts"],"names":[],"mappings":"AA6DA,MAAM,UAAU,kCAAkC,CAAC,MAAmC;IAClF,OAAO;QACH,MAAM;QACN,IAAI,EAAE,gCAAgC;QACtC,QAAQ,EAAE,sCAAsC;QAChD,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,iDAAiD;KAC7D,CAAC;AACN,CAAC;AA4FD,MAAM,UAAU,kBAAkB,CAAC,OAAoB;IACnD,OAAO,OAAO,CAAC,IAAI,CAAC;AACxB,CAAC"}
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  },
6
6
  "dependencies": {
7
7
  "@enormora/wall-clock": "0.0.3",
8
- "@schema-hub/zod-error-formatter": "0.0.15",
8
+ "@schema-hub/zod-error-formatter": "0.0.16",
9
9
  "ansi-escapes": "7.3.0",
10
10
  "diff": "9.0.0",
11
11
  "figures": "6.1.0",
@@ -49,5 +49,5 @@
49
49
  "./run/run.js"
50
50
  ],
51
51
  "type": "module",
52
- "version": "0.0.8"
52
+ "version": "0.0.10"
53
53
  }
@@ -3,5 +3,5 @@ export { commandLineRunner } from '../../run/command-line-runner.ts';
3
3
  export type { CommandLineBaselineCommands, CommandLineBenchmarkCommands, CommandLineCommand, CommandLineCommandContext, CommandLineExitCode, CommandLineRunnerResult, CommandLineRunTestsRequest } from '../../run/command-line-command.ts';
4
4
  export type { CommandLineRunner } from '../../run/command-line-runner.ts';
5
5
  export { defineConfig, loadRunConfig, RunConfigError } from '../../run/run-config.ts';
6
- export type { LoadedRunConfig, RunConfigLoadRequest, RunProjectConfig } from '../../run/run-config.ts';
6
+ export type { LoadedRunConfig, RunConfigLoadRequest, RunProjectConfig, RunProjectMeasuredMicrotestProfileConfig, RunProjectMicrotestProfileConfig, RunProjectProfilesConfig, RunProjectResourceBudgets, RunProjectUnmeasuredMicrotestProfileConfig } from '../../run/run-config.ts';
7
7
  //# sourceMappingURL=command-line.entry-point.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-line.entry-point.d.ts","sourceRoot":"","sources":["../../../../../source/packages/run/command-line.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,oBAAoB,EACvB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACH,iBAAiB,EACpB,MAAM,kCAAkC,CAAC;AAC1C,YAAY,EACR,2BAA2B,EAC3B,4BAA4B,EAC5B,kBAAkB,EAClB,yBAAyB,EACzB,mBAAmB,EACnB,uBAAuB,EACvB,0BAA0B,EAC7B,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EACR,iBAAiB,EACpB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACH,YAAY,EACZ,aAAa,EACb,cAAc,EACjB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACR,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EACnB,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"command-line.entry-point.d.ts","sourceRoot":"","sources":["../../../../../source/packages/run/command-line.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,oBAAoB,EACvB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACH,iBAAiB,EACpB,MAAM,kCAAkC,CAAC;AAC1C,YAAY,EACR,2BAA2B,EAC3B,4BAA4B,EAC5B,kBAAkB,EAClB,yBAAyB,EACzB,mBAAmB,EACnB,uBAAuB,EACvB,0BAA0B,EAC7B,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EACR,iBAAiB,EACpB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACH,YAAY,EACZ,aAAa,EACb,cAAc,EACjB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACR,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EAChB,wCAAwC,EACxC,gCAAgC,EAChC,wBAAwB,EACxB,yBAAyB,EACzB,0CAA0C,EAC7C,MAAM,yBAAyB,CAAC"}
@@ -1,3 +1,3 @@
1
1
  export { orchestrator, RunResolutionError } from '../../run/run.ts';
2
- export type { ResolvedRun, RunCaseFacts, RunCommand, RunConfig, RunDebugRequest, RunEnvironmentFacts, RunExecutionRequest, RunFacts, RunExecutionFacts, RunLoaderConfig, RunOrchestrator, RunReproducibilityFacts, RunRequest, RunResolutionErrorCode, RunSeed, RunSelection, RunShard, SerializedValue } from '../../run/run.ts';
2
+ export type { ResolvedRun, ResourceBudgetOverrides, RunCaseFacts, RunCommand, RunConfig, RunDebugRequest, RunEnvironmentFacts, RunExecutionRequest, RunFacts, RunExecutionFacts, RunLoaderConfig, RunOrchestrator, RunProfilesConfig, RunResourceBudgets, RunResourceUsagePolicy, RunReproducibilityFacts, RunRequest, RunResolutionErrorCode, RunSeed, RunSelection, RunShard, SerializedValue } from '../../run/run.ts';
3
3
  //# sourceMappingURL=run.entry-point.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"run.entry-point.d.ts","sourceRoot":"","sources":["../../../../../source/packages/run/run.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACpE,YAAY,EACR,WAAW,EACX,YAAY,EACZ,UAAU,EACV,SAAS,EACT,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,QAAQ,EACR,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,uBAAuB,EACvB,UAAU,EACV,sBAAsB,EACtB,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,eAAe,EAClB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"run.entry-point.d.ts","sourceRoot":"","sources":["../../../../../source/packages/run/run.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACpE,YAAY,EACR,WAAW,EACX,uBAAuB,EACvB,YAAY,EACZ,UAAU,EACV,SAAS,EACT,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,QAAQ,EACR,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,UAAU,EACV,sBAAsB,EACtB,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,eAAe,EAClB,MAAM,kBAAkB,CAAC"}
package/readme.md CHANGED
@@ -7,6 +7,9 @@ Top-level API:
7
7
  - `RunCommand`
8
8
  - `RunRequest`
9
9
  - `RunFacts`
10
+ - `RunResourceBudgets`
11
+ - `RunResourceUsagePolicy`
12
+ - `ResourceBudgetOverrides`
10
13
  - `ResolvedRun`
11
14
  - `orchestrator.resolve(command)`
12
15
  - `orchestrator.run(command)`
@@ -38,9 +41,22 @@ and argv parsing are separate runner milestones. The non-`runTests` command
38
41
  methods are fixed first-party entrypoints and currently return argument errors
39
42
  until their command implementations land.
40
43
 
44
+ Resource usage measurement is explicit. Project config can enable it under
45
+ `profiles.microtest.measureResourceUsage`; `RunRequest.measureResourceUsage`
46
+ can override that policy for one run. `resourceBudgets` are thresholds and
47
+ require measurement, while `RunRequest.resourceBudgetOverrides` changes
48
+ individual thresholds for one run. Budgeted execution is rejected until
49
+ supervised resource enforcement lands. Textual parsing for
50
+ `--measure-resource-usage` and `--resource-budget <name=value>` belongs to the
51
+ later command-line implementation milestone.
52
+
41
53
  Config loading is common command-line infrastructure, not plugin discovery.
42
54
  The command-line runner loads native Node config files, selects the default
43
- line reporter when project config omits reporters, returns fallback diagnostics
44
- for the binary wrapper to write, and maps run outcomes to stable exit codes.
55
+ line reporter when project config omits reporters, defaults managed reporter
56
+ output to the plain renderer, returns fallback diagnostics for the binary
57
+ wrapper to write, and maps run outcomes to stable exit codes.
45
58
  Installing a package does not add commands, and there is no installed-package
46
59
  scan, dynamic command registry, or command plugin lifecycle.
60
+
61
+ Project config may set `outputRenderer` to adapt managed line intents, for
62
+ example to render GitHub Actions annotations from a brief stdout reporter.
@@ -1,3 +1,4 @@
1
1
  import 'yoctocolors';
2
2
  import "./serialized-value-rendering.js";
3
+ import "./source-location-rendering.js";
3
4
  //# sourceMappingURL=line-failure-rendering.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"line-failure-rendering.js","sourceRoot":"","sources":["../../../../source/reporters/line-failure-rendering.ts"],"names":[],"mappings":"AAAA,OAAmB,aAAa,CAAC;AAYjC,OAA+C,iCAAiC,CAAC;AA4DtE"}
1
+ {"version":3,"file":"line-failure-rendering.js","sourceRoot":"","sources":["../../../../source/reporters/line-failure-rendering.ts"],"names":[],"mappings":"AAAA,OAAmB,aAAa,CAAC;AAYjC,OAA+C,iCAAiC,CAAC;AACjF,OAAqC,gCAAgC,CAAC;AA4D3D"}
@@ -98,7 +98,7 @@ export function createLineReporter(dependencies) {
98
98
  dispose: null,
99
99
  kind: 'real-time',
100
100
  name: 'line',
101
- sinks: [{ conflictPolicy: 'exclusive', kind: 'stdout' }],
101
+ sinks: [{ kind: 'stdout-raw' }],
102
102
  async onEvent(event) {
103
103
  if (event.kind === 'run-start') {
104
104
  terminal.line(infoSymbol, `Test run started: ${event.root.name}`);
@@ -1 +1 @@
1
- {"version":3,"file":"line-reporter.js","sourceRoot":"","sources":["../../../../source/reporters/line-reporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"line-reporter.js","sourceRoot":"","sources":["../../../../source/reporters/line-reporter.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,MAAM,MAAM,aAAa,CAAC;AAIjC,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,wBAAwB,EAA2B,MAAM,eAAe,CAAC;AAElF,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACjD,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9C,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAM7C,SAAS,MAAM,CAAC,KAAa;IACzB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,cAAc,CAAC,EAAU;IAC9B,IAAI,EAAE,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,EAAE,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,OAAO,GAAG,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,MAAM,GAAG,CAAC;AACvC,CAAC;AAED,SAAS,aAAa,CAAC,OAAoB;IACvC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;QAC7D,OAAO,OAAO,CAAC,MAAM,CAAC;IAC1B,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,SAAS,cAAc,CAAC,UAAkB;IACtC,OAAO,GAAG,UAAU,KAAK,CAAC;AAC9B,CAAC;AAED,SAAS,gBAAgB,CAAC,EAAU,EAAE,OAAoB,EAAE,UAAkB;IAC1E,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;IACpD,MAAM,OAAO,GAAG,GAAG,cAAc,CAAC,EAAE,CAAC,GAAG,MAAM,KAAK,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC;IAEjF,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC1B,OAAO,CAAE,WAAW,EAAE,OAAO,CAAE,CAAC;IACpC,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC1B,OAAO,CAAE,aAAa,EAAE,OAAO,CAAE,CAAC;IACtC,CAAC;IAED,OAAO,CAAE,UAAU,EAAE,OAAO,CAAE,CAAC;AACnC,CAAC;AAED,SAAS,eAAe,CAAC,KAAgE;IACrF,OAAO,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,mBAAmB,CAAC,SAAS,EAAE,SAAS;QAC3E,OAAO,SAAS,CAAC;IACrB,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,YAAY,CAAC,MAAoB;IACtC,OAAO,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,IAAI,WAAW,GAAG,CAAC;AAC5E,CAAC;AAED,SAAS,WAAW,CAChB,QAA4B,EAC5B,UAAkB,EAClB,OAAoB;IAEpB,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrC,KAAK,MAAM,IAAI,IAAI,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;YACxC,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;IACL,CAAC;AACL,CAAC;AAED,SAAS,UAAU,CAAC,QAA4B,EAAE,MAAiB;IAC/D,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAC3B,MAAM,UAAU,GAAG,MAAM;SACpB,YAAY;SACZ,MAAM,CAAC,SAAS,OAAO,CAAC,KAAK;QAC1B,OAAO,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC;IACrC,CAAC,CAAC;SACD,MAAM,CAAC;IACZ,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,YAAY,GAAG,UAAU,CAAC;IACvG,MAAM,QAAQ,GAAG;QACb,GAAG,OAAO,CAAC,MAAM,OAAO;QACxB,GAAG,OAAO,CAAC,MAAM,OAAO;QACxB,GAAG,OAAO,CAAC,OAAO,OAAO;QACzB,GAAG,OAAO,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,GAAG,OAAO,CAAC,YAAY,eAAe,CAAE;QAC/E,GAAG,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,GAAG,UAAU,QAAQ,CAAE;KACvD;SACI,IAAI,CAAC,IAAI,CAAC,CAAC;IAChB,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,OAAO,CAAC,MAAM,WAAW,CAAC;IAC/F,MAAM,YAAY,GAAG,GAAG,OAAO,CAAC,UAAU,gBAAgB,OAAO,CAAC,OAAO,aAAa,QAAQ,WAAW,CAAC;IAE1G,QAAQ,CAAC,IAAI,CACT,UAAU,EACV,GAAG,YAAY,KAAK,QAAQ,IAAI,aAAa,OAAO,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAC1F,CAAC;AACN,CAAC;AAED,SAAS,UAAU,CAAC,QAA4B,EAAE,OAAgC;IAC9E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO;IACX,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC3B,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;IACpD,CAAC;AACL,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,YAAsC;IACrE,MAAM,EAAE,aAAa,EAAE,GAAG,YAAY,CAAC;IACvC,MAAM,QAAQ,GAAG,wBAAwB,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC;IAC7D,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,SAAS,UAAU,CAAC,KAA6D;QAC7E,MAAM,CAAE,MAAM,EAAE,OAAO,CAAE,GAAG,gBAAgB,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAE1F,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,OAAO,EAAE,CAAC,CAAC;QACzD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAChC,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACrD,CAAC;IACL,CAAC;IAED,SAAS,aAAa,CAAC,KAAgE;QACnF,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC5E,UAAU,IAAI,CAAC,CAAC;IACpB,CAAC;IAED,OAAO;QACH,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,CAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAE;QAEjC,KAAK,CAAC,OAAO,CAAC,KAAK;YACf,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBAC7B,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,qBAAqB,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACtE,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;gBACtC,aAAa,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACpC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC;YAC7C,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBACnC,UAAU,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;gBACvC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,iBAAiB,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACvE,CAAC;QACL,CAAC;QAED,KAAK,CAAC,QAAQ,CAAC,WAAW;YACtB,UAAU,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;YAClC,UAAU,CAAC,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;QAC9C,CAAC;KACJ,CAAC;AACN,CAAC"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=source-location-rendering.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source-location-rendering.js","sourceRoot":"","sources":["../../../../source/reporters/source-location-rendering.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"command-line-runner.d.ts","sourceRoot":"","sources":["../../../../source/run/command-line-runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAmB,MAAM,uBAAuB,CAAC;AAEvE,OAAO,EAIH,KAAK,eAAe,EACvB,MAAM,UAAU,CAAC;AAClB,OAAO,EAEH,KAAK,eAAe,EACpB,KAAK,oBAAoB,EAC5B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAIH,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,kBAAkB,EACvB,KAAK,0BAA0B,EAC/B,KAAK,uBAAuB,IAAI,4BAA4B,EAC/D,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAEH,KAAK,yBAAyB,EACjC,MAAM,qCAAqC,CAAC;AAO7C,MAAM,MAAM,iBAAiB,GAAG;IAC5B,QAAQ,CAAC,QAAQ,EAAE,2BAA2B,CAAC;IAC/C,QAAQ,CAAC,KAAK,EAAE,4BAA4B,CAAC;IAC7C,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC;IACvC,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC;IACvC,QAAQ,CAAC,aAAa,EAAE,kBAAkB,CAAC;IAC3C,QAAQ,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,0BAA0B,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAC;CAChG,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,4BAA4B,CAAC;AAEnE,MAAM,MAAM,6BAA6B,GAAG,yBAAyB,GAAG;IACpE,QAAQ,CAAC,qBAAqB,EAAE,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IACxD,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;IACpF,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;CAC1C,CAAC;AAiEF,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,6BAA6B,GAAG,iBAAiB,CAkBtG;AAQD,eAAO,MAAM,iBAAiB,EAAE,iBAM9B,CAAC"}
1
+ {"version":3,"file":"command-line-runner.d.ts","sourceRoot":"","sources":["../../../../source/run/command-line-runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAmB,MAAM,uBAAuB,CAAC;AAEvE,OAAO,EAIH,KAAK,eAAe,EACvB,MAAM,UAAU,CAAC;AAClB,OAAO,EAEH,KAAK,eAAe,EACpB,KAAK,oBAAoB,EAC5B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAIH,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,kBAAkB,EACvB,KAAK,0BAA0B,EAC/B,KAAK,uBAAuB,IAAI,4BAA4B,EAC/D,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAEH,KAAK,yBAAyB,EACjC,MAAM,qCAAqC,CAAC;AAO7C,MAAM,MAAM,iBAAiB,GAAG;IAC5B,QAAQ,CAAC,QAAQ,EAAE,2BAA2B,CAAC;IAC/C,QAAQ,CAAC,KAAK,EAAE,4BAA4B,CAAC;IAC7C,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC;IACvC,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC;IACvC,QAAQ,CAAC,aAAa,EAAE,kBAAkB,CAAC;IAC3C,QAAQ,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,0BAA0B,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAC;CAChG,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,4BAA4B,CAAC;AAEnE,MAAM,MAAM,6BAA6B,GAAG,yBAAyB,GAAG;IACpE,QAAQ,CAAC,qBAAqB,EAAE,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IACxD,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;IACpF,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;CAC1C,CAAC;AAmEF,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,6BAA6B,GAAG,iBAAiB,CAkBtG;AAQD,eAAO,MAAM,iBAAiB,EAAE,iBAM9B,CAAC"}
@@ -4,7 +4,7 @@ import { createCommandLineErrorResultFromUnknown, formatFallbackDiagnostics, rea
4
4
  import { createCommandLineCommandNamespace } from "./command-line-command-namespace.js";
5
5
  import { createUnimplementedCommand, loadUnimplementedBaselineCommands, loadUnimplementedBenchmarkCommands } from "./command-line-unimplemented-commands.js";
6
6
  function hasTerminalSink(sink) {
7
- return sink.kind === 'stdout' || sink.kind === 'stderr';
7
+ return sink.kind.startsWith('stdout') || sink.kind.startsWith('stderr');
8
8
  }
9
9
  function hasTerminalReporter(reporters) {
10
10
  return reporters.some(function reporterClaimsTerminal(reporter) {
@@ -23,6 +23,8 @@ async function loadCommandLineReporters(loadedConfig, dependencies) {
23
23
  async function createCommandLineConfig(loadedConfig, dependencies) {
24
24
  return {
25
25
  loader: loadedConfig.loader,
26
+ outputRenderer: loadedConfig.outputRenderer,
27
+ profiles: loadedConfig.profiles,
26
28
  reporters: await loadCommandLineReporters(loadedConfig, dependencies),
27
29
  runtimeStateDir: loadedConfig.runtimeStateDir
28
30
  };
@@ -1 +1 @@
1
- {"version":3,"file":"command-line-runner.js","sourceRoot":"","sources":["../../../../source/run/command-line-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-line-runner.js","sourceRoot":"","sources":["../../../../source/run/command-line-runner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { WallClock } from '@enormora/wall-clock';
2
+ import type { RunResourceUsageTracker } from '../engine/run-result.ts';
3
+ type ResourceUsageTrackerDependencies = {
4
+ readonly readActiveResourceTypes: () => readonly string[];
5
+ readonly readJavaScriptEngineHeapBytes: () => number;
6
+ readonly readResidentSetBytes: () => number;
7
+ readonly wallClock: WallClock;
8
+ };
9
+ export type ResourceUsageTrackerOptions = {
10
+ readonly samplingIntervalMilliseconds: number;
11
+ };
12
+ export declare function createResourceUsageTracker(dependencies: ResourceUsageTrackerDependencies, options: ResourceUsageTrackerOptions): RunResourceUsageTracker;
13
+ export declare function createNodeResourceUsageTracker(wallClock: WallClock, options: ResourceUsageTrackerOptions): RunResourceUsageTracker;
14
+ export {};
15
+ //# sourceMappingURL=resource-usage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-usage.d.ts","sourceRoot":"","sources":["../../../../source/run/resource-usage.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAGR,uBAAuB,EAC1B,MAAM,yBAAyB,CAAC;AAUjC,KAAK,gCAAgC,GAAG;IACpC,QAAQ,CAAC,uBAAuB,EAAE,MAAM,SAAS,MAAM,EAAE,CAAC;IAC1D,QAAQ,CAAC,6BAA6B,EAAE,MAAM,MAAM,CAAC;IACrD,QAAQ,CAAC,oBAAoB,EAAE,MAAM,MAAM,CAAC;IAC5C,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACtC,QAAQ,CAAC,4BAA4B,EAAE,MAAM,CAAC;CACjD,CAAC;AAgGF,wBAAgB,0BAA0B,CACtC,YAAY,EAAE,gCAAgC,EAC9C,OAAO,EAAE,2BAA2B,GACrC,uBAAuB,CAiCzB;AAED,wBAAgB,8BAA8B,CAC1C,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,2BAA2B,GACrC,uBAAuB,CAazB"}
@@ -0,0 +1,107 @@
1
+ import { getHeapStatistics } from 'node:v8';
2
+ const millisecondsPerSecond = 1000;
3
+ function sortedUnique(values) {
4
+ return Array.from(new Set(values)).toSorted(function compareText(firstValue, secondValue) {
5
+ return firstValue.localeCompare(secondValue);
6
+ });
7
+ }
8
+ function readResourceUsageSample(dependencies) {
9
+ return {
10
+ capturedAtMilliseconds: dependencies.wallClock.currentTimestampInMilliseconds,
11
+ javaScriptEngineHeapBytes: dependencies.readJavaScriptEngineHeapBytes(),
12
+ residentSetBytes: dependencies.readResidentSetBytes()
13
+ };
14
+ }
15
+ function readResourceUsageSnapshot(dependencies) {
16
+ const sample = readResourceUsageSample(dependencies);
17
+ const activeResourceTypes = dependencies.readActiveResourceTypes();
18
+ return {
19
+ activeResourceCount: activeResourceTypes.length,
20
+ activeResourceTypes: sortedUnique(activeResourceTypes),
21
+ capturedAtMilliseconds: sample.capturedAtMilliseconds,
22
+ javaScriptEngineHeapBytes: sample.javaScriptEngineHeapBytes,
23
+ residentSetBytes: sample.residentSetBytes
24
+ };
25
+ }
26
+ function maximumSampleValue(samples, readValue) {
27
+ return Math.max(...samples.map(readValue));
28
+ }
29
+ function residentSetGrowthBytesPerSecond(previousSample, nextSample) {
30
+ const elapsedMilliseconds = nextSample.capturedAtMilliseconds - previousSample.capturedAtMilliseconds;
31
+ if (elapsedMilliseconds <= 0) {
32
+ return 0;
33
+ }
34
+ const residentSetGrowthBytes = nextSample.residentSetBytes - previousSample.residentSetBytes;
35
+ return Math.max(0, residentSetGrowthBytes * millisecondsPerSecond / elapsedMilliseconds);
36
+ }
37
+ function peakResidentSetGrowthBytesPerSecond(samples) {
38
+ let peakGrowthBytesPerSecond = 0;
39
+ for (let sampleIndex = 1; sampleIndex < samples.length; sampleIndex += 1) {
40
+ const previousSample = samples[sampleIndex - 1];
41
+ const nextSample = samples[sampleIndex];
42
+ if (previousSample !== undefined && nextSample !== undefined) {
43
+ peakGrowthBytesPerSecond = Math.max(peakGrowthBytesPerSecond, residentSetGrowthBytesPerSecond(previousSample, nextSample));
44
+ }
45
+ }
46
+ return peakGrowthBytesPerSecond;
47
+ }
48
+ function createResourceUsage(start, end, samples) {
49
+ return {
50
+ activeResourceTypes: sortedUnique([...start.activeResourceTypes, ...end.activeResourceTypes]),
51
+ end,
52
+ peakActiveResourceCount: Math.max(start.activeResourceCount, end.activeResourceCount),
53
+ peakJavaScriptEngineHeapBytes: maximumSampleValue(samples, function readJavaScriptEngineHeapBytes(sample) {
54
+ return sample.javaScriptEngineHeapBytes;
55
+ }),
56
+ peakResidentSetBytes: maximumSampleValue(samples, function readResidentSetBytes(sample) {
57
+ return sample.residentSetBytes;
58
+ }),
59
+ peakResidentSetGrowthBytesPerSecond: peakResidentSetGrowthBytesPerSecond(samples),
60
+ sampleCount: samples.length,
61
+ start
62
+ };
63
+ }
64
+ export function createResourceUsageTracker(dependencies, options) {
65
+ let intervalIdentifier = null;
66
+ let samples = [];
67
+ let startSnapshot = null;
68
+ return {
69
+ finish() {
70
+ if (startSnapshot === null) {
71
+ throw new Error('Resource usage tracking must start before it can finish.');
72
+ }
73
+ if (intervalIdentifier !== null) {
74
+ dependencies.wallClock.clearInterval(intervalIdentifier);
75
+ intervalIdentifier = null;
76
+ }
77
+ const endSnapshot = readResourceUsageSnapshot(dependencies);
78
+ samples = [...samples, endSnapshot];
79
+ return createResourceUsage(startSnapshot, endSnapshot, samples);
80
+ },
81
+ start() {
82
+ if (startSnapshot !== null) {
83
+ throw new Error('Resource usage tracking already started.');
84
+ }
85
+ startSnapshot = readResourceUsageSnapshot(dependencies);
86
+ samples = [startSnapshot];
87
+ intervalIdentifier = dependencies.wallClock.setInterval(function collectResourceUsageSample() {
88
+ samples = [...samples, readResourceUsageSample(dependencies)];
89
+ }, options.samplingIntervalMilliseconds);
90
+ }
91
+ };
92
+ }
93
+ export function createNodeResourceUsageTracker(wallClock, options) {
94
+ return createResourceUsageTracker({
95
+ readActiveResourceTypes() {
96
+ return process.getActiveResourcesInfo();
97
+ },
98
+ readJavaScriptEngineHeapBytes() {
99
+ return getHeapStatistics().used_heap_size;
100
+ },
101
+ readResidentSetBytes() {
102
+ return process.memoryUsage.rss();
103
+ },
104
+ wallClock
105
+ }, options);
106
+ }
107
+ //# sourceMappingURL=resource-usage.js.map