/** * Result Comparator - Compare and rank exploration outcomes * * Provides detailed comparison of different exploration results */ import type { Exploration } from '../types/exploration.types.js'; import type { ExplorationStateManager } from './exploration-state.js'; export interface ComparisonMetrics { status: string; strategy: string; worktree_index: number; cpu_usage_avg: number; duration_seconds: number; memory_usage_avg_mb: number; errors_count: number; progress_percentage: number; stages_completed: number; decisions_participated: number; insights_published: number; files_changed?: number; lines_added?: number; lines_removed?: number; test_results?: TestResults; overall_score: number; } export interface ComparisonReport { exploration_id: string; metrics: ComparisonMetrics[]; mode: 'parallel' | 'sequential'; recommendation: string; summary: string; task: string; total_duration_ms: number; winner_index?: number; } export interface RankingCriteria { collaboration_weight: number; performance_weight: number; quality_weight: number; success_weight: number; } export interface TestResults { coverage_percent?: number; failed: number; passed: number; skipped: number; total: number; } export declare class ResultComparator { private exploration; private stateManager; constructor(exploration: Exploration, stateManager: ExplorationStateManager); /** * Generate comprehensive comparison report */ generateComparisonReport(): Promise; /** * Collect metrics for all worktrees */ private collectMetricsForAllWorktrees; /** * Collect metrics for a single worktree */ private collectWorktreeMetrics; /** * Get collaboration statistics for a worktree */ private getCollaborationStats; /** * Build comparison metrics object */ private buildComparisonMetrics; /** * Get code metrics from git diff */ private getCodeMetrics; /** * Get test results if available */ private getTestResults; /** * Calculate overall score for a worktree */ private calculateOverallScore; /** * Rank worktrees by overall score */ private rankWorktrees; /** * Generate summary text */ private generateSummary; /** * Generate recommendation */ private generateRecommendation; /** * Generate detailed comparison table (for CLI output) */ generateComparisonTable(metrics: ComparisonMetrics[]): string; /** * Export comparison report to JSON */ exportToJson(outputPath: string): Promise; /** * Export comparison report to Markdown */ exportToMarkdown(outputPath: string): Promise; } //# sourceMappingURL=result-comparator.d.ts.map