vibe-coder-mcp
Version:
Production-ready MCP server with complete agent integration, multi-transport support, and comprehensive development automation tools for AI-assisted workflows.
97 lines • 3.72 kB
TypeScript
import type { TaskPriority } from '../types/task.js';
import type { OpenRouterConfig } from '../../../types/workflow.js';
export interface ParsedEpicContext {
readonly title: string;
readonly description: string;
readonly priority?: TaskPriority;
readonly tags?: readonly string[];
}
export interface LLMEpicGenerationInput {
readonly title: string;
readonly description: string;
readonly priority?: string;
readonly tags?: readonly (string | number | boolean | null | undefined)[];
}
export interface EpicContextResult {
epicId: string;
epicName: string;
source: 'existing' | 'created' | 'fallback';
confidence: number;
created?: boolean;
}
export interface EpicTaskRelationshipResult {
success: boolean;
epicId: string;
taskId: string;
relationshipType: 'added' | 'removed' | 'moved' | 'updated';
previousEpicId?: string;
metadata: {
epicProgress?: number;
taskCount?: number;
completedTaskCount?: number;
conflictsResolved?: number;
};
}
export interface EpicProgressData {
epicId: string;
totalTasks: number;
completedTasks: number;
inProgressTasks: number;
blockedTasks: number;
progressPercentage: number;
estimatedCompletionDate?: Date;
resourceUtilization: {
filePathConflicts: number;
dependencyComplexity: number;
parallelizableTaskGroups: number;
};
}
export interface EpicCreationParams {
projectId: string;
functionalArea?: string;
taskContext?: {
title: string;
description: string;
type: string;
tags: string[];
};
priority?: TaskPriority;
estimatedHours?: number;
config?: OpenRouterConfig;
}
export declare class EpicContextResolver {
private static instance;
private constructor();
static getInstance(): EpicContextResolver;
resolveEpicContext(params: EpicCreationParams): Promise<EpicContextResult>;
extractFunctionalArea(taskContext?: EpicCreationParams['taskContext'], projectId?: string, config?: OpenRouterConfig): Promise<string | null>;
private extractFunctionalAreaFromPRDWithRetries;
private buildEnhancedPRDExtractionPrompt;
private parseAndValidateLLMFunctionalAreas;
private generateValidationFeedback;
private extractFromStandardFunctionalAreas;
private extractFunctionalAreaFromTaskContext;
extractFunctionalAreaSync(taskContext?: EpicCreationParams['taskContext']): string | null;
private extractFunctionalAreaFromKeywords;
extractFunctionalAreaFromPRD(projectId: string, config: OpenRouterConfig, taskContext?: EpicCreationParams['taskContext']): Promise<string[]>;
private parseLLMFunctionalAreas;
private findExistingEpic;
private generateEnhancedEpicContext;
private parseEpicGenerationResult;
private validatePriority;
private createFunctionalAreaEpic;
private createMainEpic;
addTaskToEpic(taskId: string, epicId: string, _projectId: string): Promise<EpicTaskRelationshipResult>;
moveTaskBetweenEpics(taskId: string, fromEpicId: string, toEpicId: string, _projectId: string): Promise<EpicTaskRelationshipResult>;
calculateEpicProgress(epicId: string): Promise<EpicProgressData>;
updateEpicStatusFromTasks(epicId: string): Promise<boolean>;
private resolveResourceConflicts;
private detectFilePathConflicts;
private calculateDependencyComplexity;
private identifyParallelizableGroups;
private estimateCompletionDate;
private updateProjectEpicAssociation;
private createProjectSpecificFallbackEpic;
}
export declare function getEpicContextResolver(): EpicContextResolver;
//# sourceMappingURL=epic-context-resolver.d.ts.map