/** * Test Coverage Analyzer — Analyze what agent tests cover * Reports tool coverage, intent coverage, error path coverage, and safety coverage. * @module */ import type { TestCase, AgentTrace } from './types'; export interface CoverageConfig { declaredTools?: string[]; productionTraces?: AgentTrace[]; safetyKeywords?: string[]; } export interface ToolCoverageResult { totalDeclared: number; totalTested: number; percentage: number; testedTools: string[]; missingTools: string[]; } export interface IntentCoverageResult { totalIntents: number; coveredIntents: number; percentage: number; coveredList: string[]; uncoveredList: string[]; } export interface ErrorPathCoverageResult { totalPaths: number; coveredPaths: number; percentage: number; } export interface SafetyCoverageResult { totalTests: number; safetyTests: number; percentage: number; categories: string[]; } export interface CoverageAnalysis { tool: ToolCoverageResult; intent: IntentCoverageResult; errorPath: ErrorPathCoverageResult; safety: SafetyCoverageResult; overallScore: number; } /** * Extract all tool names referenced in test expectations */ export declare function extractTestedTools(tests: TestCase[]): string[]; /** * Analyze tool coverage */ export declare function analyzeToolCoverage(tests: TestCase[], declaredTools: string[]): ToolCoverageResult; /** * Extract intents from production traces */ export declare function extractIntentsFromTraces(traces: AgentTrace[]): string[]; /** * Analyze intent coverage by comparing test inputs against production intents */ export declare function analyzeIntentCoverage(tests: TestCase[], traces: AgentTrace[]): IntentCoverageResult; /** * Analyze error path coverage */ export declare function analyzeErrorPathCoverage(tests: TestCase[]): ErrorPathCoverageResult; /** * Analyze safety coverage */ export declare function analyzeSafetyCoverage(tests: TestCase[], keywords?: string[]): SafetyCoverageResult; /** * Run full coverage analysis */ export declare function analyzeCoverageComplete(tests: TestCase[], config?: CoverageConfig): CoverageAnalysis; /** * Format coverage analysis for display */ export declare function formatCoverageAnalysis(analysis: CoverageAnalysis): string; //# sourceMappingURL=coverage-analyzer.d.ts.map