How hackathon-project-spec/incident-pilot works
IncidentPilot is an incident-response assistant that augments live incident analysis with remembered causes, successful fixes, and failed approaches. Engineers submit incident details through the React interface or REST API; the backend recalls related memory, asks an LLM for a structured diagnosis, and returns guidance. A second workflow records postmortems and reflects over those learnings. The product also exposes memory comparison and demo controls. The graph follows documented API and service ownership; frontend-to-backend wiring is inferred only from the documented connected frontend and API client, while unsampled implementation details are omitted.
Main entry points: IncidentService.java Incident orchestration · api.ts HTTP API client · HindsightClient.java Hindsight operations · App.tsx Route application
Components 20
React interface
- Route application
frontend/src/App.tsx - Incident analysis
frontend/src/pages/IncidentAnalysisPage.tsx - Memory comparison
frontend/src/pages/ComparisonPage.tsx - Postmortem entry
frontend/src/pages/PostmortemPage.tsx - Demo controls
frontend/src/pages/DemoControlCenter.tsx - HTTP API client
frontend/src/api/api.ts
REST entrypoints
- Incident endpoints
src/main/java/com/incidentpilot/controller/IncidentController.java - Postmortem endpoint
src/main/java/com/incidentpilot/controller/PostmortemController.java - Demo endpoints
src/main/java/com/incidentpilot/controller/DemoController.java
Incident workflows
- Incident orchestration
src/main/java/com/incidentpilot/service/IncidentService.java - Postmortem lifecycle
src/main/java/com/incidentpilot/service/PostmortemService.java - Structured diagnosis
src/main/java/com/incidentpilot/dto/IncidentAnalysisResponse.java - Lifecycle result
src/main/java/com/incidentpilot/dto/PostmortemResponse.java - Side-by-side result
src/main/java/com/incidentpilot/dto/IncidentComparisonResponse.java
Memory and reasoning
- Hindsight operations
src/main/java/com/incidentpilot/client/HindsightClient.java - Local fallback memory
src/main/java/com/incidentpilot/client/HindsightClient.java - Hindsight service
- LLM reasoning client
src/main/java/com/incidentpilot/client/LLMClient.java - LLM provider
Other components
- SRE / engineer
Connections 29
- SRE / engineer → Route application: uses
- Route application → Incident analysis: routes
- Route application → Memory comparison: routes
- Route application → Postmortem entry: routes
- Route application → Demo controls: routes
- Incident analysis → HTTP API client: submits incident
- Memory comparison → HTTP API client: requests comparison
- Postmortem entry → HTTP API client: submits learning
- Demo controls → HTTP API client: controls demo
- HTTP API client → Incident endpoints: calls API
- HTTP API client → Postmortem endpoint: calls API
- HTTP API client → Demo endpoints: calls API
- Incident endpoints → Incident orchestration: delegates
- Postmortem endpoint → Postmortem lifecycle: delegates
- Demo endpoints → Postmortem lifecycle: seeds postmortems
- Demo endpoints → Incident orchestration: runs analysis
- Demo endpoints → Hindsight operations: resets memory
- Incident orchestration → Hindsight operations: recalls incidents
- Incident orchestration → LLM reasoning client: analyzes incident
- LLM reasoning client → Structured diagnosis: builds response
- Incident orchestration → Structured diagnosis: returns diagnosis
- Incident orchestration → Side-by-side result: returns comparison
- Postmortem lifecycle → Hindsight operations: retains learning
- Postmortem lifecycle → Hindsight operations: reflects memory
- Postmortem lifecycle → Lifecycle result: returns status
- Hindsight operations → Local fallback memory: reads and writes
- Hindsight operations → Hindsight service: recalls, retains, reflects
- Incident orchestration → LLM reasoning client: generates legacy diagnosis
- LLM reasoning client → LLM provider: requests reasoning