vibe-coder-mcp
Version:
Production-ready MCP server with complete agent integration, multi-transport support, and comprehensive development automation tools for AI-assisted workflows.
75 lines • 2.96 kB
TypeScript
interface TimeoutConfig {
unitTest: number;
integrationTest: number;
e2eTest: number;
setupTimeout: number;
teardownTimeout: number;
hookTimeout: number;
llmRequestTimeout: number;
fileOperationTimeout: number;
networkOperationTimeout: number;
databaseOperationTimeout: number;
processStartupTimeout: number;
processShutdownTimeout: number;
resourceCleanupTimeout: number;
warningThreshold: number;
maxRetries: number;
retryBackoffMs: number;
}
interface EnvironmentTimeouts {
local: TimeoutConfig;
ci: TimeoutConfig;
github: TimeoutConfig;
docker: TimeoutConfig;
}
interface TimeoutMonitoringResult {
operationId: string;
startTime: number;
endTime?: number;
duration?: number;
timedOut: boolean;
warnings: string[];
errorMessage?: string;
}
export declare class TimeoutManager {
private static activeTimeouts;
private static completedOperations;
private static isTestEnvironment;
private static currentEnvironment;
private static config;
private static environmentTimeouts;
static initialize(customConfig?: Partial<TimeoutConfig>): void;
private static detectEnvironment;
static startOperation(operationId: string, operationType: keyof TimeoutConfig, customTimeoutMs?: number, onTimeout?: () => void): void;
static completeOperation(operationId: string, success?: boolean): TimeoutMonitoringResult | null;
static clearOperation(operationId: string): void;
static getTimeout(operationType: keyof TimeoutConfig): number;
static withTimeout<T>(operationId: string, operationType: keyof TimeoutConfig, operation: () => Promise<T>, customTimeoutMs?: number): Promise<T>;
static getStats(): {
activeOperations: number;
completedOperations: number;
timedOutOperations: number;
averageDuration: number;
currentEnvironment: string;
config: TimeoutConfig;
};
static getOperationReport(operationId: string): TimeoutMonitoringResult | null;
static getAllReports(): TimeoutMonitoringResult[];
static reset(): void;
static updateConfig(newConfig: Partial<TimeoutConfig>): void;
static getCurrentEnvironment(): keyof EnvironmentTimeouts;
static forceEnvironment(environment: keyof EnvironmentTimeouts): void;
}
export declare function initializeTimeoutManager(config?: Partial<TimeoutConfig>): void;
export declare function withTimeout<T>(operationId: string, operationType: keyof TimeoutConfig, operation: () => Promise<T>, customTimeoutMs?: number): Promise<T>;
export declare function getTimeout(operationType: keyof TimeoutConfig): number;
export declare function getTimeoutStats(): {
activeOperations: number;
completedOperations: number;
timedOutOperations: number;
averageDuration: number;
currentEnvironment: string;
config: TimeoutConfig;
};
export {};
//# sourceMappingURL=timeout-manager.d.ts.map