UNPKG

mcp-adr-analysis-server

Version:

MCP server for analyzing Architectural Decision Records and project architecture

87 lines 2.72 kB
/** * Rule generation and validation utilities using prompt-driven AI analysis * Implements intelligent architectural rule extraction and code validation */ export interface ArchitecturalRule { id: string; name: string; description: string; category: 'architectural' | 'technology' | 'coding' | 'process' | 'security' | 'performance'; type: 'must' | 'should' | 'may' | 'must_not' | 'should_not'; severity: 'info' | 'warning' | 'error' | 'critical'; scope: 'global' | 'module' | 'component' | 'function' | 'file'; pattern: string; message: string; examples: { valid: string[]; invalid: string[]; }; sourceAdrs: string[]; evidence: string[]; automatable: boolean; confidence: number; tags: string[]; } export interface RuleViolation { ruleId: string; ruleName: string; severity: 'info' | 'warning' | 'error' | 'critical'; message: string; location: { line: number; column: number; endLine: number; endColumn: number; }; codeSnippet: string; suggestion: string; effort: 'low' | 'medium' | 'high'; priority: 'low' | 'medium' | 'high' | 'critical'; category: string; } export interface ValidationResult { fileName: string; validationType: string; overallCompliance: number; totalRulesChecked: number; rulesViolated: number; qualityScore: number; violations: RuleViolation[]; compliance: Array<{ ruleId: string; ruleName: string; status: string; evidence: string; location: string; }>; } /** * Extract architectural rules from ADRs */ export declare function extractRulesFromAdrs(adrDirectory?: string, existingRules?: ArchitecturalRule[], projectPath?: string): Promise<{ extractionPrompt: string; instructions: string; actualData?: any; }>; /** * Generate rules from code patterns */ export declare function generateRulesFromPatterns(projectPath: string, existingRules?: string[]): Promise<{ generationPrompt: string; instructions: string; }>; /** * Validate code against architectural rules */ export declare function validateCodeAgainstRules(filePath: string, rules: ArchitecturalRule[], validationType?: 'file' | 'function' | 'component' | 'module'): Promise<{ validationPrompt: string; instructions: string; }>; /** * Generate rule deviation report */ export declare function generateRuleDeviationReport(validationResults: ValidationResult[], rules: ArchitecturalRule[], reportType?: 'summary' | 'detailed' | 'trend' | 'compliance'): Promise<{ reportPrompt: string; instructions: string; }>; //# sourceMappingURL=rule-generation.d.ts.map