INVEST Validation
Saga scores every story against the six INVEST criteria:
| Criterion | What it checks |
|---|---|
| Independent | The story can be delivered without hard dependencies on other in-flight stories |
| Negotiable | The story describes intent, not a rigid spec — room for implementation discussion |
| Valuable | Delivers clear value to a user or stakeholder |
| Estimable | Enough detail exists to size the work |
| Small | Fits in a single iteration; not a disguised epic |
| Testable | Has concrete, verifiable acceptance criteria (Gherkin) |
Validation combines heuristic checks (field presence, AC structure, length) with LLM-assisted judgment for the more subjective criteria.
Where you see it
- Sidebar tree — a badge appears next to each story summarizing pass/fail
- Generation Review panel — full per-criterion badges plus specific issues found, with a Validate All button
- Story Editor — re-run validation after manual edits
Acting on a failure
- Fails "Small" → use Split Story to break it up
- Fails "Testable" → add or tighten Gherkin acceptance criteria
- Fails "Independent"/"Negotiable"/"Valuable" → usually needs a manual rewrite or a Refine pass with a specific instruction
