Inspiration
While researching bottlenecks across various technical fields that are ripe for AI automation, I kept coming back to the high-stakes world of Site Reliability Engineering (SRE). When a critical server or
application goes down, engineers drop everything to firefight the issue.
Once the dust settles and the servers are back online, the engineers are mentally exhausted. Yet, this is exactly when they are expected to write a highly detailed, objective, and comprehensive After Action Report (AAR) or Post-Mortem. Writing these reports is tedious, and because the team is fatigued, crucial details often slip through the cracks. I strongly believed this was a perfect use case for Generative AI and automated workflows: let the exhausted engineers rest, and let AI synthesize the chaos into a detailed, blameless report in a matter of minutes.
## What it does
AutoMortem is an enterprise-grade AI automation that writes your incident post-mortems for you. When a production outage is resolved, a UiPath Maestro workflow triggers our backend. AutoMortem instantly reaches into your company's Slack #incident-logs to read the frantic troubleshooting chat history and simultaneously queries your GitHub repository to find recent code deployments.
It then feeds this unstructured data into a Large Language Model (LLM) which acts as a Senior SRE. The AI connects the dots between the chat chatter and the codebase, generating a beautiful, blameless PDF report containing a Chronological Timeline, the Root Cause, and actionable Next Steps.
## How we built it
We built a robust, event-driven backend utilizing UiPath Maestro as our central control plane.
- Ingestion Layer: We built custom Python API clients using the requests library to interface directly with the Slack Web API and the GitHub REST API.
- GenAI Synthesis: We passed these raw, unstructured logs into Google's Gemini 2.5 Pro. Using strict prompt engineering, the LLM cross-references the Slack chatter with the GitHub commits to identify the offending Pull Request.
- Output & Orchestration: The LLM strictly formats this synthesis into Markdown, which is dynamically converted into a polished PDF report using markdown-pdf . Finally, the UiPath Client pushes the status directly back into an Orchestrator Queue for human review.
## Challenges we ran into
• API Authentication & Rate Limiting: We faced multiple hurdles managing OAuth credentials. Integrating with the modern UiPath Automation Cloud API required us to dynamically pass specific Folder IDs ( X-UIPATH-OrganizationUnitId ) alongside Bearer tokens, which involved diving deep into UiPath's OData documentation. We also had to implement GitHub Personal Access Tokens (PAT) to bypass strict unauthenticated rate limits.
• LLM Formatting Constraints: Ensuring the LLM generated a perfectly structured Markdown document without hallucinating server names or IP addresses required heavy iterative prompt tuning. Furthermore, we had to programmatically intercept and reformat the Markdown headers to prevent our PDF generation library ( pymupdf ) from crashing due to hierarchy errors.
• Data Cross-Referencing: Teaching the LLM to effectively link a frantic Slack message like "I forgot the migration script" to a specific GitHub commit payload was a massive prompt-engineering challenge.
## Accomplishments that we're proud of
• Zero-Hallucination Prompting: We successfully corralled the LLM to stick strictly to the facts provided in the logs, completely eliminating AI hallucinations in the final PDF.
• Seamless Integrations: We built a highly modular Python backend that talks seamlessly to Slack, GitHub, Google Gemini, and UiPath all in one smooth execution flow.
• Solving a Real-World Problem: We took a theoretical concept and built a working prototype that genuinely addresses a major pain point in DevOps culture—engineering burnout.
## What we learned
• UiPath Maestro Integration: We gained deep, practical experience building Python architectures that seamlessly integrate with enterprise RPA workflows and UiPath cloud queues.
• Prompt Engineering for DevOps: We learned how to constrain GenAI models to maintain a "blameless" professional tone, which is an industry standard for SRE culture.
• The Value of Seamless Automation: The true "aha!" moment was watching a simulated chaotic outage turn into a gorgeous, readable PDF report in less than 10 seconds.
## What's next for AutoMortem
Moving forward, we want to expand AutoMortem's ingestion capabilities to directly pull metrics and graphs from monitoring tools like Datadog, PagerDuty, and Prometheus, embedding actual performance charts into the final PDF. We also plan to integrate an automated Jira ticket creation step, turning the AI-generated "Action Items" directly into assigned engineering tasks!***
Log in or sign up for Devpost to join the conversation.