executable-stories-formatters 0.7.15 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters.d.cts +1 -1
- package/dist/adapters.d.ts +1 -1
- package/dist/cli.js +1121 -18
- package/dist/cli.js.map +1 -1
- package/dist/{index-BiAYcEiz.d.cts → index-it3Pkmqv.d.cts} +159 -4
- package/dist/{index-BiAYcEiz.d.ts → index-it3Pkmqv.d.ts} +159 -4
- package/dist/index.cjs +937 -14
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +216 -126
- package/dist/index.d.ts +216 -126
- package/dist/index.js +929 -14
- package/dist/index.js.map +1 -1
- package/package.json +3 -5
- package/schemas/raw-run.schema.json +49 -2
- package/bin/intent.js +0 -3
package/dist/index.d.ts
CHANGED
|
@@ -1,125 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export { J as JestAdapterOptions,
|
|
3
|
-
|
|
4
|
-
/** Canonical test status (Cucumber-compatible) */
|
|
5
|
-
type TestStatus$1 = "passed" | "failed" | "skipped" | "pending";
|
|
6
|
-
/** Step result with status and timing */
|
|
7
|
-
interface StepResult {
|
|
8
|
-
/** Step index (0-based) */
|
|
9
|
-
index: number;
|
|
10
|
-
/** Stable step ID when available */
|
|
11
|
-
stepId?: string;
|
|
12
|
-
/** Step status */
|
|
13
|
-
status: TestStatus$1;
|
|
14
|
-
/** Duration in milliseconds (default 0) */
|
|
15
|
-
durationMs: number;
|
|
16
|
-
/** Error message if step failed */
|
|
17
|
-
errorMessage?: string;
|
|
18
|
-
}
|
|
19
|
-
/** Resolved attachment (always has body) */
|
|
20
|
-
interface Attachment {
|
|
21
|
-
/** Attachment name */
|
|
22
|
-
name: string;
|
|
23
|
-
/** MIME type */
|
|
24
|
-
mediaType: string;
|
|
25
|
-
/** Content (base64-encoded or URL) */
|
|
26
|
-
body: string;
|
|
27
|
-
/** Content encoding */
|
|
28
|
-
contentEncoding: "BASE64" | "IDENTITY";
|
|
29
|
-
}
|
|
30
|
-
/** Single test attempt for retry tracking */
|
|
31
|
-
interface TestCaseAttempt {
|
|
32
|
-
/** Attempt number (0-based) */
|
|
33
|
-
attempt: number;
|
|
34
|
-
/** Status of this attempt */
|
|
35
|
-
status: TestStatus$1;
|
|
36
|
-
/** Duration of this attempt in milliseconds */
|
|
37
|
-
durationMs: number;
|
|
38
|
-
/** Error message if this attempt failed */
|
|
39
|
-
errorMessage?: string;
|
|
40
|
-
/** Error stack trace if this attempt failed */
|
|
41
|
-
errorStack?: string;
|
|
42
|
-
}
|
|
43
|
-
/** Canonical test case result */
|
|
44
|
-
interface TestCaseResult {
|
|
45
|
-
/** Unique deterministic ID */
|
|
46
|
-
id: string;
|
|
47
|
-
/** Story metadata (required) */
|
|
48
|
-
story: StoryMeta;
|
|
49
|
-
/** Source file path (required) */
|
|
50
|
-
sourceFile: string;
|
|
51
|
-
/** Source line number (required, default 1) */
|
|
52
|
-
sourceLine: number;
|
|
53
|
-
/** Test status (required) */
|
|
54
|
-
status: TestStatus$1;
|
|
55
|
-
/** Original adapter/framework status (preserved for diagnostics). */
|
|
56
|
-
rawStatus?: RawStatus;
|
|
57
|
-
/** Duration in milliseconds (required, default 0) */
|
|
58
|
-
durationMs: number;
|
|
59
|
-
/** Error message if failed */
|
|
60
|
-
errorMessage?: string;
|
|
61
|
-
/** Error stack trace if failed */
|
|
62
|
-
errorStack?: string;
|
|
63
|
-
/** Attachments (required, empty array if none) */
|
|
64
|
-
attachments: Attachment[];
|
|
65
|
-
/** Step results (required, always populated via fallback rules) */
|
|
66
|
-
stepResults: StepResult[];
|
|
67
|
-
/** Full title path from suite/describe blocks (required, empty array if none) */
|
|
68
|
-
titlePath: string[];
|
|
69
|
-
/** Playwright project name (optional) */
|
|
70
|
-
projectName?: string;
|
|
71
|
-
/** Retry attempt number (required, default 0) */
|
|
72
|
-
retry: number;
|
|
73
|
-
/** Total retries configured (required, default 0) */
|
|
74
|
-
retries: number;
|
|
75
|
-
/** Normalized tags from story (required, empty array if none) */
|
|
76
|
-
tags: string[];
|
|
77
|
-
/** All retry attempts (optional, includes details per attempt) */
|
|
78
|
-
attempts?: TestCaseAttempt[];
|
|
79
|
-
}
|
|
80
|
-
/** CI environment info */
|
|
81
|
-
interface CIInfo {
|
|
82
|
-
name: string;
|
|
83
|
-
url?: string;
|
|
84
|
-
buildNumber?: string;
|
|
85
|
-
branch?: string;
|
|
86
|
-
commitSha?: string;
|
|
87
|
-
prNumber?: string;
|
|
88
|
-
}
|
|
89
|
-
/** Coverage summary for the test run */
|
|
90
|
-
interface CoverageSummary {
|
|
91
|
-
/** Line coverage percentage (0-100) */
|
|
92
|
-
linesPct?: number;
|
|
93
|
-
/** Branch coverage percentage (0-100) */
|
|
94
|
-
branchesPct?: number;
|
|
95
|
-
/** Function coverage percentage (0-100) */
|
|
96
|
-
functionsPct?: number;
|
|
97
|
-
/** Statement coverage percentage (0-100) */
|
|
98
|
-
statementsPct?: number;
|
|
99
|
-
}
|
|
100
|
-
/** Canonical test run result */
|
|
101
|
-
interface TestRunResult {
|
|
102
|
-
/** All test case results */
|
|
103
|
-
testCases: TestCaseResult[];
|
|
104
|
-
/** Run start time (epoch ms, required) */
|
|
105
|
-
startedAtMs: number;
|
|
106
|
-
/** Run finish time (epoch ms, required) */
|
|
107
|
-
finishedAtMs: number;
|
|
108
|
-
/** Total duration in milliseconds (required) */
|
|
109
|
-
durationMs: number;
|
|
110
|
-
/** Project root directory (required) */
|
|
111
|
-
projectRoot: string;
|
|
112
|
-
/** Unique run ID (required, generated) */
|
|
113
|
-
runId: string;
|
|
114
|
-
/** Package version */
|
|
115
|
-
packageVersion?: string;
|
|
116
|
-
/** Git commit SHA */
|
|
117
|
-
gitSha?: string;
|
|
118
|
-
/** CI environment info */
|
|
119
|
-
ci?: CIInfo;
|
|
120
|
-
/** Coverage summary for the run */
|
|
121
|
-
coverage?: CoverageSummary;
|
|
122
|
-
}
|
|
1
|
+
import { C as CIInfo, T as TestRunResult, a as TestCaseResult, S as StoryStep, D as DocEntry, b as TestStatus$1, N as NormalizedTicket, A as Attachment, c as DocPhase, O as OtelSpan, d as StepResult, e as CIProvider, R as RawStatus, f as RawAttachment, g as RawRun, h as RawCIInfo, i as adaptJestRun, j as adaptPlaywrightRun, k as adaptVitestRun } from './index-it3Pkmqv.js';
|
|
2
|
+
export { l as CIInfo, m as CoverageSummary, J as JestAdapterOptions, n as JestAggregatedResult, o as JestFileResult, p as JestTestResult, q as OtelAttributeValue, P as PlaywrightAdapterOptions, r as PlaywrightAnnotation, s as PlaywrightAttachment, t as PlaywrightError, u as PlaywrightLocation, v as PlaywrightStatus, w as PlaywrightTestCase, x as PlaywrightTestResult, y as RawStepEvent, z as RawTestCase, B as STORY_META_KEY, E as StepKeyword, F as StepMode, G as StoryFileReport, H as StoryMeta, I as TestCaseAttempt, K as TestCaseEvidence, V as VitestAdapterOptions, L as VitestSerializedError, M as VitestState, Q as VitestTestCase, U as VitestTestModule, W as VitestTestResult, X as toCIInfo, Y as toRawCIInfo } from './index-it3Pkmqv.js';
|
|
123
3
|
|
|
124
4
|
/**
|
|
125
5
|
* Notification types for webhook integrations (Slack, Teams).
|
|
@@ -137,7 +17,7 @@ interface NotificationSummary {
|
|
|
137
17
|
name: string;
|
|
138
18
|
error?: string;
|
|
139
19
|
}>;
|
|
140
|
-
ci?: CIInfo
|
|
20
|
+
ci?: CIInfo;
|
|
141
21
|
reportUrl?: string;
|
|
142
22
|
}
|
|
143
23
|
/** When to send notifications. */
|
|
@@ -319,7 +199,7 @@ interface FormatterOptions {
|
|
|
319
199
|
includeTags?: string[];
|
|
320
200
|
/** Tags to exclude test cases (any match). Applied after includeTags. */
|
|
321
201
|
excludeTags?: string[];
|
|
322
|
-
/** Output formats to generate. Default: ["
|
|
202
|
+
/** Output formats to generate. Default: ["html"] */
|
|
323
203
|
formats?: OutputFormat[];
|
|
324
204
|
/** Output directory for generated reports. Default: "reports" */
|
|
325
205
|
outputDir?: string;
|
|
@@ -932,6 +812,118 @@ interface StoryReport {
|
|
|
932
812
|
declare const STORY_REPORT_SCHEMA_VERSION: StoryReportSchemaVersion;
|
|
933
813
|
declare const STORY_REPORT_SCHEMA_MAJOR: 1;
|
|
934
814
|
|
|
815
|
+
/**
|
|
816
|
+
* Review types — the model behind the Evidence-Driven Review report.
|
|
817
|
+
*
|
|
818
|
+
* The review report reframes a test run as "communication with evidence" for
|
|
819
|
+
* reviewing AI-authored changes: intent, approach, proof, outcome — where the
|
|
820
|
+
* proof is that the test passes, graded by how credible that proof actually is.
|
|
821
|
+
*
|
|
822
|
+
* `buildReview(run, context)` mirrors `diffRuns(baseline, current)`:
|
|
823
|
+
* a pure function that produces a {@link ReviewResult} which the review
|
|
824
|
+
* formatters render. Diff context ({@link ReviewContext}) enters at the
|
|
825
|
+
* CLI/Action layer — adapters stay diff-blind.
|
|
826
|
+
*/
|
|
827
|
+
|
|
828
|
+
/** Who a claim is addressed to. Derived from file convention (override via `audience:` tag). */
|
|
829
|
+
type ReviewAudience = "stakeholder" | "engineer";
|
|
830
|
+
/** The kind of change a claim documents. Declared via a `change:*` tag. */
|
|
831
|
+
type ChangeType = "feature" | "bugfix" | "refactor" | "perf" | "deps" | "unknown";
|
|
832
|
+
/**
|
|
833
|
+
* How credible a claim's proof is, worst → best.
|
|
834
|
+
* - `none`: the test isn't passing, so it proves nothing about the change.
|
|
835
|
+
* - `weak`: a passing self-authored unit assertion with no corroborating signal.
|
|
836
|
+
* - `moderate`: integration-level, or corroborated by coverage / a screenshot / a trace.
|
|
837
|
+
* - `strong`: tamper-resistant or constraint-proving — failing-first verified, high
|
|
838
|
+
* mutation score, or a stakeholder e2e claim backed by screenshot + trace.
|
|
839
|
+
*/
|
|
840
|
+
type EvidenceStrength = "none" | "weak" | "moderate" | "strong";
|
|
841
|
+
/** Which evidence band a changed source file falls into. */
|
|
842
|
+
type ReviewBand = "uncovered" | "weak" | "covered";
|
|
843
|
+
/** Change kind for a file in the diff. */
|
|
844
|
+
type FileChangeKind = "added" | "modified" | "deleted" | "renamed";
|
|
845
|
+
/** A single changed file from the diff, fed in at the CLI/Action layer. */
|
|
846
|
+
interface ChangedFile {
|
|
847
|
+
/** Repo-relative path. */
|
|
848
|
+
path: string;
|
|
849
|
+
/** How the file changed. */
|
|
850
|
+
changeKind: FileChangeKind;
|
|
851
|
+
/** Added/modified line numbers in the new file (best-effort; enables finer correlation). */
|
|
852
|
+
changedLines?: number[];
|
|
853
|
+
}
|
|
854
|
+
/**
|
|
855
|
+
* Diff/PR context for a review. Supplied by the Action (`git diff`) or CLI —
|
|
856
|
+
* NEVER by framework adapters. Optional so the report degrades to "claims only"
|
|
857
|
+
* when no diff is available.
|
|
858
|
+
*/
|
|
859
|
+
interface ReviewContext {
|
|
860
|
+
/** Files changed in the PR/diff. */
|
|
861
|
+
changedFiles: ChangedFile[];
|
|
862
|
+
/** Base ref/sha the diff is against (informational). */
|
|
863
|
+
baseRef?: string;
|
|
864
|
+
/** Head ref/sha (informational). */
|
|
865
|
+
headRef?: string;
|
|
866
|
+
}
|
|
867
|
+
/** One reviewable claim = one story/test case, enriched for review. */
|
|
868
|
+
interface ReviewClaim {
|
|
869
|
+
/** Canonical test case id. */
|
|
870
|
+
id: string;
|
|
871
|
+
/** Scenario title (the claim being made). */
|
|
872
|
+
scenario: string;
|
|
873
|
+
sourceFile: string;
|
|
874
|
+
sourceLine: number;
|
|
875
|
+
/** Test outcome. */
|
|
876
|
+
status: TestStatus$1;
|
|
877
|
+
/** Derived from file convention / `audience:` tag. */
|
|
878
|
+
audience: ReviewAudience;
|
|
879
|
+
/** Declared via `change:*` tag (defaults to `unknown`). */
|
|
880
|
+
changeType: ChangeType;
|
|
881
|
+
/** Graded credibility of this claim's proof. */
|
|
882
|
+
strength: EvidenceStrength;
|
|
883
|
+
/** Human-readable reasons the strength was assigned (what corroborated / what was missing). */
|
|
884
|
+
strengthReasons: string[];
|
|
885
|
+
/** Intent/approach narrative pulled from a "Why"/intent section or note, if present. */
|
|
886
|
+
intent?: string;
|
|
887
|
+
/** Changed source files this claim plausibly covers (colocated-filename correlation in v1). */
|
|
888
|
+
coversFiles: string[];
|
|
889
|
+
/** The underlying canonical test case (for formatters needing full detail). */
|
|
890
|
+
testCase: TestCaseResult;
|
|
891
|
+
}
|
|
892
|
+
/** A changed source file correlated against the claims that touch it. */
|
|
893
|
+
interface ChangedFileReview {
|
|
894
|
+
path: string;
|
|
895
|
+
changeKind: FileChangeKind;
|
|
896
|
+
/** Evidence band: uncovered (🔴), weak (🟡), covered (🟢). */
|
|
897
|
+
band: ReviewBand;
|
|
898
|
+
/** Claims correlated to this file, with their strength. */
|
|
899
|
+
claims: Array<{
|
|
900
|
+
id: string;
|
|
901
|
+
scenario: string;
|
|
902
|
+
strength: EvidenceStrength;
|
|
903
|
+
}>;
|
|
904
|
+
}
|
|
905
|
+
/** Roll-up counts for the review. */
|
|
906
|
+
interface ReviewSummary {
|
|
907
|
+
totalClaims: number;
|
|
908
|
+
byAudience: Record<ReviewAudience, number>;
|
|
909
|
+
byStrength: Record<EvidenceStrength, number>;
|
|
910
|
+
/** Number of changed source files considered (test/config files excluded). */
|
|
911
|
+
changedSourceFiles: number;
|
|
912
|
+
uncovered: number;
|
|
913
|
+
weaklyCovered: number;
|
|
914
|
+
covered: number;
|
|
915
|
+
}
|
|
916
|
+
/** The full review model the formatters render. */
|
|
917
|
+
interface ReviewResult {
|
|
918
|
+
run: TestRunResult;
|
|
919
|
+
context: ReviewContext;
|
|
920
|
+
summary: ReviewSummary;
|
|
921
|
+
/** Claims, sorted stakeholder-first then by strength (weakest first, to surface risk). */
|
|
922
|
+
claims: ReviewClaim[];
|
|
923
|
+
/** Changed source files, sorted uncovered → weak → covered. */
|
|
924
|
+
changedFiles: ChangedFileReview[];
|
|
925
|
+
}
|
|
926
|
+
|
|
935
927
|
/**
|
|
936
928
|
* Render an OTel trace waterfall (fn(args, deps)).
|
|
937
929
|
*/
|
|
@@ -2448,7 +2440,7 @@ interface SendNotificationsDeps {
|
|
|
2448
2440
|
logger: {
|
|
2449
2441
|
warn(msg: string): void;
|
|
2450
2442
|
};
|
|
2451
|
-
toCIInfo: (raw?: RawCIInfo) => CIInfo
|
|
2443
|
+
toCIInfo: (raw?: RawCIInfo) => CIInfo | undefined;
|
|
2452
2444
|
env?: Record<string, string | undefined>;
|
|
2453
2445
|
}
|
|
2454
2446
|
/**
|
|
@@ -2701,6 +2693,104 @@ declare function createPrCommentSummary(diff: RunDiffResult, maxScenarios?: numb
|
|
|
2701
2693
|
|
|
2702
2694
|
declare function diffRuns(baseline: TestRunResult, current: TestRunResult): RunDiffResult;
|
|
2703
2695
|
|
|
2696
|
+
/**
|
|
2697
|
+
* Review domain — `buildReview(run, context)` mirrors `diffRuns(baseline, current)`.
|
|
2698
|
+
*
|
|
2699
|
+
* A pure function that enriches a canonical run into a {@link ReviewResult}:
|
|
2700
|
+
* each test case becomes a graded claim, and (when diff context is supplied)
|
|
2701
|
+
* changed source files are correlated to claims and banded
|
|
2702
|
+
* uncovered → weak → covered. The review formatters render the result.
|
|
2703
|
+
*/
|
|
2704
|
+
|
|
2705
|
+
/**
|
|
2706
|
+
* Grade how credible a claim's proof is.
|
|
2707
|
+
*
|
|
2708
|
+
* A passing self-authored test is the weakest evidence. Strength climbs as
|
|
2709
|
+
* tamper-resistant or constraint-proving signals appear: a screenshot/trace, a
|
|
2710
|
+
* decent mutation score, and — strongest — failing-first verification.
|
|
2711
|
+
*/
|
|
2712
|
+
declare function gradeEvidence(testCase: TestCaseResult, audience: ReviewAudience): {
|
|
2713
|
+
strength: EvidenceStrength;
|
|
2714
|
+
reasons: string[];
|
|
2715
|
+
};
|
|
2716
|
+
/**
|
|
2717
|
+
* Build the review model from a canonical run and optional diff context.
|
|
2718
|
+
*
|
|
2719
|
+
* With no `changedFiles`, the report degrades gracefully to "claims only"
|
|
2720
|
+
* (no banding). With diff context, changed source files are correlated and
|
|
2721
|
+
* banded — the 🔴 uncovered band being the reviewer's first stop.
|
|
2722
|
+
*/
|
|
2723
|
+
declare function buildReview(run: ReviewResult["run"], context?: ReviewContext): ReviewResult;
|
|
2724
|
+
|
|
2725
|
+
/**
|
|
2726
|
+
* Convention-based derivation for the review report.
|
|
2727
|
+
*
|
|
2728
|
+
* Audience and change-type are derived with ZERO authoring burden: audience
|
|
2729
|
+
* from the test file's name/location, change-type from a `change:*` tag. This
|
|
2730
|
+
* keeps the review capability a formatter concern — no new story API, no
|
|
2731
|
+
* adapter changes (see the Evidence-Driven Review design).
|
|
2732
|
+
*/
|
|
2733
|
+
|
|
2734
|
+
/**
|
|
2735
|
+
* Derive the audience for a claim.
|
|
2736
|
+
*
|
|
2737
|
+
* An explicit `audience:<value>` tag always wins; otherwise the file convention
|
|
2738
|
+
* decides (e2e/spec → stakeholder, everything else → engineer).
|
|
2739
|
+
*/
|
|
2740
|
+
declare function deriveAudience(sourceFile: string, tags: string[]): ReviewAudience;
|
|
2741
|
+
/** Derive the change-type from a `change:*` tag (defaults to `unknown`). */
|
|
2742
|
+
declare function deriveChangeType(tags: string[]): ChangeType;
|
|
2743
|
+
/** Whether a path looks like a test file. */
|
|
2744
|
+
declare function isTestFile(path: string): boolean;
|
|
2745
|
+
/**
|
|
2746
|
+
* Whether a changed file is reviewable application code — i.e. code we expect a
|
|
2747
|
+
* claim to back. Excludes test files, type decls, and non-code (docs, config,
|
|
2748
|
+
* locks). Only these files are eligible for the 🔴 uncovered alarm.
|
|
2749
|
+
*/
|
|
2750
|
+
declare function isReviewableSource(path: string): boolean;
|
|
2751
|
+
|
|
2752
|
+
/**
|
|
2753
|
+
* Review markdown formatter — renders a {@link ReviewResult} as a PR-comment-friendly
|
|
2754
|
+
* review of AI-authored changes.
|
|
2755
|
+
*
|
|
2756
|
+
* Reading order matches reviewer attention: the 🔴 uncovered-change band first
|
|
2757
|
+
* (what changed with no evidence), then 🟡 weak evidence, then claims grouped by
|
|
2758
|
+
* audience (stakeholder behaviour, then engineer detail), each showing graded
|
|
2759
|
+
* proof. Mirrors {@link RunDiffMarkdownFormatter}.
|
|
2760
|
+
*/
|
|
2761
|
+
|
|
2762
|
+
interface ReviewMarkdownOptions {
|
|
2763
|
+
title?: string;
|
|
2764
|
+
}
|
|
2765
|
+
declare class ReviewMarkdownFormatter {
|
|
2766
|
+
private title;
|
|
2767
|
+
constructor(options?: ReviewMarkdownOptions);
|
|
2768
|
+
format(review: ReviewResult): string;
|
|
2769
|
+
}
|
|
2770
|
+
|
|
2771
|
+
/**
|
|
2772
|
+
* Review HTML formatter — the audience-segmented deep-dive artifact for an
|
|
2773
|
+
* Evidence Review. Standalone themed HTML (mirrors {@link RunDiffHtmlFormatter}):
|
|
2774
|
+
* a banded changed-files list (uncovered → weak → covered), then claim cards
|
|
2775
|
+
* grouped by audience with graded evidence, intent, inline screenshots, and a
|
|
2776
|
+
* filter toolbar. No CDN dependencies required.
|
|
2777
|
+
*/
|
|
2778
|
+
|
|
2779
|
+
interface ReviewHtmlOptions {
|
|
2780
|
+
title?: string;
|
|
2781
|
+
/** Theme name or custom theme object. Default: "default" */
|
|
2782
|
+
theme?: string | HtmlTheme;
|
|
2783
|
+
/** Enable dark mode toggle. Default: true */
|
|
2784
|
+
darkMode?: boolean;
|
|
2785
|
+
}
|
|
2786
|
+
declare class ReviewHtmlFormatter {
|
|
2787
|
+
private title;
|
|
2788
|
+
private theme;
|
|
2789
|
+
private darkMode;
|
|
2790
|
+
constructor(options?: ReviewHtmlOptions);
|
|
2791
|
+
format(review: ReviewResult): string;
|
|
2792
|
+
}
|
|
2793
|
+
|
|
2704
2794
|
interface BundleOptions {
|
|
2705
2795
|
/** If true, warn about missing assets instead of throwing. Default: false. */
|
|
2706
2796
|
allowMissing?: boolean;
|
|
@@ -2820,4 +2910,4 @@ declare function normalizeVitestResults(testModules: Parameters<typeof adaptVite
|
|
|
2820
2910
|
*/
|
|
2821
2911
|
declare function normalizePlaywrightResults(testResults: Parameters<typeof adaptPlaywrightRun>[0], adapterOptions?: Parameters<typeof adaptPlaywrightRun>[1], canonicalizeOptions?: CanonicalizeOptions): TestRunResult;
|
|
2822
2912
|
|
|
2823
|
-
export { type AstroAssetResult, AstroFormatter, type AstroFormatterOptions as AstroFormatterOpts,
|
|
2913
|
+
export { type AstroAssetResult, AstroFormatter, type AstroFormatterOptions as AstroFormatterOpts, Attachment, type BundleOptions, type BundleResult, CIProvider, type CanonicalizeOptions, type ChangeType, type ChangedFile, type ChangedFileReview, type ColocatedStyle, type CompareFormat, type CompareFormatterOptions, type ConfluenceAuth, ConfluenceFormatter, type ConfluenceFormatterOptions as ConfluenceFormatterOpts, type CopyMarkdownAssetsOptions, CucumberHtmlFormatter, type CucumberHtmlOptions, CucumberJsonFormatter, type CucumberJsonOptions, CucumberMessagesFormatter, type CucumberMessagesOptions, DocEntry, DocPhase, ES_THEME_TOKENS_CSS, ES_THEME_TOKEN_VALUES, type EvidenceStrength, type ExecutableStoriesConfig, type FetchFn, type FileChangeKind, type FlakinessLevel, type Formatter, type FormatterOptions, type GenerateArgs, type GenerateCompareResult, type GenerateDeps, type GenerateResult, type GenericWebhookNotifierOptions, type HistoryEntry, type HistoryStore, HtmlFormatter, type HtmlOptions, type HtmlTheme, type HtmlThemeName, type IJsonDataTable, type IJsonDocString, type IJsonEmbedding, type IJsonFeature, type IJsonScenario, type IJsonStep, type IJsonStepArgument, type IJsonStepResult, type IJsonTableRow, type IJsonTag, JUnitFormatter, type JUnitOptions, type JiraAuth, type JiraPublishMode, type ListScenariosArgs, type ListScenariosDeps, type Logger, MIN_FLAKINESS_SAMPLES, MIN_METRIC_SAMPLES, MIN_PERF_SAMPLES, MarkdownFormatter, type MarkdownFormatterOptions, type MarkdownOptions, type MarkdownRenderers, NormalizedTicket, type NotificationSummary, type NotifyCondition, OtelSpan, type OtelTraceContext, type OutputConfig, type OutputFormat, type OutputMode, type OutputRule, type PerformanceTrend, type PublishConfluenceArgs, type PublishConfluenceDeps, type PublishConfluenceResult, type PublishJiraArgs, type PublishJiraDeps, type PublishJiraResult, RawAttachment, RawCIInfo, RawRun, RawStatus, type ReportAttachment, type ReportCIInfo, type ReportCoverageSummary, type ReportDocCode, type ReportDocCustom, type ReportDocEntry, type ReportDocKv, type ReportDocLink, type ReportDocMermaid, type ReportDocNote, type ReportDocScreenshot, type ReportDocSection, type ReportDocTable, type ReportDocTag, type ReportFeature, ReportGenerator, type ReportScenario, type ReportStep, type ReportSummary, type ReportTicket, type ResolvedFormatterOptions, type ReviewAudience, type ReviewBand, type ReviewClaim, type ReviewContext, ReviewHtmlFormatter, type ReviewHtmlOptions, ReviewMarkdownFormatter, type ReviewMarkdownOptions, type ReviewResult, type ReviewSummary, RunDiffHtmlFormatter, type RunDiffHtmlOptions, RunDiffMarkdownFormatter, type RunDiffMarkdownOptions, type RunDiffResult, type RunDiffSummary, STORY_REPORT_SCHEMA_MAJOR, STORY_REPORT_SCHEMA_VERSION, type ScenarioChangeFlags, type ScenarioChangeKind, type ScenarioDiff, type ScenarioSnapshot, type SortTestCasesMode, type StabilityGrade, type StarlightBadge, StepResult, type StoryReport, StoryReportJsonFormatter, type StoryReportJsonOptions, type StoryReportSchemaVersion, StoryStep, TestCaseResult, type TestHistory, type TestMetrics, TestRunResult, TestStatus$1 as TestStatus, CIInfo as TypedCIInfo, type ValidationResult, type WebhookPayload, type WebhookSignerHmac, type WriteFile, adaptJestRun, adaptPlaywrightRun, adaptVitestRun, assertValidRun, buildReview, bundleAssets, calculateFlakiness, calculateStability, canonicalizeRun, clearVersionCache, computeTestMetrics, copyMarkdownAssets, createPrCommentSummary, createReportGenerator, deriveAudience, deriveChangeType, deriveStepResults, detectCI, detectPerformanceTrend, diffRuns, findGitDir, formatDuration, generateRunComparison, generateRunId, generateTestCaseId, getAvailableThemes, getCssOnlyThemes, gradeEvidence, hasSufficientHistory, isReviewableSource, isTestFile, listScenarios, loadHistory, mergeStepResults, msToNanoseconds, nanosecondsToMs, normalizeJestResults, normalizePlaywrightResults, normalizeStatus, normalizeVitestResults, parseEnvelopes, parseNdjson, publishConfluencePage, publishJiraIssue, readBranchName, readGitSha, readPackageVersion, resolveAttachment, resolveAttachments, resolveTheme, resolveTraceUrl, rewriteAssetPaths, saveHistory, sendNotifications, sendSlackNotification, sendTeamsNotification, sendWebhookNotification, signBody, slugify, stripAnsi, toStoryReport, tryGetActiveOtelContext, updateHistory, validateCanonicalRun };
|