agentsqripts
Version:
Comprehensive static code analysis toolkit for identifying technical debt, security vulnerabilities, performance issues, and code quality problems
46 lines (39 loc) • 1.28 kB
JavaScript
/**
* @file Technical debt recommendation generation
* @description Generates recommendations for reducing technical debt
*/
// Import from atomic module
const { getTypeSpecificRecommendation } = require('./typeSpecificRecommendationProvider');
/**
* Generates recommendations for reducing technical debt
* @param {Array<Object>} indicators - Debt indicators
* @param {Object} metrics - Code metrics
* @returns {Array<Object>} Recommendations
*/
function generateDebtRecommendations(indicators, metrics) {
const recommendations = [];
if (indicators.length === 0) {
recommendations.push({
priority: 'LOW',
action: 'Code quality is good',
description: 'Continue following current coding practices'
});
return recommendations;
}
// Group indicators by type
const grouped = indicators.reduce((acc, indicator) => {
acc[indicator.type] = (acc[indicator.type] || 0) + 1;
return acc;
}, {});
// Generate specific recommendations
Object.entries(grouped).forEach(([type, count]) => {
const recommendation = getTypeSpecificRecommendation(type, count);
if (recommendation) {
recommendations.push(recommendation);
}
});
return recommendations;
}
module.exports = {
generateDebtRecommendations
};