@post-print/agent-test 0.3.8 → 0.3.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 (47) hide show
  1. package/README.md +3 -2
  2. package/dist/cli.d.ts +3 -1
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +15 -3
  5. package/dist/cli.js.map +1 -1
  6. package/dist/compare-scenario.d.ts +37 -15
  7. package/dist/compare-scenario.d.ts.map +1 -1
  8. package/dist/compare-scenario.js +236 -65
  9. package/dist/compare-scenario.js.map +1 -1
  10. package/dist/debug-bundle.d.ts +1 -0
  11. package/dist/debug-bundle.d.ts.map +1 -1
  12. package/dist/debug-bundle.js +4 -1
  13. package/dist/debug-bundle.js.map +1 -1
  14. package/dist/doctor.d.ts.map +1 -1
  15. package/dist/doctor.js +15 -13
  16. package/dist/doctor.js.map +1 -1
  17. package/dist/html-report.d.ts.map +1 -1
  18. package/dist/html-report.js +135 -37
  19. package/dist/html-report.js.map +1 -1
  20. package/dist/index.d.ts +2 -2
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +1 -1
  23. package/dist/index.js.map +1 -1
  24. package/dist/live-isolation.d.ts +3 -1
  25. package/dist/live-isolation.d.ts.map +1 -1
  26. package/dist/live-isolation.js +3 -0
  27. package/dist/live-isolation.js.map +1 -1
  28. package/dist/record-trace.d.ts +5 -4
  29. package/dist/record-trace.d.ts.map +1 -1
  30. package/dist/record-trace.js.map +1 -1
  31. package/dist/run-suite.d.ts +8 -3
  32. package/dist/run-suite.d.ts.map +1 -1
  33. package/dist/run-suite.js +132 -95
  34. package/dist/run-suite.js.map +1 -1
  35. package/dist/scenario-story.d.ts +15 -22
  36. package/dist/scenario-story.d.ts.map +1 -1
  37. package/dist/scenario-story.js +310 -61
  38. package/dist/scenario-story.js.map +1 -1
  39. package/dist/theme.d.ts.map +1 -1
  40. package/dist/theme.js +90 -14
  41. package/dist/theme.js.map +1 -1
  42. package/dist/types.d.ts +60 -14
  43. package/dist/types.d.ts.map +1 -1
  44. package/dist/validate-suite.d.ts.map +1 -1
  45. package/dist/validate-suite.js +100 -34
  46. package/dist/validate-suite.js.map +1 -1
  47. package/package.json +2 -2
@@ -1,4 +1,4 @@
1
- import { describeCompareOutcome } from "./compare-scenario.js";
1
+ import { buildCompareResult, describeCompareOutcome, resolveCompareMetricPairs, } from "./compare-scenario.js";
2
2
  const PATH_ARG_KEYS = ["path", "file_path", "filePath", "target_file", "uri", "cwd"];
3
3
  const EXCERPT_CHARS = 80;
4
4
  export function quoteExcerpt(text) {
@@ -38,82 +38,297 @@ export function pathFromArgs(args) {
38
38
  function countLabel(count, singular, plural) {
39
39
  return count === 1 ? `1 ${singular}` : `${count} ${plural}`;
40
40
  }
41
- /** Rubric checks in one short line each. */
42
- export function describeRubricChecks(rubric, compare) {
41
+ function compareHeading(labels) {
42
+ if (labels.length === 2 && labels[0] && labels[1]) {
43
+ return `compare ${labels[0]} vs ${labels[1]}`;
44
+ }
45
+ if (labels.length <= 1) {
46
+ return labels[0] ? `compare ${labels[0]}` : "compare arms";
47
+ }
48
+ const last = labels[labels.length - 1];
49
+ return `compare ${labels.slice(0, -1).join(", ")}, and ${last}`;
50
+ }
51
+ function labelForArm(arms, id) {
52
+ return arms.find((arm) => arm.id === id)?.label ?? id;
53
+ }
54
+ function normalizeStoryCompare(compare) {
55
+ if (compare.arms && compare.arms.length > 0) {
56
+ const armIds = compare.arms.map((arm) => arm.id);
57
+ return {
58
+ arms: compare.arms,
59
+ faster: Array.isArray(compare.faster)
60
+ ? compare.faster
61
+ : resolveCompareMetricPairs(compare.faster, armIds),
62
+ cheaper: Array.isArray(compare.cheaper)
63
+ ? compare.cheaper
64
+ : resolveCompareMetricPairs(compare.cheaper, armIds),
65
+ aLabel: compare.aLabel ?? compare.arms[0]?.label ?? "control",
66
+ bLabel: compare.bLabel ?? compare.arms[1]?.label ?? "experimental",
67
+ aDescription: compare.aDescription ?? compare.arms[0]?.description,
68
+ bDescription: compare.bDescription ?? compare.arms[1]?.description,
69
+ aRubric: compare.aRubric ?? compare.arms[0]?.rubric,
70
+ bRubric: compare.bRubric ?? compare.arms[1]?.rubric,
71
+ };
72
+ }
73
+ const aLabel = compare.aLabel ?? "control";
74
+ const bLabel = compare.bLabel ?? "experimental";
75
+ const arms = [
76
+ {
77
+ id: "a",
78
+ label: aLabel,
79
+ description: compare.aDescription,
80
+ rubric: compare.aRubric,
81
+ trace: compare.aTrace,
82
+ durationMs: compare.aDurationMs,
83
+ },
84
+ {
85
+ id: "b",
86
+ label: bLabel,
87
+ description: compare.bDescription,
88
+ rubric: compare.bRubric,
89
+ trace: compare.bTrace,
90
+ durationMs: compare.bDurationMs,
91
+ },
92
+ ];
93
+ return {
94
+ arms,
95
+ faster: resolveCompareMetricPairs(compare.faster, ["a", "b"]),
96
+ cheaper: resolveCompareMetricPairs(compare.cheaper, ["a", "b"]),
97
+ aLabel,
98
+ bLabel,
99
+ aDescription: compare.aDescription,
100
+ bDescription: compare.bDescription,
101
+ aRubric: compare.aRubric,
102
+ bRubric: compare.bRubric,
103
+ };
104
+ }
105
+ function rubricCheckSpecs(rubric) {
43
106
  if (!rubric) {
44
- return ["no rubric recorded"];
107
+ return [];
45
108
  }
46
- const lines = [];
109
+ const specs = [];
47
110
  for (const text of rubric.must ?? []) {
48
- lines.push(`reply includes ${quoteExcerpt(text)}`);
111
+ specs.push({
112
+ text: `reply includes ${quoteExcerpt(text)}`,
113
+ matcher: "mustInclude",
114
+ needle: text,
115
+ });
49
116
  }
50
117
  for (const text of rubric.mustNot ?? []) {
51
- lines.push(`reply omits ${quoteExcerpt(text)}`);
118
+ specs.push({
119
+ text: `reply omits ${quoteExcerpt(text)}`,
120
+ matcher: "mustNotInclude",
121
+ needle: text,
122
+ });
52
123
  }
53
124
  for (const command of rubric.mustRun ?? []) {
54
- lines.push(`run a command matching ${quoteExcerpt(command)}`);
125
+ specs.push({
126
+ text: `run a command matching ${quoteExcerpt(command)}`,
127
+ matcher: "toHaveRunCommand",
128
+ needle: command,
129
+ });
55
130
  }
56
131
  for (const tool of rubric.mustCallTool ?? []) {
57
- lines.push(`call ${tool}`);
132
+ specs.push({ text: `call ${tool}`, matcher: "toHaveCalledTool", needle: tool });
58
133
  }
59
134
  for (const tool of rubric.mustNotCallTool ?? []) {
60
- lines.push(`no ${tool} call`);
135
+ specs.push({ text: `no ${tool} call`, matcher: "toHaveNotCalledTool", needle: tool });
61
136
  }
62
137
  for (const path of rubric.mustReadPath ?? []) {
63
- lines.push(`read ${path}`);
138
+ specs.push({ text: `read ${path}`, matcher: "toHaveReadPath", needle: path });
64
139
  }
65
140
  for (const path of rubric.mustNotReadPath ?? []) {
66
- lines.push(`no read of ${path}`);
141
+ specs.push({ text: `no read of ${path}`, matcher: "toHaveNotReadPath", needle: path });
67
142
  }
68
143
  for (const skill of rubric.mustInvokeSkill ?? []) {
69
- lines.push(`invoke skill ${skill}`);
144
+ specs.push({
145
+ text: `invoke skill ${skill}`,
146
+ matcher: "toHaveInvokedSkill",
147
+ needle: skill,
148
+ });
70
149
  }
71
150
  for (const skill of rubric.mustNotInvokeSkill ?? []) {
72
- lines.push(`no ${skill} skill`);
151
+ specs.push({
152
+ text: `no ${skill} skill`,
153
+ matcher: "toHaveNotInvokedSkill",
154
+ needle: skill,
155
+ });
73
156
  }
74
157
  if (rubric.routingBlock) {
75
- lines.push("announce a routing block");
158
+ specs.push({
159
+ text: "announce a routing block",
160
+ matcher: "toIncludeRoutingBlock",
161
+ needle: "Routing",
162
+ });
76
163
  }
77
164
  if (rubric.tier) {
78
- lines.push(`announce tier ${rubric.tier}`);
165
+ specs.push({
166
+ text: `announce tier ${rubric.tier}`,
167
+ matcher: "toHaveTier",
168
+ needle: rubric.tier,
169
+ });
79
170
  }
80
171
  if (rubric.reviewDepth) {
81
- lines.push(`announce review depth ${rubric.reviewDepth}`);
172
+ specs.push({
173
+ text: `announce review depth ${rubric.reviewDepth}`,
174
+ matcher: "toHaveReviewDepth",
175
+ needle: rubric.reviewDepth,
176
+ });
82
177
  }
83
- if (compare) {
84
- lines.push(`compare ${compare.aLabel} vs ${compare.bLabel}`);
85
- if (compare.aDescription) {
86
- lines.push(`${compare.aLabel}: ${compare.aDescription}`);
178
+ return specs;
179
+ }
180
+ function matcherMatches(actual, expected) {
181
+ if (actual === expected) {
182
+ return true;
183
+ }
184
+ if (expected === "toIncludeRoutingBlock") {
185
+ return actual.includes("Routing") || actual.includes("routing");
186
+ }
187
+ if (expected === "toHaveTier") {
188
+ return actual === "toHaveHandsOnTier" || actual === "toHaveHandsOnTierBeforeTools";
189
+ }
190
+ return false;
191
+ }
192
+ function specFailed(failures, spec, armLabel) {
193
+ return failures.some((failure) => {
194
+ if (armLabel && !failure.message.startsWith(`${armLabel}: `)) {
195
+ return false;
87
196
  }
88
- if (compare.bDescription) {
89
- lines.push(`${compare.bLabel}: ${compare.bDescription}`);
197
+ if (!matcherMatches(failure.matcher, spec.matcher)) {
198
+ return false;
90
199
  }
91
- if (compare.faster) {
92
- const winner = compare.faster === "a" ? compare.aLabel : compare.bLabel;
93
- const loser = compare.faster === "a" ? compare.bLabel : compare.aLabel;
94
- lines.push(`${winner} is faster than ${loser}`);
200
+ const message = armLabel ? failure.message.slice(armLabel.length + 2) : failure.message;
201
+ return message.includes(spec.needle);
202
+ });
203
+ }
204
+ function scoreSpecs(specs, failures, armLabel) {
205
+ return specs.map((spec) => ({
206
+ text: spec.text,
207
+ status: specFailed(failures, spec, armLabel) ? "fail" : "pass",
208
+ }));
209
+ }
210
+ function judgeChecks(rubric, failures, judgeVerdicts, armCount) {
211
+ if (!rubric?.judge || rubric.judge.length === 0) {
212
+ return [];
213
+ }
214
+ if (judgeVerdicts && judgeVerdicts.length > 0) {
215
+ return judgeVerdicts.map((verdict) => ({
216
+ text: verdict.question.trim() || `judge ${verdict.id}`,
217
+ status: verdict.pass ? "pass" : "fail",
218
+ }));
219
+ }
220
+ const failed = failures.some((failure) => failure.matcher === "judge" || failure.matcher.startsWith("judge:"));
221
+ const scope = armCount === undefined ? "" : ` on ${armCount === 2 ? "both arms" : "every arm"}`;
222
+ return [
223
+ {
224
+ text: `judge answers ${countLabel(rubric.judge.length, "question", "questions")}${scope}`,
225
+ status: failed ? "fail" : "pass",
226
+ },
227
+ ];
228
+ }
229
+ function pairCheckFailed(failures, matcher, winnerLabel, loserLabel) {
230
+ return failures.some((failure) => failure.matcher === matcher &&
231
+ failure.message.includes(winnerLabel) &&
232
+ failure.message.includes(loserLabel));
233
+ }
234
+ function buildCompareMetricSection(compare, failures, judge) {
235
+ const result = buildCompareResult(compare.arms.map((arm) => ({
236
+ id: arm.id,
237
+ label: arm.label,
238
+ prompt: "",
239
+ trace: arm.trace,
240
+ durationMs: arm.durationMs,
241
+ })), { faster: compare.faster, cheaper: compare.cheaper });
242
+ const outcomes = describeCompareOutcome(result);
243
+ const checks = [];
244
+ const claimed = new Set();
245
+ for (const pair of compare.faster ?? []) {
246
+ const winner = labelForArm(compare.arms, pair.winner);
247
+ const loser = labelForArm(compare.arms, pair.loser);
248
+ const measured = outcomes.find((line) => line.includes(`${winner} is faster than ${loser}`) ||
249
+ line.includes(`${loser} is faster than ${winner}`));
250
+ const text = measured ?? `${winner} is faster than ${loser}`;
251
+ claimed.add(text);
252
+ checks.push({
253
+ text,
254
+ status: pairCheckFailed(failures, "faster", winner, loser) ? "fail" : "pass",
255
+ });
256
+ }
257
+ for (const pair of compare.cheaper ?? []) {
258
+ const winner = labelForArm(compare.arms, pair.winner);
259
+ const loser = labelForArm(compare.arms, pair.loser);
260
+ const measured = outcomes.find((line) => line.includes(`${winner} uses fewer tokens than ${loser}`) ||
261
+ line.includes(`${loser} uses fewer tokens than ${winner}`));
262
+ const text = measured ?? `${winner} uses fewer tokens than ${loser}`;
263
+ claimed.add(text);
264
+ checks.push({
265
+ text,
266
+ status: pairCheckFailed(failures, "cheaper", winner, loser) ? "fail" : "pass",
267
+ });
268
+ }
269
+ checks.push(...judge);
270
+ const notes = outcomes.filter((line) => !claimed.has(line));
271
+ if (checks.length === 0 && notes.length === 0) {
272
+ return undefined;
273
+ }
274
+ return { title: "compare", checks, notes };
275
+ }
276
+ function buildStorySections(options) {
277
+ const compare = options.compare ? normalizeStoryCompare(options.compare) : undefined;
278
+ if (!compare) {
279
+ const checks = [
280
+ ...scoreSpecs(rubricCheckSpecs(options.rubric), options.failures),
281
+ ...judgeChecks(options.rubric, options.failures, options.judgeVerdicts),
282
+ ];
283
+ return [
284
+ {
285
+ checks: checks.length > 0 ? checks : [{ text: "no rubric checks", status: "info" }],
286
+ notes: describeTraceHappened(options.trace),
287
+ },
288
+ ];
289
+ }
290
+ const sharedSpecs = rubricCheckSpecs(options.rubric);
291
+ const sections = compare.arms.map((arm) => ({
292
+ title: arm.label,
293
+ description: arm.description,
294
+ checks: scoreSpecs([...sharedSpecs, ...rubricCheckSpecs(arm.rubric)], options.failures, arm.label),
295
+ notes: describeTraceHappened(arm.trace),
296
+ }));
297
+ const compareSection = buildCompareMetricSection(compare, options.failures, judgeChecks(options.rubric, options.failures, options.judgeVerdicts, compare.arms.length));
298
+ if (compareSection) {
299
+ sections.push(compareSection);
300
+ }
301
+ return sections;
302
+ }
303
+ /** Rubric checks in one short line each. */
304
+ export function describeRubricChecks(rubric, compare) {
305
+ if (!rubric) {
306
+ return ["no rubric recorded"];
307
+ }
308
+ const lines = rubricCheckSpecs(rubric).map((spec) => spec.text);
309
+ if (compare) {
310
+ const normalized = normalizeStoryCompare(compare);
311
+ lines.push(compareHeading(normalized.arms.map((arm) => arm.label)));
312
+ for (const arm of normalized.arms) {
313
+ if (arm.description) {
314
+ lines.push(`${arm.label}: ${arm.description}`);
315
+ }
95
316
  }
96
- if (compare.cheaper) {
97
- const winner = compare.cheaper === "a" ? compare.aLabel : compare.bLabel;
98
- const loser = compare.cheaper === "a" ? compare.bLabel : compare.aLabel;
99
- lines.push(`${winner} uses fewer tokens than ${loser}`);
317
+ for (const pair of normalized.faster ?? []) {
318
+ lines.push(`${labelForArm(normalized.arms, pair.winner)} is faster than ${labelForArm(normalized.arms, pair.loser)}`);
100
319
  }
101
- for (const line of describeRubricChecks(compare.aRubric)) {
102
- if (line === "no rubric checks" || line === "no rubric recorded") {
103
- continue;
104
- }
105
- lines.push(`${compare.aLabel}: ${line}`);
320
+ for (const pair of normalized.cheaper ?? []) {
321
+ lines.push(`${labelForArm(normalized.arms, pair.winner)} uses fewer tokens than ${labelForArm(normalized.arms, pair.loser)}`);
106
322
  }
107
- for (const line of describeRubricChecks(compare.bRubric)) {
108
- if (line === "no rubric checks" || line === "no rubric recorded") {
109
- continue;
323
+ for (const arm of normalized.arms) {
324
+ for (const spec of rubricCheckSpecs(arm.rubric)) {
325
+ lines.push(`${arm.label}: ${spec.text}`);
110
326
  }
111
- lines.push(`${compare.bLabel}: ${line}`);
112
327
  }
113
328
  }
114
329
  if (rubric.judge && rubric.judge.length > 0) {
115
330
  lines.push(compare
116
- ? `judge answers ${countLabel(rubric.judge.length, "question", "questions")} on both arms`
331
+ ? `judge answers ${countLabel(rubric.judge.length, "question", "questions")} on ${normalizeStoryCompare(compare).arms.length === 2 ? "both arms" : "every arm"}`
117
332
  : `judge answers ${countLabel(rubric.judge.length, "question", "questions")}`);
118
333
  }
119
334
  return lines.length > 0 ? lines : ["no rubric checks"];
@@ -183,39 +398,73 @@ export function describeOutcome(options) {
183
398
  }
184
399
  return options.failures.map(describeFailure);
185
400
  }
401
+ function failureIsScored(failure, rubric, compare) {
402
+ if (failure.category === "worktree_leak" ||
403
+ failure.category === "agent_runtime" ||
404
+ failure.category === "judge_infra" ||
405
+ failure.category === "judge_parse" ||
406
+ failure.category === "recording_error") {
407
+ return false;
408
+ }
409
+ if (failure.matcher === "judge" || failure.matcher.startsWith("judge:")) {
410
+ return true;
411
+ }
412
+ if (compare) {
413
+ for (const arm of compare.arms) {
414
+ const specs = [...rubricCheckSpecs(rubric), ...rubricCheckSpecs(arm.rubric)];
415
+ if (specs.some((spec) => specFailed([failure], spec, arm.label))) {
416
+ return true;
417
+ }
418
+ }
419
+ for (const pair of compare.faster ?? []) {
420
+ if (pairCheckFailed([failure], "faster", labelForArm(compare.arms, pair.winner), labelForArm(compare.arms, pair.loser))) {
421
+ return true;
422
+ }
423
+ }
424
+ for (const pair of compare.cheaper ?? []) {
425
+ if (pairCheckFailed([failure], "cheaper", labelForArm(compare.arms, pair.winner), labelForArm(compare.arms, pair.loser))) {
426
+ return true;
427
+ }
428
+ }
429
+ return false;
430
+ }
431
+ return rubricCheckSpecs(rubric).some((spec) => specFailed([failure], spec));
432
+ }
433
+ function leftoverFailures(failures, rubric, compare) {
434
+ return failures.filter((failure) => !failureIsScored(failure, rubric, compare));
435
+ }
186
436
  const REDUNDANT_VERDICT = new Set(["all checks passed", "skipped"]);
187
437
  function storyVerdict(happened, outcome) {
188
438
  return outcome.filter((line) => !REDUNDANT_VERDICT.has(line) && !happened.includes(line));
189
439
  }
190
440
  export function buildScenarioStory(options) {
441
+ const compare = options.compare ? normalizeStoryCompare(options.compare) : undefined;
442
+ const leftover = leftoverFailures(options.failures, options.rubric, compare);
443
+ const outcome = !options.passed && leftover.length === 0 && options.failures.length > 0
444
+ ? []
445
+ : describeOutcome({
446
+ ...options,
447
+ failures: leftover.length === options.failures.length ? options.failures : leftover,
448
+ });
191
449
  const result = options.skipped
192
450
  ? ["scenario skipped"]
193
- : options.compare
451
+ : compare
194
452
  ? [
195
- ...describeTraceHappened(options.compare.aTrace).map((line) => `${options.compare?.aLabel}: ${line}`),
196
- ...describeTraceHappened(options.compare.bTrace).map((line) => `${options.compare?.bLabel}: ${line}`),
197
- ...describeCompareOutcome({
198
- a: {
199
- id: "a",
200
- label: options.compare.aLabel,
201
- prompt: "",
202
- trace: options.compare.aTrace,
203
- durationMs: options.compare.aDurationMs,
204
- },
205
- b: {
206
- id: "b",
207
- label: options.compare.bLabel,
208
- prompt: "",
209
- trace: options.compare.bTrace,
210
- durationMs: options.compare.bDurationMs,
211
- },
212
- }),
453
+ ...compare.arms.flatMap((arm) => describeTraceHappened(arm.trace).map((line) => `${arm.label}: ${line}`)),
454
+ ...describeCompareOutcome(buildCompareResult(compare.arms.map((arm) => ({
455
+ id: arm.id,
456
+ label: arm.label,
457
+ prompt: "",
458
+ trace: arm.trace,
459
+ durationMs: arm.durationMs,
460
+ })), { faster: compare.faster, cheaper: compare.cheaper })),
213
461
  ]
214
462
  : describeTraceHappened(options.trace);
215
463
  return {
216
464
  criteria: describeRubricChecks(options.rubric, options.compare),
217
465
  result,
218
- verdict: storyVerdict(result, describeOutcome(options)),
466
+ verdict: storyVerdict(result, outcome),
467
+ sections: options.skipped ? undefined : buildStorySections(options),
219
468
  };
220
469
  }
221
470
  //# sourceMappingURL=scenario-story.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scenario-story.js","sourceRoot":"","sources":["../src/scenario-story.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scenario-story.js","sourceRoot":"","sources":["../src/scenario-story.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../src/theme.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../src/theme.ts"],"names":[],"mappings":"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"}
package/dist/theme.js CHANGED
@@ -286,20 +286,19 @@ export const theme = {
286
286
  const category = primaryCategory ? `${chalk.yellow(primaryCategory)} ` : "";
287
287
  const lines = ["", ` ${mark} ${status} ${category}${duration}${tokens}`, ""];
288
288
  if (options.story) {
289
- const criteria = storyLines("criteria", options.story.criteria);
290
- const result = storyLines("result", options.story.result);
291
- const verdict = storyLines("result", options.story.verdict, options.passed, {
292
- continueLabel: result.length > 0,
293
- });
294
- lines.push(...criteria);
295
- if (criteria.length > 0 && (result.length > 0 || verdict.length > 0)) {
296
- lines.push("");
297
- }
298
- lines.push(...result);
299
- if (result.length > 0 && verdict.length > 0) {
300
- lines.push("");
301
- }
302
- lines.push(...verdict);
289
+ const sectionLines = options.story.sections
290
+ ? renderStorySections(options.story.sections, options.story.verdict, options.passed)
291
+ : [
292
+ ...storyLines("criteria", options.story.criteria),
293
+ ...blankIf(options.story.criteria.length > 0 &&
294
+ (options.story.result.length > 0 || options.story.verdict.length > 0)),
295
+ ...storyLines("result", options.story.result),
296
+ ...blankIf(options.story.result.length > 0 && options.story.verdict.length > 0),
297
+ ...storyLines("result", options.story.verdict, options.passed, {
298
+ continueLabel: options.story.result.length > 0,
299
+ }),
300
+ ];
301
+ lines.push(...sectionLines);
303
302
  lines.push("");
304
303
  if (options.debug) {
305
304
  const evidenceCols = wrapColumnWidth(STORY_INDENT);
@@ -343,6 +342,83 @@ export const theme = {
343
342
  return lines;
344
343
  },
345
344
  };
345
+ function blankIf(condition) {
346
+ return condition ? [""] : [];
347
+ }
348
+ function checkMark(status) {
349
+ if (status === "pass") {
350
+ return "✓";
351
+ }
352
+ if (status === "fail") {
353
+ return "✗";
354
+ }
355
+ return "·";
356
+ }
357
+ function checkColor(status) {
358
+ if (status === "pass") {
359
+ return chalk.green;
360
+ }
361
+ if (status === "fail") {
362
+ return chalk.red;
363
+ }
364
+ return (text) => text;
365
+ }
366
+ function renderCheckLines(check, cols) {
367
+ const hang = " ".repeat(STORY_LABEL_WIDTH);
368
+ const mark = checkMark(check.status);
369
+ const color = checkColor(check.status);
370
+ const wrapped = wrapText(`${mark} ${check.text}`, cols);
371
+ const body = wrapped.length > 0 ? wrapped : [`${mark} ${check.text}`];
372
+ return body.map((part) => `${STORY_GUTTER}${hang}${color(part)}`);
373
+ }
374
+ function renderStorySections(sections, verdict, passed) {
375
+ const titled = sections.some((section) => section.title);
376
+ if (!titled && sections.length === 1 && sections[0]) {
377
+ const section = sections[0];
378
+ const checkTexts = section.checks.map((check) => `${checkMark(check.status)} ${check.text}`);
379
+ const notes = section.notes ?? [];
380
+ return [
381
+ ...storyLines("criteria", checkTexts),
382
+ ...blankIf(checkTexts.length > 0 && (notes.length > 0 || verdict.length > 0)),
383
+ ...storyLines("result", notes),
384
+ ...blankIf(notes.length > 0 && verdict.length > 0),
385
+ ...storyLines("result", verdict, passed, { continueLabel: notes.length > 0 }),
386
+ ];
387
+ }
388
+ const cols = wrapColumnWidth(STORY_INDENT);
389
+ const hang = " ".repeat(STORY_LABEL_WIDTH);
390
+ const lines = [];
391
+ for (const [index, section] of sections.entries()) {
392
+ if (index > 0) {
393
+ lines.push("");
394
+ }
395
+ if (section.title) {
396
+ lines.push(`${STORY_GUTTER}${chalk.bold(section.title)}`);
397
+ }
398
+ if (section.description) {
399
+ for (const part of wrapText(section.description, cols)) {
400
+ lines.push(`${STORY_GUTTER}${hang}${chalk.dim(part)}`);
401
+ }
402
+ }
403
+ for (const check of section.checks) {
404
+ lines.push(...renderCheckLines(check, cols));
405
+ }
406
+ for (const note of section.notes ?? []) {
407
+ const wrapped = wrapText(note, cols);
408
+ const body = wrapped.length > 0 ? wrapped : [note];
409
+ for (const part of body) {
410
+ lines.push(`${STORY_GUTTER}${hang}${part}`);
411
+ }
412
+ }
413
+ }
414
+ if (verdict.length > 0) {
415
+ if (lines.length > 0) {
416
+ lines.push("");
417
+ }
418
+ lines.push(...storyLines("result", verdict, passed));
419
+ }
420
+ return lines;
421
+ }
346
422
  function storyLines(label, values, passed, options) {
347
423
  if (values.length === 0) {
348
424
  return [];