Skip to main content
Product Management/backlog-craft

Backlog Craft

You need to prepare stories for the upcoming iteration through refine, split, write, and review.

This is a skillset -- it chains /backlog-refine -> /story-split -> /story-write -> /story-review in sequence. Each skill also works independently.

Use this when the backlog needs grooming before iteration planning -- stories are stale, priorities have shifted, large stories need splitting, or acceptance criteria are missing. Run it before IPM, typically Monday morning or end of previous week.


The chain

StepSkillWhat it produces
1/backlog-refineHealth assessment, priority recommendations, story improvements
2/story-splitOversized stories broken into vertical slices
3/story-writeNew or rewritten stories with Gherkin acceptance criteria
4/story-reviewQuality check against INVEST and testable-AC standards

When to use: Before IPM. Typically Monday morning or end of previous week.


How skills chain

  • /backlog-refine identifies what needs work -- stale stories, missing AC, wrong priorities -> you decide which stories to split
  • /story-split produces smaller vertical slices -> you review the splits and decide which need full rewrites vs. are ready
  • /story-write creates or rewrites stories with Gherkin AC -> they feed directly into quality review
  • /story-review flags issues against INVEST and testable-AC standards -> you fix or accept before IPM

What the PM does between stages

After...PM decision
/backlog-refineDecide which stories to split vs. which are fine as-is
/story-splitConfirm splits make sense from a product perspective. Flag stories needing full rewrites.
/story-writeQuick read -- does this capture what you intended?
/story-reviewAddress flagged issues or mark stories as iteration-ready

Related skills: Part of the iteration-orbit recipe. Feeds into /ceremony-cycle (the IPM uses backlog-craft output as input).

Example Output

Input

  • Product: Meridian Health — patient-facing mobile app for appointment scheduling and care navigation
  • Backlog snapshot: 14 stories in the top of backlog; last groomed 3 weeks ago; upcoming iteration focuses on "New Patient Onboarding" epic
  • Known issues: 2 stories have no acceptance criteria, 1 story estimated at 13 points (oversized), priorities shifted after last week's discovery session revealed insurance verification is a blocker before booking
  • IPM: Tuesday 10am; today is Monday morning

Output (abbreviated)

Backlog Craft — Meridian Health · New Patient Onboarding Epic

Run Monday 8:42am · IPM Tuesday 10:00am


Step 1 — /backlog-refine · Backlog Health Assessment

Health Summary

DimensionStatusNotes
Priority alignment⚠️ Needs attentionInsurance verification must move above booking flows per discovery findings
Story sizing❌ BlockedMH-47 estimated at 13 pts — must split before iteration
Acceptance criteria❌ IncompleteMH-51, MH-53 have no AC
Staleness⚠️ Needs attention6 stories untouched >3 weeks; 2 reference deprecated "Care Finder v1" flow

Priority Recommendations

Current RankStoryRecommended RankReason
4MH-44 · Verify insurance eligibility1Blocks booking; discovery confirmed hard dependency
1MH-41 · Book first appointment3Cannot complete without MH-44 resolved
7MH-48 · Show in-network providers2Depends on verification; enables booking
9MH-53 · Profile photo upload8No user demand signal; deprioritize

Stories Flagged for Action

  • MH-47 (13 pts) → Split required — "Complete new patient onboarding" is an epic masquerading as a story
  • MH-51AC required — "Allow patient to set communication preferences" has no testable criteria
  • MH-53AC required + reconsider priority — "Upload profile photo" lacks AC and business justification
  • MH-42Refresh language — references "Care Finder v1 modal" (deprecated); update to current nav pattern

PM Decision Point: Confirm MH-47 split and which stories need full rewrites. MH-51 and MH-53 need AC before Tuesday — write from scratch or pull in existing design specs?


Step 2 — /story-split · MH-47 Vertical Slices

Original: As a new patient, I can complete onboarding so that I am ready to book care. — 13 pts, no AC

Split rationale: Onboarding spans identity, insurance, preferences, and confirmation — four distinct user-visible outcomes, each independently shippable.

SliceStory TitleEst.Dependency
MH-47aEnter personal and contact information2 ptsNone
MH-47bSubmit insurance information for eligibility check3 ptsMH-44 (verification service)
MH-47cSet care preferences and communication opt-ins2 ptsMH-47a
MH-47dView onboarding confirmation and next steps1 ptMH-47a, 47b, 47c

PM Decision Point: Does MH-47c overlap with MH-51 (communication preferences)? Recommend merging — confirm before /story-write proceeds.


Step 3 — /story-write · Full Stories with Gherkin AC


MH-47b · Submit insurance information for eligibility check

New Patient Onboarding · 3 pts

As a new patient completing onboarding, I want to enter my insurance details and receive immediate eligibility confirmation, So that I know whether my plan is accepted before I attempt to book an appointment.

Acceptance Criteria

Scenario: Eligible insurance confirmed
  Given I am on the insurance information step of onboarding
  And I enter a valid member ID and group number for a supported payer
  When I tap "Check my coverage"
  Then I see a confirmation banner: "Your plan is accepted at Meridian Health"
  And I can proceed to the next onboarding step

Scenario: Insurance not recognized
  Given I enter a member ID and payer that is not in the supported network
  When I tap "Check my coverage"
  Then I see an inline message: "We couldn't verify your plan — you can continue and resolve this before your visit"
  And I can still proceed through onboarding without being blocked

Scenario: Verification service unavailable
  Given the eligibility API returns a timeout or 5xx error
  When I tap "Check my coverage"
  Then I see: "Coverage check is temporarily unavailable — we'll verify before your appointment"
  And the error is logged for the care team to follow up

Scenario: Required fields missing
  Given I leave the member ID field blank
  When I tap "Check my coverage"
  Then I see inline validation: "Member ID is required"
  And the form does not submit

Out of scope: Real-time cost estimates, plan benefit details, dependent coverage


MH-51 · Set communication preferences

New Patient Onboarding · 2 pts

As a new patient, I want to choose how Meridian contacts me for appointment reminders and care updates, So that I receive communications through my preferred channel without unwanted outreach.

Acceptance Criteria

Scenario: Patient selects preferred channels
  Given I am on the communication preferences step
  When I toggle on "SMS reminders" and toggle off "Email updates"
  Then my selections are saved to my profile
  And I see a summary: "We'll contact you by text message"

Scenario: No preference selected
  Given I skip the preferences step without making a selection
  Then the system defaults to email only
  And I can update preferences later from account settings

Scenario: Opt-out of all communications
  Given I deselect all communication channels
  Then I see a confirmation: "You've opted out of all reminders — you can update this anytime"
  And no automated messages are sent until preferences are changed

Step 4 — /story-review · INVEST + Testable-AC Quality Check

StoryIndependentNegotiableValuableEstimableSmallTestableOverall
MH-47a⚠️Write AC before IPM
MH-47bIteration-ready
MH-47cMerge with MH-51 — see note
MH-47d⚠️⚠️Dependent — schedule last
MH-51Iteration-ready
MH-44⚠️⚠️AC needs error states added

Flags to Resolve Before IPM

  1. MH-47a — No AC written yet. Assign to PM or tech lead to draft this morning; 30 min effort.
  2. MH-47c / MH-51 overlap — Recommend merging into MH-51. Delete MH-47c post-confirmation.
  3. MH-47d