UNPKG

@versatil/sdlc-framework

Version:

🚀 AI-Native SDLC framework with 11-MCP ecosystem, RAG memory, OPERA orchestration, and 6 specialized agents achieving ZERO CONTEXT LOSS. Features complete CI/CD pipeline with 7 GitHub workflows (MCP testing, security scanning, performance benchmarking),

140 lines (139 loc) • 4.11 kB
/** * IntrospectiveAgent - Testable without mocks * Uses dependency injection for real testing */ import { BaseAgent, AgentResponse, AgentActivationContext } from './base-agent.js'; export interface IntrospectionResult { insights: Insight[]; recommendations: Recommendation[]; timestamp: number; confidence: number; healthScore: number; } export interface Insight { type: string; description: string; confidence: number; impact?: string; actionable?: boolean; } export interface Recommendation { type: string; message: string; priority: string; estimatedEffort?: string; autoFixable?: boolean; } export interface ImprovementRecord { id: string; timestamp: number; description: string; impact: string; success: boolean; } export interface FrameworkHealth { score: number; configFiles: { [key: string]: boolean; }; dependencies: { total: number; outdated: number; }; vulnerabilities: number; issues: string[]; } export interface PerformanceMetrics { buildTime: number; testTime: number; lintTime: number; memoryUsage: NodeJS.MemoryUsage; } export interface FileSystemProvider { fileExists(path: string): Promise<boolean>; readFile(path: string): Promise<string>; } export interface CommandExecutor { execute(command: string, timeoutMs: number): Promise<{ stdout: string; stderr: string; }>; } export declare class RealFileSystemProvider implements FileSystemProvider { fileExists(path: string): Promise<boolean>; readFile(path: string): Promise<string>; } export declare class RealCommandExecutor implements CommandExecutor { execute(command: string, timeoutMs: number): Promise<{ stdout: string; stderr: string; }>; } export declare class TestFileSystemProvider implements FileSystemProvider { private files; constructor(initialFiles?: { [path: string]: string; }); fileExists(path: string): Promise<boolean>; readFile(path: string): Promise<string>; addFile(path: string, content: string): void; } export declare class TestCommandExecutor implements CommandExecutor { private responses; execute(command: string, timeoutMs: number): Promise<{ stdout: string; stderr: string; }>; setResponse(command: string, stdout: string, stderr?: string, delay?: number): void; } /** * IntrospectiveAgent - Testable implementation */ export declare class IntrospectiveAgent extends BaseAgent { name: string; id: string; specialization: string; systemPrompt: string; private logger; private performanceMonitor; private learningInsights; private improvementHistory; private fileSystem; private commandExecutor; constructor(fileSystem?: FileSystemProvider, commandExecutor?: CommandExecutor); /** * Main activation method */ activate(context: AgentActivationContext): Promise<AgentResponse>; /** * Assess framework health */ private assessFrameworkHealth; /** * Analyze performance */ private analyzePerformance; /** * Discover patterns */ private discoverPatterns; /** * Perform meta-learning */ private performMetaLearning; private calculateConfidence; private generateSuggestions; private determineHandoffsFromAnalysis; private calculatePriorityFromSuggestions; triggerIntrospection(): Promise<IntrospectionResult>; getLearningInsights(): Map<string, Insight>; getImprovementHistory(): ImprovementRecord[]; calculatePriority(issues: any[]): number; determineHandoffs(issues: any[]): string[]; generateActionableRecommendations(issues: any[]): string[]; generateEnhancedReport(issues: any[], metadata?: any): any; getScoreEmoji(score: number): string; extractAgentName(text: string): string; protected analyzeCrossFileConsistency(context: AgentActivationContext): Record<string, string>; hasConfigurationInconsistencies(context: any): boolean; }