vibe-coder-mcp
Version:
Production-ready MCP server with complete agent integration, multi-transport support, and comprehensive development automation tools for AI-assisted workflows.
99 lines • 3.49 kB
TypeScript
import { OpenRouterConfig } from '../../../types/workflow.js';
import { AtomicTask } from '../types/task.js';
import { AtomicityAnalysis } from './atomic-detector.js';
import { ProjectContext } from '../types/project-context.js';
export interface DecompositionResult {
success: boolean;
isAtomic: boolean;
originalTask: AtomicTask;
subTasks: AtomicTask[];
analysis: AtomicityAnalysis;
error?: string;
depth: number;
}
export interface EpicStructure {
readonly name: string;
readonly functionalArea: 'authentication' | 'user-management' | 'content-management' | 'data-management' | 'integration' | 'admin' | 'ui-components' | 'performance';
readonly description: string;
readonly priority: 'low' | 'medium' | 'high' | 'critical';
readonly estimatedComplexity: 'low' | 'medium' | 'high';
}
export interface RDDConfig {
readonly maxDepth: number;
readonly maxSubTasks: number;
readonly minConfidence: number;
readonly enableParallelDecomposition: boolean;
readonly epicTimeLimit: number;
}
export declare class RDDEngine {
private config;
private atomicDetector;
private rddConfig;
private activeOperations;
private circuitBreaker;
constructor(config: OpenRouterConfig, rddConfig?: Partial<RDDConfig>);
private initializeCentralizedConfig;
decomposeTask(task: AtomicTask, context: ProjectContext, depth?: number): Promise<DecompositionResult>;
private splitTask;
private processDecomposedTasks;
decomposeTaskWithEpics(task: AtomicTask, context: ProjectContext, depth?: number): Promise<DecompositionResult>;
private identifyEpicStructure;
private generateTasksForEpic;
private parseEpicIdentificationResponse;
private parseTaskGenerationResponse;
private validateAndTransformEpics;
private validateAndTransformTasks;
private buildSplitPrompt;
private validateTaskStructure;
private validateResponseStructure;
private convertAnalysisOnlyResponse;
private getMissingFields;
private parseSplitResponse;
private generateFallbackTasks;
private validateDecomposedTasks;
private validateTaskType;
private validateTaskPriority;
private trackOperation;
private completeOperation;
getHealthStatus(): {
healthy: boolean;
activeOperations: number;
longRunningOperations: Array<{
operationId: string;
operation: string;
taskId: string;
duration: number;
}>;
};
cleanupStaleOperations(): number;
private handleDecompositionFailure;
resetCircuitBreaker(taskId?: string): void;
getCircuitBreakerStats(taskId?: string): Record<string, unknown>;
monitorDecompositionProgress(): {
status: 'healthy' | 'warning' | 'critical';
activeOperations: number;
stuckOperations: Array<{
operationId: string;
taskId: string;
operation: string;
duration: number;
status: 'warning' | 'critical';
}>;
circuitBreakerStatus: {
tasksBlocked: number;
recentFailures: number;
};
recommendations: string[];
};
emergencyStop(): {
stopped: number;
operations: Array<{
operationId: string;
taskId: string;
operation: string;
duration: number;
}>;
};
private emitTaskProgress;
}
//# sourceMappingURL=rdd-engine.d.ts.map