Acceptance criteria
Compress existing acceptance conditions without weakening boundaries or checks.
Condense supplied acceptance criteria or testable requirements into the smallest clear set of checks. Use this to remove repetition from stated conditions, not to invent test coverage or decide what the product should do. Group checks that share an actor and precondition, but retain distinct outcomes. Keep exact values, inclusive boundaries, roles, states, timings, error behavior, and requirements for persistence or side effects. Preserve identifiers so each condensed check can be traced to its source. Use "Given / When / Then" only where it clarifies a conditional behavior; otherwise use short checklist items. State the expected observable result, not vague judgments such as "works correctly". Do not turn an example value into the only accepted value or replace several edge conditions with "handles errors". Flag a condition that lacks a required expected result. Keep unresolved requirements separate from accepted checks. Return only the condensed criteria and any unresolved gaps, without adding implementation steps.
Example
Label creation acceptance checks
Before 142 words
AC1: Given a signed-in editor is creating a label, when they enter a name of between 1 and 40 characters inclusive and save, then the label is created. AC2: If that same editor leaves the name empty and presses Save, the system must show "Enter a name" and must not create a label. AC3: If the editor enters 41 or more characters and presses Save, the system must show "Use 40 characters or fewer" and must not create a label. AC4: A signed-in viewer cannot create a label and must not be shown the Save button. These four criteria repeat that no existing labels should be changed by a create attempt. AC5 is still open: the team has not decided whether names that differ only in letter case count as duplicates. The reviewer noted that the criteria should be easy to read.
After 77 words
Label creation - AC1, editor: Saving 1–40 characters inclusive creates a label. - AC2, editor: Saving an empty name shows "Enter a name"; no label is created. - AC3, editor: Saving 41+ characters shows "Use 40 characters or fewer"; no label is created. - AC4, viewer: Cannot create a label; Save is not shown. - AC1–AC4: Users are signed in. No create attempt changes existing labels. Open — AC5: Whether name uniqueness ignores letter case is undecided.
Examples illustrate the method. They do not measure model output.
Files and sources
- prompt.txt Complete prompt as plain text.
- SKILL.md The same prompt with a skill header.
- llms.txt (JSON) Prompt, metadata, example, and sources.
- LICENSE MIT license text.
An original sho.rten.it skill. Source notes.