aetherlight-analyzer
Version:
Code analysis tool to generate ÆtherLight sprint plans from any codebase
88 lines • 3.98 kB
JavaScript
;
/**
* DESIGN DECISION: Shared types for all analyzers
* WHY: Consistent data model enables composition of analysis results
*
* REASONING CHAIN:
* 1. Multiple analyzers (architecture, complexity, debt, dependency)
* 2. Need common output format for aggregation
* 3. Create analysis-agnostic types (AnalysisResult, Issue, Metric)
* 4. Each analyzer produces structured output
* 5. Result: Sprint generator consumes unified analysis data
*
* PATTERN: Pattern-ANALYZER-001 (AST-Based Code Analysis)
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.TechnicalDebtCategory = exports.RelationshipType = exports.ComponentType = exports.ArchitecturePattern = exports.IssueImpact = exports.IssueEffort = exports.IssueSeverity = exports.IssueType = void 0;
var IssueType;
(function (IssueType) {
IssueType["ARCHITECTURE"] = "architecture";
IssueType["COMPLEXITY"] = "complexity";
IssueType["DEBT"] = "debt";
IssueType["DEPENDENCY"] = "dependency";
IssueType["PERFORMANCE"] = "performance";
IssueType["SECURITY"] = "security";
})(IssueType || (exports.IssueType = IssueType = {}));
var IssueSeverity;
(function (IssueSeverity) {
IssueSeverity["HIGH"] = "high";
IssueSeverity["MEDIUM"] = "medium";
IssueSeverity["LOW"] = "low";
IssueSeverity["INFO"] = "info";
})(IssueSeverity || (exports.IssueSeverity = IssueSeverity = {}));
var IssueEffort;
(function (IssueEffort) {
IssueEffort["HIGH"] = "high";
IssueEffort["MEDIUM"] = "medium";
IssueEffort["LOW"] = "low";
})(IssueEffort || (exports.IssueEffort = IssueEffort = {}));
var IssueImpact;
(function (IssueImpact) {
IssueImpact["HIGH"] = "high";
IssueImpact["MEDIUM"] = "medium";
IssueImpact["LOW"] = "low";
})(IssueImpact || (exports.IssueImpact = IssueImpact = {}));
var ArchitecturePattern;
(function (ArchitecturePattern) {
ArchitecturePattern["MVC"] = "MVC";
ArchitecturePattern["MVVM"] = "MVVM";
ArchitecturePattern["CLEAN"] = "Clean Architecture";
ArchitecturePattern["HEXAGONAL"] = "Hexagonal Architecture";
ArchitecturePattern["LAYERED"] = "Layered Architecture";
ArchitecturePattern["MICROSERVICES"] = "Microservices";
ArchitecturePattern["MONOLITH"] = "Monolith";
ArchitecturePattern["UNKNOWN"] = "Unknown";
})(ArchitecturePattern || (exports.ArchitecturePattern = ArchitecturePattern = {}));
var ComponentType;
(function (ComponentType) {
ComponentType["CONTROLLER"] = "controller";
ComponentType["SERVICE"] = "service";
ComponentType["MODEL"] = "model";
ComponentType["REPOSITORY"] = "repository";
ComponentType["VIEW"] = "view";
ComponentType["UTILITY"] = "utility";
ComponentType["MIDDLEWARE"] = "middleware";
ComponentType["ROUTER"] = "router";
})(ComponentType || (exports.ComponentType = ComponentType = {}));
var RelationshipType;
(function (RelationshipType) {
RelationshipType["USES"] = "uses";
RelationshipType["EXTENDS"] = "extends";
RelationshipType["IMPLEMENTS"] = "implements";
RelationshipType["DEPENDS_ON"] = "depends_on";
RelationshipType["AGGREGATES"] = "aggregates";
})(RelationshipType || (exports.RelationshipType = RelationshipType = {}));
var TechnicalDebtCategory;
(function (TechnicalDebtCategory) {
TechnicalDebtCategory["TODO"] = "todo";
TechnicalDebtCategory["FIXME"] = "fixme";
TechnicalDebtCategory["HACK"] = "hack";
TechnicalDebtCategory["MAGIC_NUMBER"] = "magic_number";
TechnicalDebtCategory["HARDCODED_STRING"] = "hardcoded_string";
TechnicalDebtCategory["MISSING_ERROR_HANDLING"] = "missing_error_handling";
TechnicalDebtCategory["DEPRECATED_API"] = "deprecated_api";
TechnicalDebtCategory["DUPLICATE_CODE"] = "duplicate_code";
TechnicalDebtCategory["LONG_METHOD"] = "long_method";
TechnicalDebtCategory["GOD_CLASS"] = "god_class";
})(TechnicalDebtCategory || (exports.TechnicalDebtCategory = TechnicalDebtCategory = {}));
//# sourceMappingURL=types.js.map