by user_3EhjabvL6Jt1cA9ZFu6sthFR0E5
Guided refinement for stories and tickets: surface missing acceptance criteria, testable risks, and a runnable scenario table in plain language before work enters a sprint.
npx @qaskills/cli add qe-story-backlog-refinementAuto-detects your AI agent and installs the skill. Works with Claude Code, Cursor, Copilot, and more.
Use this when grooming a ticket, refining acceptance criteria, or doing a pre-sprint testability review — before the story is estimated or picked up. Not for release GO/NO-GO decisions, incident analysis, or writing test code.
Work through four phases, in order, in chat. Stop at each phase's stop-rule before moving on — don't jump straight to a scenario table without naming the risks first.
Collect before starting:
FEATURE / TICKET:
<paste the story / acceptance criteria as written>
API / SYSTEM CONTEXT (optional): <endpoints, data model, service boundaries>
EXISTING COVERAGE (optional): <what's already tested, so you don't re-list it as a gap>
KNOWN RISKS (optional): <anything already flagged by the team>
If the ticket is thin (no AC, one-line description), don't guess — ask 2–3 finite, closed-form questions (multiple choice, not open-ended) before proceeding.
Skim whatever code, handlers, or config exists for this feature — even a shallow pass beats guesswork. If you have no repo access, say so and proceed on the ticket text alone, labeling assumptions Assumed:.
Deliver in chat, briefly:
Stop when: you could explain the flow to a teammate without re-reading the ticket.
Plain language only — no generic advice.
Checklist:
Bad: "Test performance and security." Good: "If the promotions service times out on apply, checkout must not charge with a stale discount."
Stop when: you have 3–7 real risks, each with impact (P0–P2) and a one-line mitigation.
A short table, not a report appendix:
| # | What to try | Why it matters |
|---|---|---|
| 1 | … | … |
Assumed:.Stop when: a junior tester could run the table without reading the whole codebase.
Assumed: that would block development or test design if left unresolved.Stop when: the user could update the ticket without guessing at edge cases.
Ticket: "As a shopper, when I click 'Save for later' on a cart line item, that item moves from my active cart to a 'Saved for later' list on the same page, without affecting other cart items or the order total. AC: item removed from cart, added to saved list, cart total recalculates, saved list persists across page reload. Reverse action 'Move to cart' also exists."
Context given: POST /cart/items/{id}/save-for-later moves the item server-side; cart and saved-list are separate collections on the same Order/Cart aggregate, keyed by session or user id. Unit tests exist for cart total recalculation; none yet for the save-for-later endpoint or UI. Known risk: unclear if saved items retain applied promo/quantity discounts when moved back.
POST /cart/items/{id}/save-for-later) from the cart collection to a saved-items collection on the same aggregate; cart total recalculates and the saved list persists via session/user id.| # | What to try | Why it matters |
|---|---|---|
| 1 | Save an item with an active promo, then move it back to cart | Exposes undefined promo-reapplication behavior (P1) |
| 2 | Save the only item in the cart | Empty-cart transition, easy to miss in AC |
| 3 | Start save-for-later, kill network mid-request | Tests data-loss risk if the move isn't transactional (P1) |
| 4 | Save as a guest, close browser, reopen after session TTL | Tests the "persists across reload" claim against actual session-based storage |
| 5 | Save/un-save the same item rapidly from two tabs | Exploratory — concurrency/idempotency of the endpoint |
Missing AC:
Suggested AC improvements:
Blocking assumptions: promo-drop behavior and endpoint transactionality both need confirmation before test design can proceed with confidence.
Adapted from @qe-craft/mcp (npm), refinement mode, source version 1.0.1 / prompt version intel-v1-coach. This is a static snapshot — the live tool composes this per-run and adds repo-aware exploration hints; see https://www.npmjs.com/package/@qe-craft/mcp for the dynamic MCP version.
- name: Install QA Skills
run: npx @qaskills/cli add qe-story-backlog-refinement0 of 29 agents supported
Build AI agents that write, run, and fix tests. Playwright, LLM evals, and CI in one live cohort.
Use code AITESTER at checkout