What this is
This is an Atlassian Forge app for Jira Cloud. It reads a ticket and lists what would stop a stranger from knowing the work is finished. The 7 Sep 2026 demo lint of 15 fixture tickets found 15 primary issue rows. That file is a demo, not a live Jira site.
Every number on this page is a demo output labeled as a demo. The app never edits a ticket. It never blocks a workflow unless a project admin turns blocking on.
What it lints
- No acceptance criteriaNothing a tester could tick off.
- Vague finish words"works", "looks good", "done when done".
- No observable testNo Given/When/Then, no status to read, no count to check.
- Scope words"etc", "and so on", "various".
- Description under 25 wordsToo short to say what changed.
- No estimateNo original estimate and no story points.
Demo lint of 7 Sep 202615 issue rows, demo
These rows are from a demo run of the linter against 15 fixture tickets on 7 Sep 2026. They are not from a customer's Jira. The first 12 are printed here; the sample file below carries all 15.
| Ticket | Rule | Severity | Fix |
|---|---|---|---|
| BAD-1 | missing_acceptance_criteria | high | Add an Acceptance criteria section with Given/When/Then lines a tester can run. |
| BAD-2 | missing_acceptance_criteria | high | Add an Acceptance criteria section with Given/When/Then lines a tester can run. |
| BAD-3 | missing_acceptance_criteria | high | Add an Acceptance criteria section with Given/When/Then lines a tester can run. |
| BAD-4 | vague_finish | high | Replace "works", "looks good", and "done when done" with a check a person can pass or fail. |
| BAD-5 | vague_finish | high | Replace "works", "looks good", and "done when done" with a check a person can pass or fail. |
| BAD-6 | vague_finish | high | Replace "works", "looks good", and "done when done" with a check a person can pass or fail. |
| BAD-7 | missing_observable_test | high | Add a finish test such as "Then the status equals 200" or a Given/When/Then path. |
| BAD-8 | missing_observable_test | high | Add a finish test such as "Then the status equals 200" or a Given/When/Then path. |
| BAD-9 | missing_observable_test | high | Add a finish test such as "Then the status equals 200" or a Given/When/Then path. |
| BAD-10 | scope_words | high | Delete "etc", "and so on", and "various". Name the exact list of things in scope. |
| BAD-11 | scope_words | high | Delete "etc", "and so on", and "various". Name the exact list of things in scope. |
| BAD-12 | scope_words | high | Delete "etc", "and so on", and "various". Name the exact list of things in scope. |
Rules in this demo file:
| Rule | Tickets (demo) |
|---|---|
| missing_acceptance_criteria | 3 |
| vague_finish | 3 |
| missing_observable_test | 3 |
| scope_words | 3 |
| short_description | 2 |
| missing_estimate | 1 |
What you get
- An issue panelFindings with the rule, the severity, and a one-line fix. Title: Done Means Done.
- Suggest acceptance criteriaA button that asks the Fit API for Given/When/Then lines and a finish test. Free quota is 20 calls per install per month until a license lifts it.
- A workflow check you turn onAn admin can block In Progress until the ticket passes. Off by default.
- Free for one projectPaid is $1 per user per month, minimum $10, billed by Atlassian. Atlassian Marketplace: STORE-PENDING.
What this never does
- Never edits a ticketIt reads fields and writes findings in its own panel. It does not change summary, description, or status.
- Never blocks unless an admin turns it onThe workflow check is off until someone enables it on the project settings page.
- Never bills through StripeAtlassian bills the paid tier. There is no card form on this page.
See the file before you pay
You do not have to take our word for what is in the file. Here are 15 rows of the demo lint, carrying all 5 of its columns, cut out of the 7 Sep 2026 fixture run. This is a demo, not a live Jira site.
- Open the 15 demo rows as a CSVA plain spreadsheet file. It saves to your machine rather than painting itself into a browser tab, and it opens in Excel, Numbers or Google Sheets.
- The same 15 demo rows as JSONThe same rows again, laid out for reading with code.
What arrives after you pay: Install from the Atlassian Marketplace once the listing is live. Until then the listing URL is STORE-PENDING.
What you would be paying for: Atlassian bills $1 per user per month, minimum $10, for the Done Means Done Jira Cloud app. Free for one project. The app lints tickets for a missing or unverifiable definition of done. It never edits a ticket. It never blocks a workflow unless a project admin turns blocking on. Cancel in the Atlassian site that installed the app.
These 15 rows are the whole demo file. They are fixture tickets, not a customer's project.
Start the thread
$10/mo · lints on create and update in each enabled Jira project. Free for one project. Paid is billed monthly by Atlassian.
Atlassian Marketplace: STORE-PENDING. There is no pay button on this page because Atlassian bills the app, and the listing is not live.
Rather ask first? Email operations@ustechautomations.com. Tell us the Jira Cloud site. We will not install it for you from this page.