agentsqripts
Version:
Comprehensive static code analysis toolkit for identifying technical debt, security vulnerabilities, performance issues, and code quality problems
59 lines (47 loc) • 2.1 kB
JavaScript
/**
* @file Integration recommendation generator
* @description Generates integration recommendations based on analysis results
*/
/**
* Generate integration recommendations
* @param {Array} issues - Array of integration issues
* @param {number} totalEffort - Total effort required
* @param {number} endpointCount - Number of backend endpoints
* @param {number} callCount - Number of frontend calls
* @returns {Array} Array of recommendations
*/
function generateIntegrationRecommendations(issues, totalEffort, endpointCount, callCount) {
const recommendations = [];
const highSeverityIssues = issues.filter(i => i.severity === 'HIGH').length;
const mediumSeverityIssues = issues.filter(i => i.severity === 'MEDIUM').length;
if (highSeverityIssues > 0) {
recommendations.push(`PRIORITY: Fix ${highSeverityIssues} high-severity integration issues immediately`);
}
if (mediumSeverityIssues > 5) {
recommendations.push(`Address ${mediumSeverityIssues} medium-severity issues to improve API reliability`);
}
if (totalEffort > 20) {
recommendations.push(`High integration debt detected (${totalEffort} effort points) - consider API redesign`);
}
const coverageRatio = Math.min(1, callCount / Math.max(1, endpointCount));
if (coverageRatio < 0.3) {
recommendations.push(`Low API coverage (${Math.round(coverageRatio * 100)}%) - many endpoints unused by frontend`);
}
const categoryBreakdown = {};
issues.forEach(issue => {
categoryBreakdown[issue.category] = (categoryBreakdown[issue.category] || 0) + 1;
});
if (categoryBreakdown['API Mismatch'] > 3) {
recommendations.push('Multiple API mismatches detected - review API contracts and documentation');
}
if (categoryBreakdown['CORS'] > 0) {
recommendations.push('Configure CORS properly for cross-origin requests');
}
if (recommendations.length === 0) {
recommendations.push('Frontend-Backend integration is well-aligned - no major issues detected');
}
return recommendations;
}
module.exports = {
generateIntegrationRecommendations
};