/** * Diversity analysis for the Sentinel Agent system */ import { EvaluationResult } from "../types/evaluation"; /** * Configuration for diversity analysis */ export interface DiversityConfig { /** Minimum number of evaluations required for analysis */ minEvaluations: number; /** Threshold for detecting low diversity (0-1) */ lowDiversityThreshold: number; /** Threshold for detecting groupthink (0-1) */ groupthinkThreshold: number; /** Weight for score diversity in overall analysis */ scoreWeight: number; /** Weight for confidence diversity in overall analysis */ confidenceWeight: number; /** Weight for reasoning diversity in overall analysis */ reasoningWeight: number; } /** * Results of diversity analysis */ export interface DiversityAnalysis { /** Overall diversity score (0-1, higher is more diverse) */ overallScore: number; /** Entropy of score distribution */ entropy: number; /** Variance of scores */ variance: number; /** Level of disagreement between agents (0-1) */ disagreementLevel: number; /** Whether groupthink was detected */ groupThinkDetected: boolean; /** Confidence in the diversity analysis (0-1) */ confidence: number; /** Recommendations for improving diversity */ recommendations: string[]; /** Detailed breakdown of diversity metrics */ breakdown: DiversityBreakdown; } /** * Detailed breakdown of diversity metrics */ export interface DiversityBreakdown { /** Score-based diversity metrics */ scoreMetrics: { range: number; standardDeviation: number; coefficientOfVariation: number; }; /** Confidence-based diversity metrics */ confidenceMetrics: { range: number; standardDeviation: number; averageConfidence: number; }; /** Agent participation metrics */ participationMetrics: { totalAgents: number; activeAgents: number; participationRate: number; dominanceIndex: number; }; /** Temporal diversity metrics */ temporalMetrics?: { consistencyScore: number; trendStrength: number; }; } /** * Analyzer for evaluation diversity and groupthink detection */ export declare class DiversityAnalyzer { private config; constructor(config: DiversityConfig); /** * Analyze diversity in a set of evaluations */ analyzeDiversity(evaluations: EvaluationResult[]): DiversityAnalysis; /** * Calculate a single diversity score for quick assessment */ calculateDiversityScore(values: number[]): number; /** * Identify if groupthink is occurring */ identifyGroupThink(evaluations: EvaluationResult[]): boolean; /** * Measure disagreement between evaluations */ measureDisagreement(evaluations: EvaluationResult[]): number; /** * Update configuration */ updateConfig(newConfig: Partial): void; /** * Get current configuration */ getConfig(): DiversityConfig; private calculateScoreMetrics; private calculateConfidenceMetrics; private calculateParticipationMetrics; private calculateOverallDiversityScore; private calculateNormalizedEntropy; private calculateDisagreementLevel; private detectGroupthink; private generateRecommendations; private calculateAnalysisConfidence; private createMinimalAnalysis; } //# sourceMappingURL=diversity-analyzer.d.ts.map