vibe-coder-mcp
Version:
Production-ready MCP server with complete agent integration, multi-transport support, and comprehensive development automation tools for AI-assisted workflows.
107 lines • 3.17 kB
TypeScript
export type DependencyType = 'blocks' | 'enables' | 'requires' | 'suggests';
export interface Dependency {
id: string;
fromTaskId: string;
toTaskId: string;
type: DependencyType;
description: string;
critical: boolean;
metadata: {
createdAt: Date;
createdBy: string;
reason: string;
};
}
export interface DependencyNode {
taskId: string;
title: string;
status: string;
estimatedHours: number;
priority: string;
dependencies: string[];
dependents: string[];
depth: number;
criticalPath: boolean;
}
export interface DependencyGraph {
projectId: string;
nodes: Map<string, DependencyNode>;
edges: Dependency[];
executionOrder: string[];
criticalPath: string[];
statistics: {
totalTasks: number;
totalDependencies: number;
maxDepth: number;
cyclicDependencies: string[][];
orphanedTasks: string[];
};
metadata: {
generatedAt: Date;
version: string;
isValid: boolean;
validationErrors: string[];
};
}
export interface DependencyAnalysisConfig {
detectCycles: boolean;
optimizeOrder: boolean;
identifyCriticalPath: boolean;
maxDepth: number;
suggestMissingDependencies: boolean;
validateConsistency: boolean;
}
export interface DependencyAnalysisResult {
graph: DependencyGraph;
issues: {
type: 'cycle' | 'orphan' | 'missing' | 'inconsistent';
severity: 'error' | 'warning' | 'info';
description: string;
affectedTasks: string[];
suggestedFix?: string;
}[];
optimizations: {
type: 'reorder' | 'parallelize' | 'merge' | 'split';
description: string;
affectedTasks: string[];
estimatedImprovement: string;
}[];
metadata: {
analyzedAt: Date;
analysisTime: number;
configUsed: DependencyAnalysisConfig;
};
}
export interface DependencyValidationRule {
id: string;
name: string;
description: string;
severity: 'error' | 'warning' | 'info';
validate: (graph: DependencyGraph) => {
valid: boolean;
issues: string[];
};
}
export interface DependencyResolutionStrategy {
name: string;
description: string;
resolve: (graph: DependencyGraph) => {
resolved: boolean;
modifiedGraph: DependencyGraph;
changes: string[];
};
}
export interface DependencyGraphOperations {
addDependency(from: string, to: string, type: DependencyType, description: string): boolean;
removeDependency(dependencyId: string): boolean;
updateDependency(dependencyId: string, updates: Partial<Dependency>): boolean;
getDependencies(taskId: string): Dependency[];
getDependents(taskId: string): Dependency[];
wouldCreateCycle(from: string, to: string): boolean;
getShortestPath(from: string, to: string): string[];
getParallelExecutableTasks(): string[][];
validateGraph(): DependencyAnalysisResult;
optimizeExecutionOrder(): string[];
exportGraph(format: 'json' | 'yaml' | 'mermaid' | 'dot'): string;
}
//# sourceMappingURL=dependency.d.ts.map