Every engineering team has a slow CI/CD pipeline. They know it is slow. They have a backlog ticket to fix it. The ticket never gets prioritized because "the pipeline works, it is just slow."
PipelineSage is an agent that analyzes a pipeline and produces specific recommendations: what to fix, how much time each fix saves, and generated Jenkinsfile changes to implement them.
What It Analyzes
PipelineSage ingests three artifacts from a pipeline:
- JaCoCo XML reports: Parses line and branch coverage, identifies classes with the lowest coverage (hotspots), and recommends targeted test additions.
- JUnit XML reports: Identifies failing tests, slow tests, and flaky test signals (tests that fail intermittently).
- Build logs: Parses stage timing, identifies bottleneck stages, detects redundant steps, and flags retry patterns that indicate flakiness.
The Optimization Engine
Given the parsed data, PipelineSage generates prioritized recommendations across five categories:
- Coverage gaps: Low coverage on business-critical classes
- Flaky tests: Tests that fail or retry without code changes
- Build performance: Stages that take too long or run sequentially when they could run in parallel
- Redundant steps: Duplicate commands, unnecessary rebuilds
- Deployment reliability: Failed deployments without smoke tests or rollback conditions
Each recommendation includes an estimated time savings and a reliability improvement score.
The Jenkinsfile Generator
The most valuable output is the generated Jenkinsfile. PipelineSage produces an optimized pipeline definition with parallel stages, dependency caching, test prioritization, and deterministic reporting. It is a complete, usable Jenkinsfile, not just suggestions.
Impact Tracking
PipelineSage stores every analysis in PostgreSQL and tracks trends over time: build duration, flake rate, coverage, deployment success rate. The impact API lets teams build dashboards showing how their pipeline health is improving.