/** * Regression Test Generator — Auto-generate regression tests from production traces * Analyzes traces to identify common intents, error paths, and tool usage patterns. * @module */ import type { AgentTrace, TraceStep, TestCase, Expectations } from './types'; export interface RegressionTestConfig { minTraces?: number; maxTests?: number; includeErrorPaths?: boolean; includeToolPatterns?: boolean; includeIntents?: boolean; confidenceThreshold?: number; } export interface TracePattern { type: 'intent' | 'error_path' | 'tool_pattern'; name: string; frequency: number; confidence: number; exampleTraceIds: string[]; } export interface GeneratedRegressionTest { name: string; source: 'intent' | 'error_path' | 'tool_pattern'; input: string; expectations: Expectations; basedOn: string[]; confidence: number; } export interface RegressionGenResult { totalTraces: number; patternsFound: TracePattern[]; testsGenerated: GeneratedRegressionTest[]; coverage: { intents: number; errorPaths: number; toolPatterns: number; }; } /** * Extract the user intent (first user message) from a trace */ export declare function extractIntent(trace: AgentTrace): string | null; /** * Extract tool sequence from a trace */ export declare function extractToolSequence(trace: AgentTrace): string[]; /** * Extract error steps from a trace */ export declare function extractErrors(trace: AgentTrace): TraceStep[]; /** * Normalize intent string for grouping */ export declare function normalizeIntent(intent: string): string; /** * Group traces by their primary intent */ export declare function groupByIntent(traces: AgentTrace[]): Map; /** * Group traces by tool usage pattern (tool sequence as key) */ export declare function groupByToolPattern(traces: AgentTrace[]): Map; /** * Find traces that contain errors */ export declare function findErrorTraces(traces: AgentTrace[]): AgentTrace[]; /** * Detect patterns from a collection of traces */ export declare function detectPatterns(traces: AgentTrace[], config?: RegressionTestConfig): TracePattern[]; /** * Generate a regression test from a pattern and example trace */ export declare function generateTestFromPattern(pattern: TracePattern, exampleTrace: AgentTrace): GeneratedRegressionTest; /** * Generate regression tests from traces */ export declare function generateRegressionTests(traces: AgentTrace[], config?: RegressionTestConfig): RegressionGenResult; /** * Convert generated tests to TestCase format */ export declare function toTestCases(generated: GeneratedRegressionTest[]): TestCase[]; /** * Format regression generation result */ export declare function formatRegressionGenResult(result: RegressionGenResult): string; //# sourceMappingURL=regression-gen.d.ts.map