vibe-coder-mcp
Version:
Production-ready MCP server with complete agent integration, multi-transport support, and comprehensive development automation tools for AI-assisted workflows.
47 lines • 1.84 kB
TypeScript
export interface RecursionGuardConfig {
maxDepth: number;
enableLogging: boolean;
executionTimeout: number;
trackHistory: boolean;
}
export interface MethodCall {
methodName: string;
timestamp: number;
depth: number;
instanceId?: string;
}
export interface RecursionResult<T> {
success: boolean;
result?: T;
error?: Error;
recursionDetected: boolean;
callDepth: number;
executionTime: number;
}
export declare class RecursionGuard {
private static callStacks;
private static callHistory;
private static instanceCounters;
private static readonly DEFAULT_CONFIG;
static executeWithRecursionGuard<T>(methodName: string, operation: () => T | Promise<T>, config?: Partial<RecursionGuardConfig>, instanceId?: string): Promise<RecursionResult<T>>;
private static removeFromStack;
static isMethodExecuting(methodName: string, instanceId?: string): boolean;
static getCurrentDepth(methodName: string, instanceId?: string): number;
static getCallStack(methodName: string, instanceId?: string): MethodCall[];
static getCallHistory(methodName: string, instanceId?: string): MethodCall[];
static clearAll(): void;
static clearMethod(methodName: string, instanceId?: string): void;
static generateInstanceId(methodName: string): string;
static getStatistics(): {
activeStacks: number;
totalMethods: number;
deepestStack: number;
methodStats: Record<string, {
currentDepth: number;
historyCount: number;
lastCall?: number;
}>;
};
static createMethodGuard(methodName: string, config?: Partial<RecursionGuardConfig>): (target: unknown, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
}
//# sourceMappingURL=recursion-guard.d.ts.map