The pipeline
1
Fetch the ticket
Waterline retrieves the ticket summary, description, and acceptance criteria from Jira, GitHub Issues, or Asana.
2
Search the codebase
The ticket is used to search your indexed codebase semantically. Waterline finds the functions and classes most likely to implement the ticket’s requirements.
3
Score relevance
Each candidate symbol is scored for how directly it addresses the ticket. Noise is filtered out before the next step.
4
Extract and map criteria
Waterline extracts the discrete acceptance criteria from the ticket description, then maps each piece of code evidence to the criteria it supports.
5
Aggregate the score
Each criterion is classified as SATISFIED, PARTIAL, or UNSATISFIED based on the strength of evidence. The overall score is computed from consistent, fixed thresholds — not a variable LLM output.
Results are cached
Waterline caches analysis results. When a cached result is available, it returns in under a second. After each push, Waterline pre-computes code-to-ticket alignments so the next analysis is faster — but a full re-analysis only runs when you request it.What you get back
Each analysis returns:- Overall progress % — the headline score
- Per-criterion breakdown — SATISFIED / PARTIAL / UNSATISFIED for each requirement, with a confidence level
- Evidence list — the specific functions and classes that support each criterion
- Uncertainty level — LOW, MEDIUM, or HIGH, indicating how confident Waterline is in the overall result