UNPKG

agentic-qe

Version:

Agentic Quality Engineering Fleet System - AI-driven quality management platform

104 lines 3.27 kB
/** * QualityGateAgent - Intelligent quality gate evaluation with decision trees * Implements SPARC Phase 2 Section 7.1 - Intelligent Quality Gate Algorithm */ /// <reference types="node" /> import { EventEmitter } from 'events'; import { AgentId, AgentStatus, TaskSpec, QualityMetrics, QETestResult, MemoryStore } from '../types'; export interface QualityGateRequest { testResults: QETestResult[]; metrics: QualityMetrics; context: { deploymentTarget: 'development' | 'staging' | 'production'; criticality: 'low' | 'medium' | 'high' | 'critical'; changes: Array<{ file: string; type: 'added' | 'modified' | 'deleted'; complexity: number; }>; environment: string; }; customCriteria?: QualityCriterion[]; } export interface QualityCriterion { name: string; threshold: number; weight: number; type: 'minimum_threshold' | 'maximum_threshold' | 'range' | 'trend'; critical: boolean; } export interface QualityGateDecision { decision: 'PASS' | 'FAIL' | 'ESCALATE'; score: number; threshold: number; criteriaEvaluations: CriterionEvaluation[]; riskFactors: RiskFactor[]; explanation: string; recommendations: string[]; confidence: number; metadata: { evaluationTime: Date; context: any; decisionTreeVersion: string; }; } export interface CriterionEvaluation { criterion: QualityCriterion; value: number; passed: boolean; score: number; impact: string; } export interface RiskFactor { type: string; severity: 'low' | 'medium' | 'high' | 'critical'; probability: number; impact: string; mitigation: string[]; } export declare class QualityGateAgent extends EventEmitter { private id; private status; private memoryStore?; private decisionEngine; private consciousnessEngine; private psychoSymbolicReasoner; private riskAnalyzer; private readonly defaultCriteria; constructor(id: AgentId, memoryStore?: MemoryStore); initialize(): Promise<void>; executeTask(task: TaskSpec): Promise<QualityGateDecision>; terminate(): Promise<void>; getStatus(): { agentId: AgentId; status: AgentStatus; capabilities: string[]; performance: any; }; /** * Evaluate quality gate using intelligent decision tree * Based on SPARC Phase 2 Algorithm: EvaluateQualityGate */ private evaluateQualityGate; private evaluateCriterion; private calculateCriterionScore; private calculateDynamicThreshold; private analyzeRiskFactors; private applyRiskBasedLogic; private normalizeQualityMetrics; private getMetricValue; private detectComplexityIndicators; private generateDecisionExplanation; private generateQualityRecommendations; private calculateDecisionConfidence; private storeLearningData; private loadDecisionPatterns; private saveDecisionPatterns; private storeDecisionResult; private getHistoricalGateDecisions; private evaluateTrendCriterion; private calculateImpact; private getHistoricalPerformance; private calculateChangeMagnitude; } //# sourceMappingURL=QualityGateAgent.d.ts.map