executable-stories-formatters 0.11.4 → 0.13.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/index.d.cts CHANGED
@@ -1,5 +1,5 @@
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-DF16Xl5i.cjs';
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-DF16Xl5i.cjs';
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 StepKeyword$1, j as adaptJestRun, k as adaptPlaywrightRun, l as adaptVitestRun } from './index-CXrzCk9p.cjs';
2
+ export { m as CIInfo, n as CoverageSummary, J as JestAdapterOptions, o as JestAggregatedResult, p as JestFileResult, q as JestTestResult, r as OtelAttributeValue, P as PlaywrightAdapterOptions, s as PlaywrightAnnotation, t as PlaywrightAttachment, u as PlaywrightError, v as PlaywrightLocation, w as PlaywrightStatus, x as PlaywrightTestCase, y as PlaywrightTestResult, z as RawStepEvent, B as RawTestCase, E as STORY_META_KEY, 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-CXrzCk9p.cjs';
3
3
 
4
4
  /**
5
5
  * Notification types for webhook integrations (Slack, Teams).
@@ -150,7 +150,7 @@ interface CanonicalizeOptions {
150
150
  };
151
151
  }
152
152
  /** Output format for report generation */
153
- type OutputFormat = "astro" | "behavior-manifest-json" | "confluence" | "cucumber-json" | "cucumber-messages" | "cucumber-html" | "html" | "junit" | "markdown" | "release-manifest" | "scenario-index-json" | "story-report-json";
153
+ type OutputFormat = "astro" | "behavior-manifest-json" | "confluence" | "cucumber-json" | "cucumber-messages" | "cucumber-html" | "html" | "junit" | "markdown" | "release-manifest" | "scenario-index-json" | "story-report-json" | "traceability-matrix";
154
154
  /** Sort order for test cases in reports (deterministic for diff-friendly output) */
155
155
  type SortTestCasesMode = "id" | "source" | "none";
156
156
  /** Output mode for report routing */
@@ -249,6 +249,8 @@ interface FormatterOptions {
249
249
  startCollapsed?: boolean;
250
250
  /** Embed screenshots inline (base64). Default: true */
251
251
  embedScreenshots?: boolean;
252
+ /** Inline local html doc files as iframe srcdoc. Default: true ("none" asset mode), false under "copy". */
253
+ embedHtmlFiles?: boolean;
252
254
  /** Enable syntax highlighting for code blocks (via highlight.js CDN). Default: true */
253
255
  syntaxHighlighting?: boolean;
254
256
  /** Enable live Mermaid diagram rendering (via Mermaid.js CDN). Default: true */
@@ -424,6 +426,7 @@ interface ResolvedFormatterOptions {
424
426
  searchable: boolean;
425
427
  startCollapsed: boolean;
426
428
  embedScreenshots: boolean;
429
+ embedHtmlFiles: boolean;
427
430
  syntaxHighlighting: boolean;
428
431
  mermaidEnabled: boolean;
429
432
  markdownEnabled: boolean;
@@ -712,7 +715,7 @@ interface ReportCoverageSummary {
712
715
  functionsPct?: number;
713
716
  statementsPct?: number;
714
717
  }
715
- type ReportDocEntry = ReportDocNote | ReportDocTag | ReportDocKv | ReportDocCode | ReportDocTable | ReportDocLink | ReportDocSection | ReportDocMermaid | ReportDocScreenshot | ReportDocVideo | ReportDocCustom;
718
+ type ReportDocEntry = ReportDocNote | ReportDocTag | ReportDocKv | ReportDocCode | ReportDocTable | ReportDocLink | ReportDocSection | ReportDocMermaid | ReportDocScreenshot | ReportDocVideo | ReportDocHtml | ReportDocCustom;
716
719
  interface ReportDocNote {
717
720
  kind: "note";
718
721
  text: string;
@@ -784,6 +787,20 @@ interface ReportDocVideo {
784
787
  phase: DocPhase;
785
788
  children?: ReportDocEntry[];
786
789
  }
790
+ interface ReportDocHtml {
791
+ kind: "html";
792
+ /** Local HTML file path (exactly one of path/url/content) */
793
+ path?: string;
794
+ /** Remote URL rendered via iframe src (exactly one of path/url/content) */
795
+ url?: string;
796
+ /** Inline HTML content rendered via iframe srcdoc (exactly one of path/url/content) */
797
+ content?: string;
798
+ title?: string;
799
+ /** Iframe height: number → px, string passed through (e.g. "60vh"). Default 400px. */
800
+ height?: number | string;
801
+ phase: DocPhase;
802
+ children?: ReportDocEntry[];
803
+ }
787
804
  interface ReportDocCustom {
788
805
  kind: "custom";
789
806
  type: string;
@@ -1151,7 +1168,8 @@ interface BuildBodyDeps {
1151
1168
  /**
1152
1169
  * HTML Report Template.
1153
1170
  *
1154
- * Generates the JavaScript for interactivity (theme toggle, search, collapse).
1171
+ * Assembles the report document and inlines the browser-side interactivity
1172
+ * scripts (defined in ./template-scripts) into a <script> tag.
1155
1173
  */
1156
1174
  /** Options for HTML template generation */
1157
1175
  interface HtmlTemplateOptions {
@@ -1769,6 +1787,8 @@ interface HtmlOptions {
1769
1787
  startCollapsed?: boolean;
1770
1788
  /** Embed screenshots inline (base64). Default: true */
1771
1789
  embedScreenshots?: boolean;
1790
+ /** Inline local html doc files as iframe srcdoc (self-contained report). Default: true */
1791
+ embedHtmlFiles?: boolean;
1772
1792
  /** Enable syntax highlighting for code blocks (via highlight.js CDN). Default: true */
1773
1793
  syntaxHighlighting?: boolean;
1774
1794
  /** Enable live Mermaid diagram rendering (via Mermaid.js CDN). Default: true */
@@ -2633,6 +2653,31 @@ declare function tryGetActiveOtelContext(): OtelTraceContext | undefined;
2633
2653
  */
2634
2654
  declare function resolveTraceUrl(template: string | undefined, traceId: string): string | undefined;
2635
2655
 
2656
+ /**
2657
+ * Canonical builders for doc entries whose construction carries a rule worth
2658
+ * keeping in one place. Adapters import these instead of re-implementing the
2659
+ * logic (the `html` exactly-one-of-source rule was previously copied verbatim
2660
+ * across the Vitest, Jest, Cypress, and Playwright adapters).
2661
+ */
2662
+
2663
+ /** Source/presentation options for an `html` doc entry. */
2664
+ interface HtmlDocOptions {
2665
+ /** Local HTML file path (inlined into the report by default). */
2666
+ path?: string;
2667
+ /** Remote URL rendered via iframe src. */
2668
+ url?: string;
2669
+ /** Inline HTML content rendered via iframe srcdoc. */
2670
+ content?: string;
2671
+ title?: string;
2672
+ /** Iframe height: number → px, string passed through (e.g. '60vh'). Default 400px. */
2673
+ height?: number | string;
2674
+ }
2675
+ /**
2676
+ * Build an `html` DocEntry, enforcing that exactly one of path/url/content is
2677
+ * set. Throws otherwise — this is the single source of that rule.
2678
+ */
2679
+ declare function buildHtmlDocEntry(options: HtmlDocOptions): DocEntry;
2680
+
2636
2681
  /**
2637
2682
  * Notification orchestrator.
2638
2683
  *
@@ -2914,6 +2959,176 @@ interface ListScenariosArgs {
2914
2959
  type ListScenariosDeps = Record<string, never>;
2915
2960
  declare function listScenarios(args: ListScenariosArgs, _deps: ListScenariosDeps): string;
2916
2961
 
2962
+ /**
2963
+ * `check` — context-efficient backpressure for coding agents.
2964
+ *
2965
+ * The principle (from "Stop Babysitting Your Coding Agent. Give It Backpressure."):
2966
+ * compress success, expand failure. Passing scenarios collapse to a single count
2967
+ * line. Each failing scenario expands to its Given/When/Then narrative, the step
2968
+ * that broke, the error, and the product code it `covers` — so the agent gets an
2969
+ * actionable, intent-carrying signal instead of a wall of green.
2970
+ *
2971
+ * When a baseline run is supplied, the report also folds in what *regressed* and
2972
+ * what got *fixed* since the last run — the "retained" property of effective
2973
+ * feedback. Reuses the same status-transition vocabulary as {@link classifyStatusChange}.
2974
+ */
2975
+
2976
+ interface CheckArgs {
2977
+ testCases: TestCaseResult[];
2978
+ /** Baseline scenario statuses keyed by scenario id, for regressed/fixed deltas. */
2979
+ baseline?: Map<string, TestStatus$1>;
2980
+ format: "text" | "json";
2981
+ }
2982
+ type CheckDeps = Record<string, never>;
2983
+ /** A single rendered step inside a failing scenario. */
2984
+ interface CheckStep {
2985
+ keyword: StepKeyword$1;
2986
+ text: string;
2987
+ /** True when this step is the one that failed. */
2988
+ failed: boolean;
2989
+ }
2990
+ /** Expanded detail for one failing scenario — the actionable payload. */
2991
+ interface CheckFailure {
2992
+ id: string;
2993
+ scenario: string;
2994
+ /** `sourceFile:sourceLine` */
2995
+ location: string;
2996
+ steps: CheckStep[];
2997
+ /** Failing step's error if isolated, else the scenario-level error. */
2998
+ errorMessage?: string;
2999
+ /** Product-code paths/globs this scenario exercises (what to fix). */
3000
+ covers: string[];
3001
+ tickets: string[];
3002
+ /** True when this scenario was passing in the baseline run. */
3003
+ regressed: boolean;
3004
+ }
3005
+ interface CheckReport {
3006
+ summary: {
3007
+ total: number;
3008
+ passed: number;
3009
+ failed: number;
3010
+ skipped: number;
3011
+ pending: number;
3012
+ };
3013
+ failures: CheckFailure[];
3014
+ /** Count of scenarios that went passed → failed vs. the baseline. */
3015
+ regressed: number;
3016
+ /** Count of scenarios that went failed → passed vs. the baseline. */
3017
+ fixed: number;
3018
+ /** Whether a baseline was supplied (so callers know if deltas are meaningful). */
3019
+ comparedToBaseline: boolean;
3020
+ }
3021
+ /**
3022
+ * Build a structured check report from canonical test cases.
3023
+ * Pure: no IO. Callers render it as text or JSON and decide the exit code.
3024
+ */
3025
+ declare function buildCheck(args: CheckArgs, _deps?: CheckDeps): CheckReport;
3026
+ /**
3027
+ * Render the check report. Text is the default agent/human surface
3028
+ * (compressed success, expanded failure); JSON is the machine contract.
3029
+ */
3030
+ declare function renderCheck(report: CheckReport, format: "text" | "json"): string;
3031
+
3032
+ /**
3033
+ * `goal` — a behavioral definition-of-done for autonomous agent loops.
3034
+ *
3035
+ * A `/goal`-style loop keeps working until a verifiable condition holds. This
3036
+ * expresses that condition in behavior, not "tests green and lint clean": the
3037
+ * required scenarios pass, nothing regressed, and nobody weakened a scenario to
3038
+ * fake done (the ratchet). It returns a clear met / not-met verdict and what is
3039
+ * left, so the loop and the human reading after it can both trust "done".
3040
+ */
3041
+
3042
+ /** Result of one required selector (a tag, ticket, or scenario that must pass). */
3043
+ interface GoalRequirementResult {
3044
+ /** Human-readable selector, e.g. "tag:US-101", "ticket:CART-9", "all scenarios". */
3045
+ selector: string;
3046
+ matched: number;
3047
+ passed: number;
3048
+ /** Titles of matched scenarios that did not pass. */
3049
+ failing: string[];
3050
+ /** matched > 0 and every matched scenario passed. */
3051
+ met: boolean;
3052
+ }
3053
+ /** A scenario that was removed or weakened versus the baseline (anti-fake-done). */
3054
+ interface RatchetViolation {
3055
+ id: string;
3056
+ title: string;
3057
+ kind: "removed" | "disabled" | "weakened";
3058
+ detail: string;
3059
+ }
3060
+ interface GoalReport {
3061
+ /** True only when every requirement is met and no enforced guard fired. */
3062
+ met: boolean;
3063
+ requirements: GoalRequirementResult[];
3064
+ /** Scenarios that went passed -> failed versus baseline (when --no-regressions). */
3065
+ regressions: Array<{
3066
+ id: string;
3067
+ title: string;
3068
+ }>;
3069
+ regressionsEnforced: boolean;
3070
+ ratchet: {
3071
+ enforced: boolean;
3072
+ violations: RatchetViolation[];
3073
+ };
3074
+ }
3075
+ interface GoalArgs {
3076
+ run: TestRunResult;
3077
+ baseline?: TestRunResult;
3078
+ requireTags: string[];
3079
+ requireTickets: string[];
3080
+ requireScenarios: string[];
3081
+ enforceNoRegressions: boolean;
3082
+ enforceRatchet: boolean;
3083
+ format: "text" | "json";
3084
+ }
3085
+ type GoalDeps = Record<string, never>;
3086
+ declare function buildGoal(args: GoalArgs, _deps?: GoalDeps): GoalReport;
3087
+ declare function renderGoal(report: GoalReport, format: "text" | "json"): string;
3088
+
3089
+ /**
3090
+ * `triage` — the discovery-phase worklist for an agent loop.
3091
+ *
3092
+ * The automation that runs on a schedule needs a ranked queue of what to work
3093
+ * on, not a full report. This emits failing scenarios, regressions first, each
3094
+ * carrying the product code it `covers` (where to send the fixer), the error,
3095
+ * and its tickets. Failures with no `covers` are flagged: the loop can't route
3096
+ * them to code, so a human or a covers annotation is needed first.
3097
+ */
3098
+
3099
+ interface TriageItem {
3100
+ rank: number;
3101
+ id: string;
3102
+ scenario: string;
3103
+ status: TestStatus$1;
3104
+ /** `sourceFile:sourceLine` */
3105
+ location: string;
3106
+ /** Product-code paths to fix. Empty when the scenario declared no `covers`. */
3107
+ covers: string[];
3108
+ tickets: string[];
3109
+ errorMessage?: string;
3110
+ /** Passed in the baseline, failing now. Ranked first. */
3111
+ regressed: boolean;
3112
+ reason: "regression" | "failing";
3113
+ }
3114
+ interface TriageReport {
3115
+ total: number;
3116
+ failing: number;
3117
+ regressions: number;
3118
+ /** Failing scenarios with no `covers` — the loop can't route them to code. */
3119
+ needsCovers: number;
3120
+ items: TriageItem[];
3121
+ }
3122
+ interface TriageArgs {
3123
+ testCases: TestCaseResult[];
3124
+ /** Baseline statuses by scenario id, to flag regressions and rank them first. */
3125
+ baseline?: Map<string, TestStatus$1>;
3126
+ format: "text" | "json";
3127
+ }
3128
+ type TriageDeps = Record<string, never>;
3129
+ declare function buildTriage(args: TriageArgs, _deps?: TriageDeps): TriageReport;
3130
+ declare function renderTriage(report: TriageReport, format: "text" | "json"): string;
3131
+
2917
3132
  declare function createPrCommentSummary(diff: RunDiffResult, maxScenarios?: number): string;
2918
3133
 
2919
3134
  declare function diffRuns(baseline: TestRunResult, current: TestRunResult): RunDiffResult;
@@ -3120,6 +3335,65 @@ declare class ReleaseManifestFormatter {
3120
3335
  }
3121
3336
  declare function toReleaseManifest(run: TestRunResult): ReleaseManifest;
3122
3337
 
3338
+ /**
3339
+ * Requirement-first view of a run. Groups scenarios under the ticket/user-story
3340
+ * they verify, rolls up the code each requirement covers and whether it passed,
3341
+ * and surfaces two gaps a scenario-keyed index hides: requirements with a failing
3342
+ * scenario, and scenarios linked to no requirement at all (untraced behavior).
3343
+ *
3344
+ * The set of requirements is derived from the tickets found on scenarios — the
3345
+ * tests are the source of truth, so a requirement only appears once a scenario
3346
+ * claims it.
3347
+ */
3348
+ interface TraceabilityRequirement {
3349
+ /** Ticket / user-story id (e.g. "US-101", "JIRA-42"). */
3350
+ ticket: string;
3351
+ /** Direct URL when a scenario supplied one. */
3352
+ url?: string;
3353
+ /** "verified" = every scenario passed; "failing" = at least one failed; "incomplete" = only skipped/pending. */
3354
+ status: "verified" | "failing" | "incomplete";
3355
+ scenarios: Array<{
3356
+ id: string;
3357
+ title: string;
3358
+ status: TestStatus$1;
3359
+ sourceFile: string;
3360
+ sourceLine: number;
3361
+ covers: string[];
3362
+ }>;
3363
+ /** Union of every covered path across this requirement's scenarios. */
3364
+ covers: string[];
3365
+ }
3366
+ interface TraceabilityMatrix {
3367
+ schemaVersion: "1.0";
3368
+ generatedAt: string;
3369
+ run: {
3370
+ startedAt: string;
3371
+ finishedAt: string;
3372
+ gitSha?: string;
3373
+ branch?: string;
3374
+ };
3375
+ summary: {
3376
+ requirements: number;
3377
+ requirementsVerified: number;
3378
+ requirementsFailing: number;
3379
+ scenarios: number;
3380
+ untracedScenarios: number;
3381
+ };
3382
+ requirements: TraceabilityRequirement[];
3383
+ /** Scenarios with no ticket — behavior verified but not linked to a requirement. */
3384
+ untraced: Array<{
3385
+ id: string;
3386
+ title: string;
3387
+ status: TestStatus$1;
3388
+ sourceFile: string;
3389
+ sourceLine: number;
3390
+ }>;
3391
+ }
3392
+ declare class TraceabilityMatrixFormatter {
3393
+ format(run: TestRunResult): string;
3394
+ }
3395
+ declare function toTraceabilityMatrix(run: TestRunResult): TraceabilityMatrix;
3396
+
3123
3397
  /**
3124
3398
  * @executable-stories/formatters
3125
3399
  *
@@ -3229,4 +3503,4 @@ declare function normalizeVitestResults(testModules: Parameters<typeof adaptVite
3229
3503
  */
3230
3504
  declare function normalizePlaywrightResults(testResults: Parameters<typeof adaptPlaywrightRun>[0], adapterOptions?: Parameters<typeof adaptPlaywrightRun>[1], canonicalizeOptions?: CanonicalizeOptions): TestRunResult;
3231
3505
 
3232
- export { type AstroAssetResult, AstroFormatter, type AstroFormatterOptions as AstroFormatterOpts, Attachment, type BehaviorDebuggerIssue, type BehaviorDiff, type BehaviorDiffEntry, type BehaviorManifest, BehaviorManifestJsonFormatter, type BehaviorManifestJsonOptions, type BehaviorSourceFile, type BehaviorTag, 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, type DeploymentEntry, type DeploymentLedger, type DeploymentStatus, DocEntry, DocPhase, ES_THEME_TOKENS_CSS, ES_THEME_TOKEN_VALUES, type EnvironmentDrift, 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 RecordDeploymentArgs, type RecordDeploymentResult, type ReleaseManifest, ReleaseManifestFormatter, 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 ScenarioIndex, type ScenarioIndexFilters, type ScenarioIndexItem, ScenarioIndexJsonFormatter, type ScenarioIndexJsonOptions, type ScenarioIndexStep, 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 WatchDeps, type WatchHandle, type WatchOptions, type WebhookPayload, type WebhookSignerHmac, type WriteFile, adaptJestRun, adaptPlaywrightRun, adaptVitestRun, assertValidRun, buildReview, bundleAssets, calculateFlakiness, calculateStability, canonicalizeRun, classifyStatusChange, clearVersionCache, computeTestMetrics, copyMarkdownAssets, createPrCommentSummary, createReportGenerator, deriveAudience, deriveChangeType, deriveStepResults, detectCI, detectPerformanceTrend, diffRuns, diffStoryReports, findGitDir, formatDuration, generateRunComparison, generateRunId, generateTestCaseId, getAvailableThemes, getCssOnlyThemes, getDeploymentStatus, getEnvironmentDrift, gradeEvidence, hasSufficientHistory, isReviewableSource, isTestFile, joinNameAndExt, listScenarios, loadHistory, mergeStepResults, msToNanoseconds, nanosecondsToMs, normalizeJestResults, normalizePlaywrightResults, normalizeStatus, normalizeVitestResults, parseEnvelopes, parseNdjson, publishConfluencePage, publishJiraIssue, readBranchName, readGitSha, readPackageVersion, recordDeployment, regenerateArtifacts, resolveAttachment, resolveAttachments, resolveTheme, resolveTraceUrl, rewriteAssetPaths, saveHistory, scenariosCoveringPaths, sendNotifications, sendSlackNotification, sendTeamsNotification, sendWebhookNotification, signBody, slugify, startWatch, stripAnsi, toBehaviorManifest, toReleaseManifest, toScenarioIndex, toStoryReport, tryGetActiveOtelContext, updateHistory, validateCanonicalRun };
3506
+ export { type AstroAssetResult, AstroFormatter, type AstroFormatterOptions as AstroFormatterOpts, Attachment, type BehaviorDebuggerIssue, type BehaviorDiff, type BehaviorDiffEntry, type BehaviorManifest, BehaviorManifestJsonFormatter, type BehaviorManifestJsonOptions, type BehaviorSourceFile, type BehaviorTag, type BundleOptions, type BundleResult, CIProvider, type CanonicalizeOptions, type ChangeType, type ChangedFile, type ChangedFileReview, type CheckArgs, type CheckDeps, type CheckFailure, type CheckReport, type CheckStep, type ColocatedStyle, type CompareFormat, type CompareFormatterOptions, type ConfluenceAuth, ConfluenceFormatter, type ConfluenceFormatterOptions as ConfluenceFormatterOpts, type CopyMarkdownAssetsOptions, CucumberHtmlFormatter, type CucumberHtmlOptions, CucumberJsonFormatter, type CucumberJsonOptions, CucumberMessagesFormatter, type CucumberMessagesOptions, type DeploymentEntry, type DeploymentLedger, type DeploymentStatus, DocEntry, DocPhase, ES_THEME_TOKENS_CSS, ES_THEME_TOKEN_VALUES, type EnvironmentDrift, 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 GoalArgs, type GoalDeps, type GoalReport, type GoalRequirementResult, type HistoryEntry, type HistoryStore, type HtmlDocOptions, 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, type RatchetViolation, RawAttachment, RawCIInfo, RawRun, RawStatus, type RecordDeploymentArgs, type RecordDeploymentResult, type ReleaseManifest, ReleaseManifestFormatter, 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 ScenarioIndex, type ScenarioIndexFilters, type ScenarioIndexItem, ScenarioIndexJsonFormatter, type ScenarioIndexJsonOptions, type ScenarioIndexStep, type ScenarioSnapshot, type SortTestCasesMode, type StabilityGrade, type StarlightBadge, StepKeyword$1 as StepKeyword, StepResult, type StoryReport, StoryReportJsonFormatter, type StoryReportJsonOptions, type StoryReportSchemaVersion, StoryStep, TestCaseResult, type TestHistory, type TestMetrics, TestRunResult, TestStatus$1 as TestStatus, type TraceabilityMatrix, TraceabilityMatrixFormatter, type TraceabilityRequirement, type TriageArgs, type TriageDeps, type TriageItem, type TriageReport, CIInfo as TypedCIInfo, type ValidationResult, type WatchDeps, type WatchHandle, type WatchOptions, type WebhookPayload, type WebhookSignerHmac, type WriteFile, adaptJestRun, adaptPlaywrightRun, adaptVitestRun, assertValidRun, buildCheck, buildGoal, buildHtmlDocEntry, buildReview, buildTriage, bundleAssets, calculateFlakiness, calculateStability, canonicalizeRun, classifyStatusChange, clearVersionCache, computeTestMetrics, copyMarkdownAssets, createPrCommentSummary, createReportGenerator, deriveAudience, deriveChangeType, deriveStepResults, detectCI, detectPerformanceTrend, diffRuns, diffStoryReports, findGitDir, formatDuration, generateRunComparison, generateRunId, generateTestCaseId, getAvailableThemes, getCssOnlyThemes, getDeploymentStatus, getEnvironmentDrift, gradeEvidence, hasSufficientHistory, isReviewableSource, isTestFile, joinNameAndExt, listScenarios, loadHistory, mergeStepResults, msToNanoseconds, nanosecondsToMs, normalizeJestResults, normalizePlaywrightResults, normalizeStatus, normalizeVitestResults, parseEnvelopes, parseNdjson, publishConfluencePage, publishJiraIssue, readBranchName, readGitSha, readPackageVersion, recordDeployment, regenerateArtifacts, renderCheck, renderGoal, renderTriage, resolveAttachment, resolveAttachments, resolveTheme, resolveTraceUrl, rewriteAssetPaths, saveHistory, scenariosCoveringPaths, sendNotifications, sendSlackNotification, sendTeamsNotification, sendWebhookNotification, signBody, slugify, startWatch, stripAnsi, toBehaviorManifest, toReleaseManifest, toScenarioIndex, toStoryReport, toTraceabilityMatrix, tryGetActiveOtelContext, updateHistory, validateCanonicalRun };