UNPKG

route-claudecode

Version:

Advanced routing and transformation system for Claude Code outputs to multiple AI providers

90 lines 2.21 kB
/** * 错误系统诊断工具 * 检测和修复静默失败问题 */ import { FastifyReply } from 'fastify'; export interface ErrorDiagnostics { port: number; requestId: string; stage: string; errorType: string; isSilentFailure: boolean; hasClientNotification: boolean; errorDetails: any; } export declare class ErrorSystemDiagnostics { private static diagnosticsLog; private static maxLogSize; /** * 诊断错误处理是否正确执行 */ static diagnoseError(error: any, reply: FastifyReply, context: { requestId: string; port: number; stage: string; providerId?: string; isStreaming?: boolean; }): ErrorDiagnostics; /** * 检测静默失败 */ private static detectSilentFailure; /** * 检查客户端通知 */ private static checkClientNotification; /** * 强制修复静默失败 */ private static forceFix; /** * 修复流式错误 */ private static fixStreamingError; /** * 修复常规错误 */ private static fixRegularError; /** * 确定错误状态码 */ private static determineStatusCode; /** * 错误分类 */ private static classifyError; /** * 状态码到错误类型映射 */ private static mapStatusCodeToType; /** * 记录诊断信息 */ private static logDiagnostics; /** * 获取诊断统计 */ static getDiagnosticsStats(): { totalErrors: number; silentFailures: number; silentFailureRate: number; errorsByPort: Record<number, number>; errorsByType: Record<string, number>; recentSilentFailures: ErrorDiagnostics[]; }; /** * 清理旧的诊断记录 */ static clearOldDiagnostics(maxAgeMs?: number): number; } /** * 便捷函数:诊断并处理错误 */ export declare function diagnoseAndHandleError(error: any, reply: FastifyReply, context: { requestId: string; port: number; stage: string; providerId?: string; isStreaming?: boolean; }): ErrorDiagnostics; //# sourceMappingURL=error-system-diagnostics.d.ts.map