How vaibhavoza1997/aria works
ARIA is a browser-based SRE incident analysis tool. An operator enters incident details or loads a sample, submits them to the FastAPI backend, and receives a structured root cause analysis, contributing factors, urgency, and remediation steps. The backend validates the request, builds an analysis prompt, calls Gemini, and returns a typed result for display. The README also documents sample-incident loading and a health endpoint. Phase 2 postmortem generation is planned, not implemented; the graph reflects the sampled runtime code and documented capabilities.
Main entry points: incidents.py Incident Routes · incident_service.py Analysis Orchestrator · app.js UI Logic · gemini_service.py Gemini Client
Components 12
Incident UI
- Incident Form
frontend/index.html - UI Logic
frontend/js/app.js
HTTP API
- API App
backend/app/main.py - Incident Routes
backend/app/routes/incidents.py - Incident Models
backend/app/models/incident.py - Sample Incidents
backend/mock_data/sample_incidents.json
Analysis Pipeline
- Analysis Orchestrator
backend/app/services/incident_service.py - Prompt Builder
backend/app/prompts/incident_prompts.py
AI Integration
- Gemini Client
backend/app/services/gemini_service.py - AI Configuration
backend/app/config.py
Other components
- SRE Operator
- Gemini API
Connections 14
- SRE Operator → Incident Form: enters incident
- Incident Form → UI Logic: interacts with
- UI Logic → API App: requests API
- API App → Incident Routes: mounts routes
- Incident Routes → Sample Incidents: reads samples
- Incident Routes → Incident Models: validates input
- Incident Routes → Analysis Orchestrator: dispatches analysis
- Analysis Orchestrator → Prompt Builder: builds prompt
- Analysis Orchestrator → Gemini Client: sends prompt
- Gemini Client → AI Configuration: reads settings
- Gemini Client → Gemini API: generates response
- Analysis Orchestrator → Incident Models: builds result
- Incident Routes → UI Logic: returns API data
- UI Logic → Incident Form: renders analysis