reports.ai

AI-powered engineering productivity platform that eliminates manual reporting across Walmart Fulfillment

Full-Stack AI-Powered Enterprise Production React + Spring Boot


Overview

reports.ai is an internal engineering productivity platform built to eliminate manual engineering reporting across Walmart Fulfillment Services. The application automates E2E test status reports, test completion summaries, accessibility compliance reporting, defect analytics, and stakeholder communication — using a React 18 frontend, Spring Boot 3.4 backend, Azure Cosmos DB persistence, and AI-assisted content generation.

What previously took engineers 2+ hours per sprint now runs in seconds with zero formatting inconsistencies, serving multiple engineering teams and program managers across Fulfillment.

Problem

Engineering teams spent significant time every day preparing:

  • Daily E2E test status reports with risk assessments, pass/attempt metrics, and P1 counts
  • Test completion summaries with pass/fail/blocked breakdowns per environment
  • Accessibility (ADA) compliance reports per platform
  • Critical defect and P1 incident tracking with Jira references
  • Stakeholder emails with Jira filter links, Confluence references, and action items

The process was repetitive, error-prone, inconsistent across teams, and consumed hours that could be spent on actual engineering work.

Solution

Designed and developed a centralized reporting platform that:

  • Generates standardized E2E test status and completion reports with consistent formatting
  • Integrates multiple engineering data sources — Jira REST APIs, Confluence, accessibility scanners
  • Auto-loads previous report state from Cosmos DB so teams resume where they left off
  • Produces pixel-perfect HTML email reports using Thymeleaf server-side rendering
  • Uses AI to generate report summaries, risk assessments, and key stakeholder callouts
  • Distributes reports to configurable TO/CC/BCC recipients via SMTP/TLS
  • Provides real-time email preview before sending via dedicated preview endpoints

Architecture

AI-Powered Report Generation Pipeline
👤 Engineer / Program Manager
↓ Opens report builder
React 18 + Ant Design — Report Builder UI
↓ Axios → REST API (JSON)
Express.js SSO Proxy + Spring Boot 3.4 REST Controllers
↓ Routes to AI pipeline
🧠 AI Report Engine — Prompt Orchestration + Content Generation
↓ Structured output (validated JSON)
Business Services — Multi-Source Aggregation + Transformation
↓ Hydrated report model
Thymeleaf Render Engine — HTML Email Generation
↓ Pixel-perfect HTML
📧 Stakeholder Inbox (SMTP/TLS)
External Integrations & Data Sources
Azure Cosmos DB Jira MCP Server Confluence AI / LLM Service PingFederate SSO Kubernetes / Docker

How AI Generates a Report (End-to-End Flow)

1 Engineer authenticates via PingFederate SSO → React app loads protected routes
2 Report Builder auto-loads saved form state from Cosmos DB via OPIF ID lookup
3 User fills/edits report → Ant Design form with rich-text editing (React Quill)
4 Form submission hits validated REST endpoint → Jakarta Bean Validation enforces schema
5 AI Engine receives raw metrics → generates summaries, risk assessments, callouts
6 Business service merges AI content + Jira data + user input into report model
7 Thymeleaf renders model into responsive HTML email → preview available before send
8 Email dispatched via SMTP/TLS to configured TO/CC/BCC stakeholders
User / Output
Frontend
API Layer
AI Engine
Business Logic
Rendering


Tech Stack

Frontend
React 18
Ant Design 6
React Router 7
React Quill
Axios
Vite
Backend
Java 21
Spring Boot 3.4
Thymeleaf
Jakarta Validation
Maven
Express.js
Data & AI
Azure Cosmos DB
Jira MCP Server
AI / LLM Integration
REST APIs
Infrastructure & Auth
Docker
Kubernetes
PingFederate SSO
SMTP / TLS


Key Features

📊 Daily E2E Test Status Reports
Automated reports with pass rate, attempt rate, risk status, critical P1 counts, and stakeholder callouts — sent to configurable recipients.
Test Completion Reports
Structured summaries with total/passed/failed/blocked counts, pass percentage, environment details, and overall status assessment.
Accessibility Metrics
ADA compliance reporting per platform with critical defect tracking and direct Jira filter integration for audit trails.
🐛 Defect Analytics
Critical defects table, P1 incident tracking, golden flow test results with pass/fail/in-progress status, and Jira deep links.
🤖 AI-Assisted Report Generation
AI generates structured summaries, risk assessments, and key action items from raw engineering data using prompt orchestration.
📧 Automated Email Distribution
Pixel-perfect HTML emails with embedded tables, conditional styling, and real-time preview before sending.
💾 Persistent Form State
Report forms auto-save to Cosmos DB by OPIF ID — teams resume, reuse, and track report history without re-entering data.
🔐 Enterprise Authentication
PingFederate SSO with OAuth 2.0 flows, protected routes, server-side session management, and CORS-secured API endpoints.


My Contributions

Designed end-to-end system architecture — frontend, APIs, data layer, integrations
Developed Spring Boot 3.4 backend with Java 21 — REST controllers and service layer
Built React 18 frontend with Ant Design — report forms, previews, rich-text editing
Integrated Jira MCP Server for real-time defect and test data aggregation
Integrated Azure Cosmos DB with partition-key design for form persistence
Designed Thymeleaf HTML email templates — responsive, cross-client compatible
Integrated AI-powered workflows for automated report content generation
Implemented PingFederate SSO with Express.js proxy and protected React routes
Containerized with Docker, deployed on Kubernetes with CI/CD pipelines
Production support, iterative feature delivery, and team adoption


Engineering Challenges

🤖 AI-Powered Structured Report Generation

Designed prompt templates that feed raw engineering metrics — test results, defect counts, risk indicators — into AI models to produce consistent, formatted reports. Used chain-of-thought prompting with strict output schemas to ensure AI returns data in the exact format the TestStatusReport model and Thymeleaf templates expect. Results are validated against Jakarta Bean Validation before rendering.

🛡️ Prompt Validation & Guardrails

Built a validation layer that sanitizes user inputs before they reach AI services — preventing prompt injection through user-supplied fields like project names and callouts. All AI-generated content passes through @Valid, @NotBlank, and @NotNull constraints at the controller layer. Responses are validated against JSON schemas before reaching the email pipeline.

📧 Cross-Client HTML Email Rendering

Used Thymeleaf server-side rendering with custom templates (test-status-email.html, test-completion-email.html) to generate rich HTML emails. Templates render defect tables, test case results with conditional styling (pass/fail/blocked), accessibility metrics, and stakeholder mentions. Built dedicated preview endpoints (/api/email/preview/*) so engineers validate output without sending actual emails. Tested across Outlook, Gmail, and Apple Mail for pixel-perfect consistency.

🔒 Enterprise Security & Authentication

Integrated Walmart’s PingFederate SSO via @gtpjs/sso-pingfed with OAuth 2.0 flows. The Express.js proxy handles authentication, session management, and token validation. React uses AuthContext with ProtectedRoute components that auto-redirect unauthenticated users. CORS restricts API access to approved internal origins. Sensitive configuration (keys, endpoints) is externalized via environment variables.

🔄 Multi-Source Data Aggregation

Built resilient integration patterns to aggregate data from Jira (via MCP Server proxy at mcp-jira.walmart.com), accessibility scanners, and test tools. The frontend Jira service manages PingFed Bearer tokens globally and communicates through the Express backend proxy. Implemented retry logic and throttling retry options on Cosmos DB (3 retries, 30s max wait) to handle upstream service failures gracefully.

🚀 Automated Deployment Pipeline

Containerized both frontend and backend with Docker and deployed to Kubernetes. CI/CD pipelines (configured via kitt.yml) handle build, test, image push, and rolling deployment. Spring Boot Actuator provides health check endpoints for Kubernetes liveness/readiness probes. Vite builds the optimized React bundle. Environment-specific configuration is injected at runtime — zero manual steps from commit to production.


Screenshots

📸
Dashboard
📸
Report Builder
📸
Generated Report
📸
Email Preview
📸
Analytics
📸
Settings


Lessons Learned

  • AI outputs need strict contracts, not just prompts. LLMs return unpredictable formats. By enforcing Jakarta Validation on AI-generated payloads and designing prompts with explicit JSON schemas, I eliminated an entire class of runtime failures before they reached stakeholder emails.
  • Design for the email client, not the browser. HTML email rendering is wildly inconsistent across Outlook, Gmail, and Apple Mail. Building Thymeleaf templates with inline styles, table-based layouts, and no modern CSS ensured pixel-perfect output everywhere.
  • Partition key design in Cosmos DB matters more than you think. Choosing OPIF ID as the partition key enabled efficient single-partition queries for form lookups while keeping related documents co-located. A wrong partition key would have meant cross-partition fan-out and 10x RU costs at scale.
  • Enterprise SSO integration requires early planning. PingFederate OAuth flows have nuances — token refresh timing, session timeouts, cross-origin cookie policies — that are best addressed in the architecture phase. Retrofitting SSO into a working app is significantly harder.
  • Preview endpoints save more time than you’d expect. Adding /api/email/preview/* endpoints that render templates with live data saved countless debug cycles. Engineers validated email output without actually sending — dramatically faster iteration on template changes.
  • Ship incrementally, validate with users. Releasing report types one at a time (status → completion → accessibility) and gathering feedback after each led to better adoption than a big-bang launch. Teams went from resisting the tool to requesting new features weekly.

reports.ai — Built by Rajesh Kumar Ojha — Walmart Global Tech