UNPKG

@samiyev/guardian

Version:

Research-backed code quality guardian for AI-assisted development. Detects hardcodes, secrets, circular deps, framework leaks, entity exposure, and 9 architecture violations. Enforces Clean Architecture/DDD principles. Works with GitHub Copilot, Cursor, W

45 lines 1.86 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.AggregateResults = void 0; /** * Pipeline step responsible for building final response DTO */ class AggregateResults { execute(request) { const metrics = this.calculateMetrics(request.sourceFiles, request.totalFunctions, request.dependencyGraph); return { files: request.sourceFiles, dependencyGraph: request.dependencyGraph, violations: request.violations, hardcodeViolations: request.hardcodeViolations, circularDependencyViolations: request.circularDependencyViolations, namingViolations: request.namingViolations, frameworkLeakViolations: request.frameworkLeakViolations, entityExposureViolations: request.entityExposureViolations, dependencyDirectionViolations: request.dependencyDirectionViolations, repositoryPatternViolations: request.repositoryPatternViolations, aggregateBoundaryViolations: request.aggregateBoundaryViolations, secretViolations: request.secretViolations, anemicModelViolations: request.anemicModelViolations, metrics, }; } calculateMetrics(sourceFiles, totalFunctions, _dependencyGraph) { const layerDistribution = {}; let totalImports = 0; for (const file of sourceFiles) { if (file.layer) { layerDistribution[file.layer] = (layerDistribution[file.layer] || 0) + 1; } totalImports += file.imports.length; } return { totalFiles: sourceFiles.length, totalFunctions, totalImports, layerDistribution, }; } } exports.AggregateResults = AggregateResults; //# sourceMappingURL=AggregateResults.js.map