mira-consciousness
Version:
Memory & Intelligence Retention Archive - Preserving The Spark
113 lines • 3.56 kB
TypeScript
/**
* Unified Scoring System for MIRA Analyzers
*
* Provides consistent scoring methodology across all analyzers
* with weighted metrics, risk assessment, and normalized outputs.
*/
export interface ScoringMetrics {
baseScore: number;
confidenceScore: number;
severityScore: number;
criticalIssues: number;
highIssues: number;
mediumIssues: number;
lowIssues: number;
bonusPoints: number;
penaltyPoints: number;
totalItems: number;
itemsAnalyzed: number;
analysisDepth: 'surface' | 'standard' | 'deep' | 'comprehensive';
}
export interface RiskAssessment {
level: 'critical' | 'high' | 'medium' | 'low' | 'minimal';
score: number;
confidence: number;
factors: RiskFactor[];
recommendations: string[];
timeToAddress: string;
}
export interface RiskFactor {
type: 'security' | 'performance' | 'maintainability' | 'compliance' | 'technical-debt';
severity: 'critical' | 'high' | 'medium' | 'low';
impact: 'major' | 'moderate' | 'minor';
likelihood: 'very-high' | 'high' | 'medium' | 'low' | 'very-low';
description: string;
mitigation: string;
}
export interface UnifiedScore {
overall: number;
security: number;
performance: number;
quality: number;
maintainability: number;
documentation: number;
risk: RiskAssessment;
metrics: ScoringMetrics;
weights: ScoringWeights;
version: string;
timestamp: Date;
}
export interface ScoringWeights {
security: number;
performance: number;
quality: number;
maintainability: number;
documentation: number;
critical: number;
high: number;
medium: number;
low: number;
highConfidence: number;
mediumConfidence: number;
lowConfidence: number;
}
export interface AnalyzerResult {
score: number;
issues: Issue[];
strengths: string[];
recommendations: string[];
metrics?: Record<string, any>;
}
export interface Issue {
type: string;
severity: 'critical' | 'high' | 'medium' | 'low';
confidence: 'high' | 'medium' | 'low';
impact: 'major' | 'moderate' | 'minor';
message: string;
file?: string;
line?: number;
suggestion?: string;
}
export declare class UnifiedScoringSystem {
private static readonly DEFAULT_WEIGHTS;
private static readonly VERSION;
/**
* Calculate unified score across multiple analyzer results
*/
static calculateUnifiedScore(results: Record<string, AnalyzerResult>, weights?: Partial<ScoringWeights>): UnifiedScore;
/**
* Calculate individual analyzer score with normalized methodology
*/
static calculateAnalyzerScore(issues: Issue[], baseScore?: number, bonusPoints?: number, totalItems?: number): number;
/**
* Normalize scores from different analyzer types to unified scale
*/
static normalizeScore(rawScore: number, analyzerType: string, analyzerVersion?: string): number;
/**
* Generate risk assessment based on scores and issues
*/
private static assessRisk;
private static calculateScoringMetrics;
private static calculateSeverityScore;
private static getSeverityWeight;
private static getConfidenceMultiplier;
private static getImpactMultiplier;
private static calculateRiskFactors;
private static generateRiskRecommendations;
private static calculateRiskConfidence;
/**
* Create scoring summary for reporting
*/
static createScoringSummary(unifiedScore: UnifiedScore): string;
}
//# sourceMappingURL=UnifiedScoring.d.ts.map