agentsqripts
Version:
Comprehensive static code analysis toolkit for identifying technical debt, security vulnerabilities, performance issues, and code quality problems
42 lines (36 loc) • 1.17 kB
JavaScript
/**
* @file Opportunity distribution calculation
* @description Calculates distribution of cleanup opportunities across files
*/
/**
* Calculate distribution of cleanup opportunities
* @param {Array} results - Array of file analysis results
* @returns {Object} Distribution breakdown
*/
function calculateOpportunityDistribution(results) {
const distribution = {
byType: {},
bySeverity: { LOW: 0, MEDIUM: 0, HIGH: 0 },
byPriority: { LOW: 0, MEDIUM: 0, HIGH: 0 }
};
results.forEach(result => {
if (result.opportunities && Array.isArray(result.opportunities)) {
result.opportunities.forEach(opp => {
// Count by type
distribution.byType[opp.type] = (distribution.byType[opp.type] || 0) + 1;
// Count by severity
if (distribution.bySeverity[opp.severity]) {
distribution.bySeverity[opp.severity]++;
}
});
}
// Count by file priority
if (result.priority && distribution.byPriority[result.priority]) {
distribution.byPriority[result.priority]++;
}
});
return distribution;
}
module.exports = {
calculateOpportunityDistribution
};