- Introduced AGENTS.md, README.md, TASKS.md, and implementation_plan.md for Vexer, detailing mission, responsibilities, key components, and operational notes. - Established similar documentation structure for Vulnerability Explorer and Zastava modules, including their respective workflows, integrations, and observability notes. - Created risk scoring profiles documentation outlining the core workflow, factor model, governance, and deliverables. - Ensured all modules adhere to the Aggregation-Only Contract and maintain determinism and provenance in outputs.
		
			
				
	
	
		
			43 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| groups:
 | |
|   - name: scheduler-worker
 | |
|     interval: 30s
 | |
|     rules:
 | |
|       - alert: SchedulerPlannerFailuresHigh
 | |
|         expr: sum(rate(scheduler_planner_runs_total{status="failed"}[5m]))
 | |
|           /
 | |
|           sum(rate(scheduler_planner_runs_total[5m])) > 0.05
 | |
|         for: 10m
 | |
|         labels:
 | |
|           severity: critical
 | |
|           service: scheduler-worker
 | |
|         annotations:
 | |
|           summary: "Planner failure ratio above 5%"
 | |
|           description: "More than 5% of planning runs are failing. Inspect scheduler logs and ImpactIndex connectivity before queues back up."
 | |
|       - alert: SchedulerPlannerLatencyHigh
 | |
|         expr: histogram_quantile(0.95, sum by (le) (rate(scheduler_planner_latency_seconds_bucket[5m]))) > 45
 | |
|         for: 10m
 | |
|         labels:
 | |
|           severity: warning
 | |
|           service: scheduler-worker
 | |
|         annotations:
 | |
|           summary: "Planner latency p95 above 45s"
 | |
|           description: "Planning latency p95 stayed above 45 seconds for 10 minutes. Check ImpactIndex, Mongo, or external selectors to prevent missed SLAs."
 | |
|       - alert: SchedulerRunnerBacklogGrowing
 | |
|         expr: max_over_time(scheduler_runner_backlog[15m]) > 500
 | |
|         for: 15m
 | |
|         labels:
 | |
|           severity: warning
 | |
|           service: scheduler-worker
 | |
|         annotations:
 | |
|           summary: "Runner backlog above 500 images"
 | |
|           description: "Runner backlog exceeded 500 images over the last 15 minutes. Verify runner workers, scanner availability, and rate limits."
 | |
|       - alert: SchedulerRunStuck
 | |
|         expr: sum(scheduler_runs_active) > 0 and max_over_time(scheduler_runs_active[30m]) == min_over_time(scheduler_runs_active[30m])
 | |
|         for: 30m
 | |
|         labels:
 | |
|           severity: warning
 | |
|           service: scheduler-worker
 | |
|         annotations:
 | |
|           summary: "Scheduler runs stuck without progress"
 | |
|           description: "Active runs count has remained flat for 30 minutes. Investigate stuck segments or scanner timeouts."
 |