@simonecoelhosfo/optimizely-mcp-server
Version:
Optimizely MCP Server for AI assistants with integrated CLI tools
102 lines • 2.94 kB
TypeScript
/**
* Pattern Recognition Engine
* @description Detects patterns in AI-generated payloads to identify entity types and transformation opportunities
*
* Purpose: Analyze payload structure and content to suggest appropriate transformations
* and identify the most likely intended entity types and operations.
*
* Key Features:
* - Entity type detection based on field patterns
* - Operation inference from payload structure
* - Transformation opportunity identification
* - Confidence scoring for suggestions
*
* @author Optimizely MCP Server
* @version 1.0.0
*/
export interface EntityPattern {
entityType: string;
confidence: number;
matchedFields: string[];
suggestedOperation?: string;
reasoning: string;
}
export interface StructurePattern {
pattern: string;
confidence: number;
transformationHint: string;
affectedFields: string[];
}
export interface PayloadAnalysis {
suspectedEntityTypes: EntityPattern[];
structurePatterns: StructurePattern[];
complexity: {
depth: number;
fieldCount: number;
nestedObjectCount: number;
arrayCount: number;
};
transformationOpportunities: string[];
}
/**
* Pattern Recognition Engine for intelligent payload analysis
*/
export declare class PatternRecognitionEngine {
private readonly logger;
private readonly entitySignatures;
private readonly aiNamingPatterns;
constructor();
/**
* Analyze payload and detect patterns
*/
analyzePayload(payload: any): Promise<PayloadAnalysis>;
/**
* Detect likely entity types based on field patterns
*/
private detectEntityTypes;
/**
* Detect structure patterns that suggest transformations
*/
private detectStructurePatterns;
/**
* Check if payload has nested ruleset data that needs extraction
*/
private hasNestedRulesetPattern;
/**
* Find fields that contain nested ruleset data
*/
private findNestedRulesetFields;
/**
* Check for array-based rules structure
*/
private hasArrayRulesPattern;
/**
* Detect AI naming patterns that suggest transformations
*/
private detectAINamingPatterns;
/**
* Get transformation hint for a pattern type
*/
private getTransformationHint;
/**
* Calculate payload complexity metrics
*/
private calculateComplexity;
/**
* Identify transformation opportunities based on patterns
*/
private identifyTransformationOpportunities;
/**
* Extract all field names from payload (including nested)
*/
private extractAllFieldNames;
/**
* Check if payload field matches template field (with fuzzy matching)
*/
private fieldMatches;
}
/**
* Singleton instance for global use
*/
export declare const patternRecognitionEngine: PatternRecognitionEngine;
//# sourceMappingURL=PatternRecognitionEngine.d.ts.map