@youwen/ai-design-system
Version:
Enterprise AI-driven design system with comprehensive design tokens
102 lines (101 loc) • 3.08 kB
TypeScript
/**
* 递进式验证流水线引擎
* 4层渐进式质量门控,确保AI生成组件达到企业级标准
*/
export interface ValidationResult {
isValid: boolean;
level: 'error' | 'warning' | 'info';
message: string;
suggestion?: string;
code: string;
context?: Record<string, any>;
}
export interface LayerValidationResult {
layer: 1 | 2 | 3 | 4;
status: 'pending' | 'running' | 'passed' | 'failed';
startTime: number;
endTime?: number;
duration?: number;
results: ValidationResult[];
errors: ValidationResult[];
warnings: ValidationResult[];
infos: ValidationResult[];
score: number;
}
export interface AIFeedback {
layer: number;
status: 'failed' | 'passed';
errors: ValidationResult[];
feedback: string;
suggestions: string[];
codeExamples?: Record<string, string>;
validValues?: Record<string, any>;
retryCount: number;
}
export interface ValidationPipelineState {
id: string;
componentId: string;
status: 'pending' | 'running' | 'failed' | 'passed';
currentLayer: 1 | 2 | 3 | 4;
layerResults: {
layer1?: LayerValidationResult;
layer2?: LayerValidationResult;
layer3?: LayerValidationResult;
layer4?: LayerValidationResult;
};
retryCount: number;
maxRetries: number;
totalStartTime: number;
totalEndTime?: number;
aiContext: AIGenerationContext;
finalScore?: number;
}
export interface AIGenerationContext {
originalRequest: any;
generationHistory: any[];
learningData: Record<string, any>;
improvementMetrics: {
successRate: number;
commonErrors: string[];
avgRetries: number;
};
}
export interface ValidationLayer {
layerNumber: 1 | 2 | 3 | 4;
name: string;
description: string;
maxExecutionTime: number;
validate(input: any, context?: any): Promise<LayerValidationResult>;
}
export declare class ValidationPipelineEngine {
private layers;
private pipelines;
private performanceMetrics;
constructor();
registerLayer(layer: ValidationLayer): void;
startValidation(componentId: string, input: any, aiContext: AIGenerationContext, maxRetries?: number): Promise<ValidationPipelineState>;
private executeValidationLayers;
private executeLayer;
private generateAIFeedback;
private regenerateWithFeedback;
private getRetryLayer;
private calculateFinalScore;
private generateCodeExamples;
private extractValidValues;
private recordSuccessCase;
private recordFailureCase;
private updateSuccessMetrics;
private updateFailureMetrics;
private initializePerformanceTracking;
private recordPerformanceMetric;
getPerformanceStats(): Record<string, {
avg: number;
min: number;
max: number;
count: number;
}>;
getValidationState(pipelineId: string): ValidationPipelineState | undefined;
cleanup(maxAge?: number): void;
private sleep;
}
export declare const defaultValidationPipeline: ValidationPipelineEngine;