@post-print/agent-test 1.1.9 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (238) hide show
  1. package/README.md +18 -66
  2. package/dist/cli.d.ts +2 -64
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +26 -691
  5. package/dist/cli.js.map +1 -1
  6. package/dist/compare-scenario.d.ts +1 -1
  7. package/dist/compare-scenario.d.ts.map +1 -1
  8. package/dist/compare-scenario.js +72 -75
  9. package/dist/compare-scenario.js.map +1 -1
  10. package/dist/failures.d.ts +5 -1
  11. package/dist/failures.d.ts.map +1 -1
  12. package/dist/failures.js +1 -1
  13. package/dist/failures.js.map +1 -1
  14. package/dist/host-login.d.ts +1 -26
  15. package/dist/host-login.d.ts.map +1 -1
  16. package/dist/host-login.js +1 -92
  17. package/dist/host-login.js.map +1 -1
  18. package/dist/index.d.ts +6 -28
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +4 -26
  21. package/dist/index.js.map +1 -1
  22. package/dist/scenario-story.d.ts.map +1 -1
  23. package/dist/scenario-story.js +57 -39
  24. package/dist/scenario-story.js.map +1 -1
  25. package/dist/sdk/cli.d.ts +3 -0
  26. package/dist/sdk/cli.d.ts.map +1 -0
  27. package/dist/sdk/cli.js +20 -0
  28. package/dist/sdk/cli.js.map +1 -0
  29. package/dist/sdk/definitions.d.ts +22 -0
  30. package/dist/sdk/definitions.d.ts.map +1 -0
  31. package/dist/sdk/definitions.js +58 -0
  32. package/dist/sdk/definitions.js.map +1 -0
  33. package/dist/sdk/expect.d.ts +31 -0
  34. package/dist/sdk/expect.d.ts.map +1 -0
  35. package/dist/sdk/expect.js +68 -0
  36. package/dist/sdk/expect.js.map +1 -0
  37. package/dist/sdk/judge.d.ts +16 -0
  38. package/dist/sdk/judge.d.ts.map +1 -0
  39. package/dist/sdk/judge.js +82 -0
  40. package/dist/sdk/judge.js.map +1 -0
  41. package/dist/sdk/metrics.d.ts +3 -0
  42. package/dist/sdk/metrics.d.ts.map +1 -0
  43. package/dist/sdk/metrics.js +24 -0
  44. package/dist/sdk/metrics.js.map +1 -0
  45. package/dist/sdk/reporter.d.ts +12 -0
  46. package/dist/sdk/reporter.d.ts.map +1 -0
  47. package/dist/sdk/reporter.js +58 -0
  48. package/dist/sdk/reporter.js.map +1 -0
  49. package/dist/sdk/runtime.d.ts +33 -0
  50. package/dist/sdk/runtime.d.ts.map +1 -0
  51. package/dist/sdk/runtime.js +188 -0
  52. package/dist/sdk/runtime.js.map +1 -0
  53. package/dist/sdk/test.d.ts +27 -0
  54. package/dist/sdk/test.d.ts.map +1 -0
  55. package/dist/sdk/test.js +92 -0
  56. package/dist/sdk/test.js.map +1 -0
  57. package/dist/sdk/types.d.ts +75 -0
  58. package/dist/sdk/types.d.ts.map +1 -0
  59. package/dist/sdk/types.js +2 -0
  60. package/dist/sdk/types.js.map +1 -0
  61. package/dist/sdk/usage.d.ts +10 -0
  62. package/dist/sdk/usage.d.ts.map +1 -0
  63. package/dist/sdk/usage.js +13 -0
  64. package/dist/sdk/usage.js.map +1 -0
  65. package/dist/sdk/viewer-results.d.ts +43 -0
  66. package/dist/sdk/viewer-results.d.ts.map +1 -0
  67. package/dist/sdk/viewer-results.js +126 -0
  68. package/dist/sdk/viewer-results.js.map +1 -0
  69. package/dist/sdk/viewer.d.ts +11 -0
  70. package/dist/sdk/viewer.d.ts.map +1 -0
  71. package/dist/sdk/viewer.js +160 -0
  72. package/dist/sdk/viewer.js.map +1 -0
  73. package/dist/sdk/workspace.d.ts +33 -0
  74. package/dist/sdk/workspace.d.ts.map +1 -0
  75. package/dist/sdk/workspace.js +100 -0
  76. package/dist/sdk/workspace.js.map +1 -0
  77. package/dist/types.d.ts +4 -40
  78. package/dist/types.d.ts.map +1 -1
  79. package/dist/viewer/catalog.d.ts +2 -8
  80. package/dist/viewer/catalog.d.ts.map +1 -1
  81. package/dist/viewer/catalog.js +23 -128
  82. package/dist/viewer/catalog.js.map +1 -1
  83. package/dist/viewer/client.d.ts.map +1 -1
  84. package/dist/viewer/client.js +12 -12
  85. package/dist/viewer/client.js.map +1 -1
  86. package/dist/viewer/run-controller.d.ts +4 -2
  87. package/dist/viewer/run-controller.d.ts.map +1 -1
  88. package/dist/viewer/run-controller.js +297 -248
  89. package/dist/viewer/run-controller.js.map +1 -1
  90. package/dist/viewer/server.d.ts +4 -3
  91. package/dist/viewer/server.d.ts.map +1 -1
  92. package/dist/viewer/server.js +149 -112
  93. package/dist/viewer/server.js.map +1 -1
  94. package/dist/viewer/styles.d.ts +2 -0
  95. package/dist/viewer/styles.d.ts.map +1 -0
  96. package/dist/viewer/styles.js +444 -0
  97. package/dist/viewer/styles.js.map +1 -0
  98. package/dist/worker-pool.d.ts +5 -1
  99. package/dist/worker-pool.d.ts.map +1 -1
  100. package/dist/worker-pool.js +1 -1
  101. package/dist/worker-pool.js.map +1 -1
  102. package/package.json +7 -7
  103. package/dist/check.d.ts +0 -38
  104. package/dist/check.d.ts.map +0 -1
  105. package/dist/check.js +0 -169
  106. package/dist/check.js.map +0 -1
  107. package/dist/command-allowlist.d.ts +0 -9
  108. package/dist/command-allowlist.d.ts.map +0 -1
  109. package/dist/command-allowlist.js +0 -29
  110. package/dist/command-allowlist.js.map +0 -1
  111. package/dist/debug-bundle.d.ts +0 -81
  112. package/dist/debug-bundle.d.ts.map +0 -1
  113. package/dist/debug-bundle.js +0 -392
  114. package/dist/debug-bundle.js.map +0 -1
  115. package/dist/discover-suites.d.ts +0 -2
  116. package/dist/discover-suites.d.ts.map +0 -1
  117. package/dist/discover-suites.js +0 -19
  118. package/dist/discover-suites.js.map +0 -1
  119. package/dist/doctor.d.ts +0 -24
  120. package/dist/doctor.d.ts.map +0 -1
  121. package/dist/doctor.js +0 -272
  122. package/dist/doctor.js.map +0 -1
  123. package/dist/expect.d.ts +0 -59
  124. package/dist/expect.d.ts.map +0 -1
  125. package/dist/expect.js +0 -518
  126. package/dist/expect.js.map +0 -1
  127. package/dist/host-log.d.ts +0 -17
  128. package/dist/host-log.d.ts.map +0 -1
  129. package/dist/host-log.js +0 -154
  130. package/dist/host-log.js.map +0 -1
  131. package/dist/hosts.d.ts +0 -22
  132. package/dist/hosts.d.ts.map +0 -1
  133. package/dist/hosts.js +0 -84
  134. package/dist/hosts.js.map +0 -1
  135. package/dist/html-report.d.ts +0 -18
  136. package/dist/html-report.d.ts.map +0 -1
  137. package/dist/html-report.js +0 -1276
  138. package/dist/html-report.js.map +0 -1
  139. package/dist/live-isolation.d.ts +0 -82
  140. package/dist/live-isolation.d.ts.map +0 -1
  141. package/dist/live-isolation.js +0 -399
  142. package/dist/live-isolation.js.map +0 -1
  143. package/dist/live-timeout.d.ts +0 -11
  144. package/dist/live-timeout.d.ts.map +0 -1
  145. package/dist/live-timeout.js +0 -29
  146. package/dist/live-timeout.js.map +0 -1
  147. package/dist/load-adapters.d.ts +0 -13
  148. package/dist/load-adapters.d.ts.map +0 -1
  149. package/dist/load-adapters.js +0 -76
  150. package/dist/load-adapters.js.map +0 -1
  151. package/dist/load-suite.d.ts +0 -22
  152. package/dist/load-suite.d.ts.map +0 -1
  153. package/dist/load-suite.js +0 -154
  154. package/dist/load-suite.js.map +0 -1
  155. package/dist/mcp-config.d.ts +0 -13
  156. package/dist/mcp-config.d.ts.map +0 -1
  157. package/dist/mcp-config.js +0 -121
  158. package/dist/mcp-config.js.map +0 -1
  159. package/dist/preflight.d.ts +0 -3
  160. package/dist/preflight.d.ts.map +0 -1
  161. package/dist/preflight.js +0 -17
  162. package/dist/preflight.js.map +0 -1
  163. package/dist/progress.d.ts +0 -24
  164. package/dist/progress.d.ts.map +0 -1
  165. package/dist/progress.js +0 -111
  166. package/dist/progress.js.map +0 -1
  167. package/dist/record-trace.d.ts +0 -64
  168. package/dist/record-trace.d.ts.map +0 -1
  169. package/dist/record-trace.js +0 -124
  170. package/dist/record-trace.js.map +0 -1
  171. package/dist/report-preview-server.d.ts +0 -2
  172. package/dist/report-preview-server.d.ts.map +0 -1
  173. package/dist/report-preview-server.js +0 -24
  174. package/dist/report-preview-server.js.map +0 -1
  175. package/dist/report-preview.d.ts +0 -35
  176. package/dist/report-preview.d.ts.map +0 -1
  177. package/dist/report-preview.js +0 -205
  178. package/dist/report-preview.js.map +0 -1
  179. package/dist/run-suite.d.ts +0 -139
  180. package/dist/run-suite.d.ts.map +0 -1
  181. package/dist/run-suite.js +0 -1688
  182. package/dist/run-suite.js.map +0 -1
  183. package/dist/scenario-finalizer.d.ts +0 -27
  184. package/dist/scenario-finalizer.d.ts.map +0 -1
  185. package/dist/scenario-finalizer.js +0 -39
  186. package/dist/scenario-finalizer.js.map +0 -1
  187. package/dist/scenario-retry.d.ts +0 -15
  188. package/dist/scenario-retry.d.ts.map +0 -1
  189. package/dist/scenario-retry.js +0 -52
  190. package/dist/scenario-retry.js.map +0 -1
  191. package/dist/scenario-seed.d.ts +0 -13
  192. package/dist/scenario-seed.d.ts.map +0 -1
  193. package/dist/scenario-seed.js +0 -72
  194. package/dist/scenario-seed.js.map +0 -1
  195. package/dist/suite-summary.d.ts +0 -16
  196. package/dist/suite-summary.d.ts.map +0 -1
  197. package/dist/suite-summary.js +0 -218
  198. package/dist/suite-summary.js.map +0 -1
  199. package/dist/theme.d.ts +0 -96
  200. package/dist/theme.d.ts.map +0 -1
  201. package/dist/theme.js +0 -446
  202. package/dist/theme.js.map +0 -1
  203. package/dist/validate-seeds.d.ts +0 -20
  204. package/dist/validate-seeds.d.ts.map +0 -1
  205. package/dist/validate-seeds.js +0 -72
  206. package/dist/validate-seeds.js.map +0 -1
  207. package/dist/validate-suite.d.ts +0 -24
  208. package/dist/validate-suite.d.ts.map +0 -1
  209. package/dist/validate-suite.js +0 -542
  210. package/dist/validate-suite.js.map +0 -1
  211. package/dist/viewer/cli.d.ts +0 -17
  212. package/dist/viewer/cli.d.ts.map +0 -1
  213. package/dist/viewer/cli.js +0 -38
  214. package/dist/viewer/cli.js.map +0 -1
  215. package/dist/viewer/compare-metrics.d.ts +0 -30
  216. package/dist/viewer/compare-metrics.d.ts.map +0 -1
  217. package/dist/viewer/compare-metrics.js +0 -101
  218. package/dist/viewer/compare-metrics.js.map +0 -1
  219. package/dist/viewer/context-files.d.ts +0 -8
  220. package/dist/viewer/context-files.d.ts.map +0 -1
  221. package/dist/viewer/context-files.js +0 -57
  222. package/dist/viewer/context-files.js.map +0 -1
  223. package/dist/viewer/emit.d.ts +0 -7
  224. package/dist/viewer/emit.d.ts.map +0 -1
  225. package/dist/viewer/emit.js +0 -25
  226. package/dist/viewer/emit.js.map +0 -1
  227. package/dist/viewer/live-runner.d.ts +0 -27
  228. package/dist/viewer/live-runner.d.ts.map +0 -1
  229. package/dist/viewer/live-runner.js +0 -166
  230. package/dist/viewer/live-runner.js.map +0 -1
  231. package/dist/viewer/session-server.d.ts +0 -2
  232. package/dist/viewer/session-server.d.ts.map +0 -1
  233. package/dist/viewer/session-server.js +0 -71
  234. package/dist/viewer/session-server.js.map +0 -1
  235. package/dist/warnings.d.ts +0 -3
  236. package/dist/warnings.d.ts.map +0 -1
  237. package/dist/warnings.js +0 -13
  238. package/dist/warnings.js.map +0 -1
@@ -1,218 +0,0 @@
1
- function flatUsageFromResult(result) {
2
- return result.usage?.total ?? result.trace?.usage;
3
- }
4
- const INFRA_CATEGORIES = new Set(["judge_infra", "agent_runtime"]);
5
- function emptyRunSummary() {
6
- return {
7
- infraFailures: 0,
8
- rubricFailures: 0,
9
- agentRuntimeFailures: 0,
10
- worktreeLeaks: 0,
11
- recordingErrors: 0,
12
- judgeParseFailures: 0,
13
- retriedScenarios: 0,
14
- scenarioRetriedScenarios: 0,
15
- };
16
- }
17
- /** Nearest-rank percentile (p in 0–100) over a sorted ascending array. */
18
- export function percentileNearestRank(sortedAsc, p) {
19
- if (sortedAsc.length === 0) {
20
- return undefined;
21
- }
22
- const clamped = Math.min(100, Math.max(0, p));
23
- const rank = Math.ceil((clamped / 100) * sortedAsc.length) - 1;
24
- return sortedAsc[Math.max(0, Math.min(sortedAsc.length - 1, rank))];
25
- }
26
- export function summarizeUsage(results) {
27
- const totals = [];
28
- let scenariosWithUsage = 0;
29
- let sumTotal = 0;
30
- let sumInput = 0;
31
- let sumOutput = 0;
32
- let sawInput = false;
33
- let sawOutput = false;
34
- for (const result of results) {
35
- const usage = flatUsageFromResult(result);
36
- if (!usage) {
37
- continue;
38
- }
39
- scenariosWithUsage++;
40
- const total = usage.totalTokens;
41
- if (typeof total === "number" && Number.isFinite(total)) {
42
- totals.push(total);
43
- sumTotal += total;
44
- }
45
- if (typeof usage.inputTokens === "number" && Number.isFinite(usage.inputTokens)) {
46
- sumInput += usage.inputTokens;
47
- sawInput = true;
48
- }
49
- if (typeof usage.outputTokens === "number" && Number.isFinite(usage.outputTokens)) {
50
- sumOutput += usage.outputTokens;
51
- sawOutput = true;
52
- }
53
- }
54
- if (scenariosWithUsage === 0) {
55
- return undefined;
56
- }
57
- totals.sort((a, b) => a - b);
58
- const stats = { scenariosWithUsage };
59
- if (totals.length > 0) {
60
- stats.sumTotalTokens = sumTotal;
61
- stats.p50TotalTokens = percentileNearestRank(totals, 50);
62
- stats.p95TotalTokens = percentileNearestRank(totals, 95);
63
- stats.maxTotalTokens = totals[totals.length - 1];
64
- }
65
- if (sawInput) {
66
- stats.sumInputTokens = sumInput;
67
- }
68
- if (sawOutput) {
69
- stats.sumOutputTokens = sumOutput;
70
- }
71
- return stats;
72
- }
73
- export function summarizeFailures(failures) {
74
- const summary = emptyRunSummary();
75
- for (const failure of failures) {
76
- switch (failure.category) {
77
- case "judge_infra":
78
- summary.infraFailures++;
79
- break;
80
- case "judge_parse":
81
- summary.judgeParseFailures++;
82
- break;
83
- case "agent_runtime":
84
- summary.agentRuntimeFailures++;
85
- break;
86
- case "worktree_leak":
87
- summary.worktreeLeaks++;
88
- break;
89
- case "recording_error":
90
- summary.recordingErrors++;
91
- break;
92
- default:
93
- summary.rubricFailures++;
94
- break;
95
- }
96
- }
97
- return summary;
98
- }
99
- export function summarizeReports(reports) {
100
- const combined = emptyRunSummary();
101
- const allResults = [];
102
- for (const report of reports) {
103
- const partial = report.summary ?? summarizeReportResults(report.results);
104
- combined.infraFailures += partial.infraFailures;
105
- combined.rubricFailures += partial.rubricFailures;
106
- combined.agentRuntimeFailures += partial.agentRuntimeFailures;
107
- combined.worktreeLeaks += partial.worktreeLeaks;
108
- combined.recordingErrors += partial.recordingErrors;
109
- combined.judgeParseFailures += partial.judgeParseFailures;
110
- combined.retriedScenarios += partial.retriedScenarios;
111
- combined.scenarioRetriedScenarios += partial.scenarioRetriedScenarios;
112
- allResults.push(...report.results);
113
- }
114
- combined.usage = summarizeUsage(allResults);
115
- return combined;
116
- }
117
- export function summarizeReportResults(results) {
118
- const allFailures = results.flatMap((result) => result.failures);
119
- const summary = summarizeFailures(allFailures);
120
- summary.retriedScenarios = results.reduce((count, result) => count + (result.judgeVerdicts?.some((verdict) => (verdict.attempt ?? 1) > 1) ? 1 : 0), 0);
121
- summary.scenarioRetriedScenarios = results.reduce((count, result) => count + ((result.attempts ?? 1) > 1 ? 1 : 0), 0);
122
- summary.usage = summarizeUsage(results);
123
- return summary;
124
- }
125
- /** Whether a failed scenario should fail the process under the given fail-on mode. */
126
- export function shouldFailScenario(failures, mode) {
127
- if (mode === "infra-only") {
128
- return failures.some((failure) => INFRA_CATEGORIES.has(failure.category));
129
- }
130
- if (mode === "all") {
131
- return failures.length > 0;
132
- }
133
- // behavior: ignore pure infra flakes
134
- return failures.some((failure) => !INFRA_CATEGORIES.has(failure.category));
135
- }
136
- function compactNumber(value) {
137
- if (value >= 1_000_000) {
138
- return `${(value / 1_000_000).toFixed(1)}M`;
139
- }
140
- if (value >= 1000) {
141
- return `${(value / 1000).toFixed(1)}k`;
142
- }
143
- return String(value);
144
- }
145
- /** Compact token count for CLI and HTML (`78.2k`). */
146
- export function formatTokenCount(value) {
147
- return compactNumber(value);
148
- }
149
- function countLabel(count, singular, plural) {
150
- return count === 1 ? `1 ${singular}` : `${count} ${plural}`;
151
- }
152
- function formatFailureSummary(summary) {
153
- const parts = [];
154
- if (summary.rubricFailures > 0) {
155
- parts.push(countLabel(summary.rubricFailures, "rubric miss", "rubric misses"));
156
- }
157
- if (summary.infraFailures > 0) {
158
- parts.push(countLabel(summary.infraFailures, "infra failure", "infra failures"));
159
- }
160
- if (summary.agentRuntimeFailures > 0) {
161
- parts.push(countLabel(summary.agentRuntimeFailures, "runtime failure", "runtime failures"));
162
- }
163
- if (summary.judgeParseFailures > 0) {
164
- parts.push(countLabel(summary.judgeParseFailures, "judge parse error", "judge parse errors"));
165
- }
166
- if (summary.worktreeLeaks > 0) {
167
- parts.push(countLabel(summary.worktreeLeaks, "worktree leak", "worktree leaks"));
168
- }
169
- if (summary.recordingErrors > 0) {
170
- parts.push(countLabel(summary.recordingErrors, "recording error", "recording errors"));
171
- }
172
- return parts.length > 0 ? parts.join(" · ") : undefined;
173
- }
174
- function formatRetrySummary(summary) {
175
- const parts = [];
176
- if (summary.retriedScenarios > 0) {
177
- parts.push(countLabel(summary.retriedScenarios, "judge retry", "judge retries"));
178
- }
179
- if (summary.scenarioRetriedScenarios > 0) {
180
- parts.push(countLabel(summary.scenarioRetriedScenarios, "scenario retry", "scenario retries"));
181
- }
182
- return parts.length > 0 ? parts.join(" · ") : undefined;
183
- }
184
- export function formatUsageStats(usage) {
185
- const parts = [countLabel(usage.scenariosWithUsage, "scenario", "scenarios")];
186
- if (usage.sumTotalTokens !== undefined) {
187
- parts.push(`${compactNumber(usage.sumTotalTokens)} tokens`);
188
- }
189
- if (usage.scenariosWithUsage > 1 && usage.p50TotalTokens !== undefined) {
190
- parts.push(`typical ${compactNumber(usage.p50TotalTokens)}`);
191
- }
192
- if (usage.scenariosWithUsage > 1 && usage.maxTotalTokens !== undefined) {
193
- parts.push(`largest ${compactNumber(usage.maxTotalTokens)}`);
194
- }
195
- if (usage.sumInputTokens !== undefined) {
196
- parts.push(`${compactNumber(usage.sumInputTokens)} in`);
197
- }
198
- if (usage.sumOutputTokens !== undefined) {
199
- parts.push(`${compactNumber(usage.sumOutputTokens)} out`);
200
- }
201
- return parts.join(" · ");
202
- }
203
- export function formatRunSummary(summary) {
204
- const lines = [];
205
- const failures = formatFailureSummary(summary);
206
- if (failures) {
207
- lines.push(`failures ${failures}`);
208
- }
209
- const retries = formatRetrySummary(summary);
210
- if (retries) {
211
- lines.push(`retries ${retries}`);
212
- }
213
- if (summary.usage) {
214
- lines.push(formatUsageStats(summary.usage));
215
- }
216
- return lines.join("\n");
217
- }
218
- //# sourceMappingURL=suite-summary.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"suite-summary.js","sourceRoot":"","sources":["../src/suite-summary.ts"],"names":[],"mappings":"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"}
package/dist/theme.d.ts DELETED
@@ -1,96 +0,0 @@
1
- import type { ScenarioStory } from "./types.js";
2
- /** Word-wrap width for a line that already has `indent` visible columns. */
3
- export declare function wrapColumnWidth(indent: number, columns?: number): number;
4
- /** Always enable ANSI color — agent-test is a human CLI, not a pipe filter. */
5
- export declare function configureCliColor(): void;
6
- export declare function colorEnabled(): boolean;
7
- /** OSC-8 hyperlink. Cursor opens `http://` in the browser and `file://` in the editor. */
8
- export declare function formatHyperlink(url: string, display: string): string;
9
- /**
10
- * Wrap a filesystem path in an OSC-8 `file://` hyperlink.
11
- * Display text stays a plain path for copy-paste.
12
- */
13
- export declare function formatFileHyperlink(absolutePath: string, display?: string): string;
14
- /** Truncate long temp/session paths to `…/last` or `…/parent/last`. */
15
- export declare function truncatePath(path: string): string;
16
- /** Word-wrap text at `cols` without breaking words when possible. */
17
- export declare function wrapText(text: string, cols?: number): string[];
18
- export interface JudgeVerdictDisplay {
19
- id: string;
20
- question: string;
21
- pass: boolean;
22
- rationale: string;
23
- }
24
- export interface RubricFailureDisplay {
25
- matcher: string;
26
- message: string;
27
- category?: string;
28
- evidence?: string;
29
- }
30
- export interface ScenarioVerdictOptions {
31
- passed: boolean;
32
- index?: number;
33
- total?: number;
34
- name: string;
35
- durationMs: number;
36
- /** Total tokens (agent + judge) when reported. */
37
- totalTokens?: number;
38
- judgeVerdicts?: JudgeVerdictDisplay[];
39
- rubricFailures?: RubricFailureDisplay[];
40
- /** Primary failure category for the FAIL line. */
41
- failureCategory?: string;
42
- /** Criteria and result lines. */
43
- story?: ScenarioStory;
44
- /** Show evidence and full failure detail (--debug / AGENT_TEST_VERBOSE). */
45
- debug?: boolean;
46
- debugBundleDir?: string;
47
- }
48
- export declare function formatTokenNumber(totalTokens: number): string;
49
- export declare function formatTokenCount(totalTokens: number): string;
50
- export declare function formatFailureCategory(category?: string): string | undefined;
51
- export declare function formatDurationLabel(ms: number): string;
52
- /** Elapsed clock for an in-flight agent. Tenths of a second. */
53
- export declare function formatClock(ms: number): string;
54
- /** Visible character count that skips CSI color sequences. */
55
- export declare function visibleLength(text: string): number;
56
- /** Keep a live clock line on one terminal row so `\r` can overwrite it. */
57
- export declare function clipToColumns(text: string, columns: number): string;
58
- export declare const theme: {
59
- suiteHeader(name: string, host: string, count: number): string;
60
- scenarioTitle(index: number, total: number, name: string, host: string): string;
61
- scenarioLabel(name: string, host?: string): string;
62
- scenarioDescription(text: string): string[];
63
- phaseTree(_prefix: "├─" | "└─" | "│ ", message: string): string;
64
- hostLog(level: string, service: string, detail: string): string;
65
- path(p: string): string;
66
- basename(p: string): string;
67
- duration(label: string): string;
68
- phaseDim(message: string): string;
69
- phase(label: string, detail?: string): string;
70
- agentClock(elapsedLabel: string, preview?: string): string;
71
- liveTool(name: string, detail?: string): string;
72
- statusCompleted(status: string): string;
73
- tip(message: string): string;
74
- /**
75
- * Tip line with a clickable target.
76
- * `http://` stays visible so Cursor can open the browser.
77
- * A filesystem path stays visible. Cursor opens that path in the editor.
78
- */
79
- fileTip(label: string, pathOrUrl: string): string;
80
- warn(message: string): string;
81
- banner(mode?: string): string;
82
- bannerDetail(message: string): string;
83
- bannerSession(path: string): string;
84
- bannerHints(hints: string[]): string;
85
- runSummary(text: string): string;
86
- summary(suite: string, passed: number, failed: number, skipped: number): string;
87
- failedScenariosHeader(): string;
88
- failedScenarioName(name: string): string;
89
- verboseFailure(matcher: string, message: string, evidence?: string, category?: string): string;
90
- debugBundlePointer(path: string): string;
91
- judgePhase(count: number): string;
92
- isolationNote(): string;
93
- skipped(label: string): string;
94
- scenarioVerdict(options: ScenarioVerdictOptions): string[];
95
- };
96
- //# sourceMappingURL=theme.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../src/theme.ts"],"names":[],"mappings":"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"}