agentsqripts
Version:
Comprehensive static code analysis toolkit for identifying technical debt, security vulnerabilities, performance issues, and code quality problems
13 lines (11 loc) • 440 B
JavaScript
/**
* @file Calculate structural similarity between blocks
* @description Single responsibility: Measure how similar code structures are
*/
function calculateStructuralSimilarity(blocks) {
// Compare AST node types and structure
const structures = blocks.map(b => b.astNode);
const uniqueStructures = new Set(structures);
return 1 - (uniqueStructures.size - 1) / blocks.length;
}
module.exports = calculateStructuralSimilarity;