1+ # Quality Control Thresholds Configuration
2+ #
3+ # This configuration defines quality thresholds for alerting, analytics, and
4+ # dashboard visualizations. Thresholds are used by the reporting system to
5+ # trigger alerts, generate insights, and provide quality scoring.
6+
7+ # Global quality thresholds
8+ quality_thresholds :
9+ # Overall quality score thresholds (0-100)
10+ quality_score :
11+ excellent : 90.0 # Green indicator
12+ good : 75.0 # Yellow indicator
13+ fair : 60.0 # Orange indicator
14+ poor : 40.0 # Red indicator
15+ critical : 25.0 # Critical alert threshold
16+
17+ # Validation success rate thresholds (0.0-1.0)
18+ success_rate :
19+ excellent : 0.98 # 98% success rate
20+ good : 0.95 # 95% success rate
21+ warning : 0.90 # 90% warning threshold
22+ critical : 0.75 # 75% critical threshold
23+
24+ # Violation rate thresholds (violations per validation session)
25+ violation_rate :
26+ low : 0.05 # 5% violation rate is acceptable
27+ moderate : 0.10 # 10% violation rate warning
28+ high : 0.20 # 20% violation rate error
29+ critical : 0.35 # 35% violation rate critical
30+
31+ # Performance thresholds
32+ performance :
33+ # Validation execution time (milliseconds)
34+ execution_time_ms :
35+ fast : 1000 # Under 1 second is fast
36+ acceptable : 5000 # Under 5 seconds is acceptable
37+ slow : 15000 # Over 15 seconds is slow
38+ critical : 30000 # Over 30 seconds is critical
39+
40+ # Memory usage (MB)
41+ memory_usage_mb :
42+ low : 256 # Under 256MB is low
43+ normal : 512 # Under 512MB is normal
44+ high : 1024 # Under 1GB is high
45+ critical : 2048 # Over 2GB is critical
46+
47+ # Severity-specific thresholds
48+ severity_thresholds :
49+ critical :
50+ # Critical violations per session
51+ max_critical_violations : 1
52+ # Critical quality score threshold
53+ min_quality_score : 25.0
54+ # Critical success rate threshold
55+ min_success_rate : 0.50
56+
57+ error :
58+ # Error violations per session
59+ max_error_violations : 5
60+ # Error quality score threshold
61+ min_quality_score : 40.0
62+ # Error success rate threshold
63+ min_success_rate : 0.75
64+
65+ warning :
66+ # Warning violations per session
67+ max_warning_violations : 10
68+ # Warning quality score threshold
69+ min_quality_score : 60.0
70+ # Warning success rate threshold
71+ min_success_rate : 0.85
72+
73+ info :
74+ # Info violations per session (high tolerance)
75+ max_info_violations : 50
76+ # Info quality score threshold
77+ min_quality_score : 75.0
78+
79+ # Category-specific thresholds
80+ category_thresholds :
81+ content :
82+ # Content-related quality thresholds
83+ min_quality_score : 70.0
84+ max_violations_per_session : 15
85+ performance_threshold_ms : 10000
86+
87+ format :
88+ # Format validation thresholds
89+ min_quality_score : 85.0
90+ max_violations_per_session : 5
91+ performance_threshold_ms : 5000
92+
93+ structure :
94+ # Structure validation thresholds
95+ min_quality_score : 90.0
96+ max_violations_per_session : 3
97+ performance_threshold_ms : 3000
98+
99+ security :
100+ # Security validation thresholds (strict)
101+ min_quality_score : 95.0
102+ max_violations_per_session : 1
103+ performance_threshold_ms : 8000
104+
105+ compliance :
106+ # Compliance validation thresholds (strict)
107+ min_quality_score : 95.0
108+ max_violations_per_session : 2
109+ performance_threshold_ms : 10000
110+
111+ performance :
112+ # Performance validation thresholds
113+ min_quality_score : 80.0
114+ max_violations_per_session : 8
115+ performance_threshold_ms : 2000
116+
117+ # Rule-specific thresholds
118+ rule_thresholds :
119+ file_size_limit :
120+ # File size validation thresholds
121+ warning_threshold : 0.8 # 80% of max size
122+ error_threshold : 0.95 # 95% of max size
123+ max_execution_time_ms : 1000
124+
125+ content_quality :
126+ # Content quality thresholds
127+ min_score_warning : 70.0
128+ min_score_error : 50.0
129+ max_execution_time_ms : 15000
130+
131+ content_format :
132+ # Content format thresholds
133+ min_score_warning : 85.0
134+ min_score_error : 70.0
135+ max_execution_time_ms : 5000
136+
137+ performance_metrics :
138+ # Performance metrics thresholds
139+ max_memory_warning_mb : 1024
140+ max_memory_error_mb : 2048
141+ max_time_warning_ms : 10000
142+ max_time_error_ms : 30000
143+
144+ # Trend analysis thresholds
145+ trend_thresholds :
146+ # Percentage change thresholds for trend detection
147+ significant_change_percent : 10.0 # 10% change is significant
148+ major_change_percent : 25.0 # 25% change is major
149+ critical_change_percent : 50.0 # 50% change is critical
150+
151+ # Time windows for trend analysis (hours)
152+ short_term_window : 1 # 1 hour for immediate trends
153+ medium_term_window : 24 # 24 hours for daily trends
154+ long_term_window : 168 # 1 week for weekly trends
155+
156+ # Confidence thresholds for trend reporting
157+ min_trend_confidence : 0.7 # 70% confidence minimum
158+ high_confidence_threshold : 0.9 # 90% confidence for high confidence
159+
160+ # Volatility thresholds (standard deviation / mean)
161+ low_volatility : 0.1 # 10% volatility is low
162+ moderate_volatility : 0.3 # 30% volatility is moderate
163+ high_volatility : 0.5 # 50% volatility is high
164+
165+ # Alerting thresholds
166+ alert_thresholds :
167+ # Rate limiting
168+ max_alerts_per_hour : 10
169+ max_alerts_per_day : 50
170+
171+ # Cooldown periods (seconds)
172+ info_cooldown : 300 # 5 minutes
173+ warning_cooldown : 600 # 10 minutes
174+ error_cooldown : 900 # 15 minutes
175+ critical_cooldown : 1800 # 30 minutes
176+
177+ # Escalation thresholds
178+ escalation_after_alerts : 3 # Escalate after 3 alerts
179+ escalation_time_window_minutes : 60 # Within 1 hour
180+
181+ # Suppression thresholds
182+ auto_suppress_after_count : 20 # Auto-suppress after 20 alerts
183+ auto_suppress_duration_hours : 4 # Suppress for 4 hours
184+
185+ # Dashboard visualization thresholds
186+ dashboard_thresholds :
187+ # Color coding thresholds for visualizations
188+ gauge_colors :
189+ red_threshold : 40.0 # Below 40% is red
190+ yellow_threshold : 75.0 # Below 75% is yellow
191+ green_threshold : 90.0 # Above 90% is green
192+
193+ # Chart display thresholds
194+ max_data_points : 1000 # Maximum points to display on charts
195+ max_table_rows : 100 # Maximum rows in data tables
196+
197+ # Refresh intervals (seconds)
198+ fast_refresh : 10 # Fast refresh for critical metrics
199+ normal_refresh : 30 # Normal refresh interval
200+ slow_refresh : 300 # Slow refresh for historical data
201+
202+ # Widget thresholds
203+ max_alerts_display : 20 # Maximum alerts to display
204+ max_insights_display : 10 # Maximum insights to display
205+ max_trends_display : 15 # Maximum trends to display
206+
207+ # Environment-specific threshold overrides
208+ environment_overrides :
209+ development :
210+ # Relaxed thresholds for development
211+ quality_thresholds :
212+ quality_score :
213+ good : 60.0 # Lower bar for development
214+ fair : 45.0
215+ critical : 20.0
216+ violation_rate :
217+ moderate : 0.20 # Allow more violations in dev
218+ high : 0.35
219+ critical : 0.50
220+ alert_thresholds :
221+ max_alerts_per_hour : 20 # More alerts allowed in dev
222+
223+ staging :
224+ # Moderate thresholds for staging
225+ quality_thresholds :
226+ quality_score :
227+ good : 70.0 # Moderate bar for staging
228+ fair : 55.0
229+ critical : 30.0
230+ violation_rate :
231+ moderate : 0.15 # Moderate violations in staging
232+ high : 0.25
233+ critical : 0.40
234+
235+ production :
236+ # Strict thresholds for production
237+ quality_thresholds :
238+ quality_score :
239+ excellent : 95.0 # Higher bar for production
240+ good : 85.0
241+ fair : 70.0
242+ critical : 40.0
243+ violation_rate :
244+ low : 0.03 # Stricter violation rates
245+ moderate : 0.05
246+ high : 0.10
247+ critical : 0.20
248+ alert_thresholds :
249+ max_alerts_per_hour : 5 # Fewer alerts in production
250+ escalation_after_alerts : 2 # Faster escalation
251+
252+ # Pipeline-specific threshold overrides
253+ pipeline_overrides :
254+ data_processing :
255+ # Data processing pipelines may have different requirements
256+ performance :
257+ execution_time_ms :
258+ acceptable : 30000 # Allow longer execution for data processing
259+ slow : 60000
260+ critical : 120000
261+ quality_thresholds :
262+ quality_score :
263+ good : 80.0 # Higher quality bar for data
264+
265+ model_training :
266+ # Model training pipelines have different performance characteristics
267+ performance :
268+ execution_time_ms :
269+ acceptable : 300000 # 5 minutes acceptable for training
270+ slow : 1800000 # 30 minutes is slow
271+ critical : 3600000 # 1 hour is critical
272+ memory_usage_mb :
273+ normal : 4096 # 4GB normal for model training
274+ high : 8192 # 8GB is high
275+ critical : 16384 # 16GB is critical
276+
277+ documentation :
278+ # Documentation pipelines focus on content quality
279+ category_thresholds :
280+ content :
281+ min_quality_score : 85.0 # High content quality required
282+ max_violations_per_session : 5
283+ structure :
284+ min_quality_score : 90.0 # Well-structured docs required
285+
286+ api_integration :
287+ # API integration pipelines focus on reliability
288+ quality_thresholds :
289+ success_rate :
290+ excellent : 0.999 # 99.9% success rate target
291+ good : 0.995 # 99.5% success rate minimum
292+ warning : 0.99 # 99% warning threshold
293+ critical : 0.95 # 95% critical threshold
294+
295+ # Notification channel thresholds
296+ notification_thresholds :
297+ email :
298+ # Email notification thresholds
299+ min_severity : " warning" # Only warning and above via email
300+ max_notifications_per_hour : 5 # Rate limit email notifications
301+
302+ slack :
303+ # Slack notification thresholds
304+ min_severity : " error" # Only error and above via Slack
305+ max_notifications_per_hour : 10 # Rate limit Slack notifications
306+
307+ sms :
308+ # SMS notification thresholds (critical only)
309+ min_severity : " critical" # Only critical via SMS
310+ max_notifications_per_day : 5 # Strict rate limiting for SMS
311+
312+ webhook :
313+ # Webhook notification thresholds
314+ min_severity : " info" # All severities via webhook
315+ max_notifications_per_hour : 50 # Higher rate limit for webhooks
316+
317+ dashboard :
318+ # Dashboard notification thresholds
319+ min_severity : " info" # Show all severities on dashboard
320+ max_notifications_displayed : 100 # Limit dashboard display
321+
322+ # Integration thresholds
323+ integration_thresholds :
324+ # Metrics collector integration
325+ metrics_collection :
326+ max_collection_errors_per_hour : 10 # Alert if collection failing
327+ max_collection_duration_ms : 5000 # Alert if collection too slow
328+
329+ # Analytics integration
330+ analytics_processing :
331+ max_analysis_duration_minutes : 30 # Alert if analysis too slow
332+ min_data_points_for_trends : 10 # Minimum data for trend analysis
333+
334+ # External monitoring integration
335+ external_monitoring :
336+ heartbeat_interval_minutes : 5 # Send heartbeat every 5 minutes
337+ max_missed_heartbeats : 3 # Alert after 3 missed heartbeats
0 commit comments