UNPKG

bc-code-intelligence-mcp

Version:

BC Code Intelligence MCP Server - Complete Specialist Bundle with AI-driven expert consultation, seamless handoffs, and context-preserving workflows

72 lines 2.2 kB
import { CodeAnalysisParams, CodeAnalysisResult } from '../types/bc-knowledge.js'; import { KnowledgeService } from './knowledge-service.js'; /** * AL Code Analysis Service * * Analyzes AL code for performance issues, anti-patterns, and optimization * opportunities. Dynamically loads patterns from the layered knowledge system. */ export declare class CodeAnalysisService { private knowledgeService; private patternCache; private cacheExpiry; private readonly CACHE_TTL; constructor(knowledgeService: KnowledgeService); /** * Load AL code patterns dynamically from knowledge base */ private loadPatterns; /** * Parse regex patterns from YAML (can be strings or array) */ private parseRegexPatterns; /** * Fallback patterns if knowledge base is unavailable */ private getFallbackPatterns; /** * Analyze AL code for patterns, issues, and optimization opportunities */ analyzeCode(params: CodeAnalysisParams): Promise<CodeAnalysisResult>; /** * Detect AL patterns in code using dynamically loaded patterns */ private detectPatterns; /** * Filter patterns based on analysis type */ private filterPatternsByAnalysisType; /** * Calculate severity of detected issues */ private calculateSeverity; /** * Generate improvement suggestions */ private generateSuggestion; /** * Find optimization opportunities based on detected patterns */ private findOptimizationOpportunities; /** * Suggest relevant topics based on code analysis */ private suggestTopics; /** * Extract meaningful context from code for search */ private extractCodeContext; private hasLoopedAggregation; private hasSIFTUsage; private hasMultipleFieldAccess; private hasSetLoadFields; private hasIndividualRecordOperations; private hasManualCalculations; private hasSecurityRisks; private hasCodeQualityIssues; private hasPoorErrorHandling; private hasDataSafetyRisks; private hasArchitectureIssues; private hasUXIssues; } //# sourceMappingURL=code-analysis-service.d.ts.map