vibe-coder-mcp
Version:
Production-ready MCP server with complete agent integration, multi-transport support, and comprehensive development automation tools for AI-assisted workflows.
93 lines • 2.57 kB
TypeScript
export interface HeapSnapshotComparison {
snapshot1Path: string;
snapshot2Path: string;
snapshot1Size: number;
snapshot2Size: number;
sizeDiff: number;
percentChange: number;
memoryDifference: number;
objectCountDifference: number;
leakSuspects: Array<{
type: string;
count: number;
size: number;
}>;
analysis: {
hasLeak: boolean;
confidence: number;
recommendations: string[];
};
}
export interface MemoryLeakDetectorOptions {
snapshotDir?: string;
snapshotInterval?: number;
maxSnapshots?: number;
leakThreshold?: number;
autoDetect?: boolean;
checkInterval?: number;
maxSamples?: number;
}
interface MemorySample {
timestamp: number;
heapUsed: number;
heapTotal: number;
rss: number;
external: number;
arrayBuffers: number;
}
interface HeapSnapshotMetadata {
timestamp: number;
path: string;
memoryUsage: {
heapUsed: number;
heapTotal: number;
rss: number;
external: number;
arrayBuffers: number;
};
}
export interface MemoryLeakDetectionResult {
leakDetected: boolean;
leakType?: 'heap' | 'external' | 'arrayBuffers';
increasePercentage?: number;
trend: 'increasing' | 'decreasing' | 'stable';
samples: MemorySample[];
latestStats: {
heapUsed: number;
heapTotal: number;
rss: number;
systemTotal: number;
memoryUsagePercentage: number;
formatted: {
heapUsed: string;
heapTotal: string;
rss: string;
systemTotal: string;
};
};
timestamp: number;
}
export declare class MemoryLeakDetector {
private options;
private memorySamples;
private snapshots;
private snapshotTimer;
private checkTimer;
private isInitialized;
private static readonly DEFAULT_OPTIONS;
constructor(options?: MemoryLeakDetectorOptions);
init(): Promise<void>;
startAutomaticDetection(): void;
stopAutomaticDetection(): void;
private startMemorySampling;
private takeMemorySample;
private startSnapshotSchedule;
takeHeapSnapshot(): Promise<string>;
analyzeMemoryTrend(): MemoryLeakDetectionResult;
compareHeapSnapshots(snapshot1Path: string, snapshot2Path: string): Promise<HeapSnapshotComparison>;
getLatestSnapshot(): HeapSnapshotMetadata | undefined;
getAllSnapshots(): HeapSnapshotMetadata[];
cleanup(): void;
}
export {};
//# sourceMappingURL=memoryLeakDetector.d.ts.map