{ "source": "examples/pause-subscription-stories.md", "summary": { "stories": 5, "pass": 5, "warn": 0, "fail": 0, "scenarios": 8, "points": 15 }, "stories": [ { "id": 1, "title": "Pause deliveries for a set number of weeks", "line": 5, "statement": "As a subscriber going on vacation, I want to pause my deliveries for 1 to 8 weeks, so that I do not pay for boxes I cannot receive.", "role": "subscriber going on vacation", "want": "pause my deliveries for 1 to 8 weeks", "benefit": "I do not pay for boxes I cannot receive", "points": 5, "priority": "Must", "scenarios": [ { "name": "Pause before the cutoff", "line": 10, "steps": [ { "kind": "given", "text": "I have an active weekly plan and today is Tuesday", "line": 11 }, { "kind": "when", "text": "I choose \"Pause\" and pick 2 weeks", "line": 12 }, { "kind": "then", "text": "no box is scheduled for the next 2 delivery weeks", "line": 13 }, { "kind": "and", "text": "my account page shows \"Paused until\" with the restart date", "line": 14 } ], "problems": [] }, { "name": "Pause after the cutoff", "line": 16, "steps": [ { "kind": "given", "text": "today is Thursday, after the Wednesday 11:59 pm cutoff", "line": 17 }, { "kind": "when", "text": "I pause for 2 weeks", "line": 18 }, { "kind": "then", "text": "this week's box still ships and is charged", "line": 19 }, { "kind": "and", "text": "the pause starts the following delivery week", "line": 20 } ], "problems": [] }, { "name": "Pause longer than allowed", "line": 22, "steps": [ { "kind": "given", "text": "I am on the pause screen", "line": 23 }, { "kind": "when", "text": "I try to pick 9 weeks", "line": 24 }, { "kind": "then", "text": "I see \"You can pause for up to 8 weeks\"", "line": 25 }, { "kind": "and", "text": "the pause is not saved", "line": 26 } ], "problems": [] } ], "status": "pass", "issues": [], "warnings": [] }, { "id": 2, "title": "Keep my plan while paused", "line": 28, "statement": "As a paused subscriber, I want my plan, price, and saved meals kept, so that I can restart without setting everything up again.", "role": "paused subscriber", "want": "my plan, price, and saved meals kept", "benefit": "I can restart without setting everything up again", "points": 2, "priority": "Must", "scenarios": [ { "name": null, "line": 33, "steps": [ { "kind": "given", "text": "I paused a 3-recipe plan at $59.94 a week with 4 saved meals", "line": 33 }, { "kind": "when", "text": "my pause ends", "line": 34 }, { "kind": "then", "text": "my next box uses the same plan and price", "line": 35 }, { "kind": "and", "text": "my 4 saved meals are still saved", "line": 36 } ], "problems": [] } ], "status": "pass", "issues": [], "warnings": [] }, { "id": 3, "title": "Get a reminder before deliveries restart", "line": 38, "statement": "As a paused subscriber, I want an email 3 days before my deliveries restart, so that I can pick meals or pause again.", "role": "paused subscriber", "want": "an email 3 days before my deliveries restart", "benefit": "I can pick meals or pause again", "points": 2, "priority": "Should", "scenarios": [ { "name": null, "line": 43, "steps": [ { "kind": "given", "text": "my pause ends on 2026-12-14", "line": 43 }, { "kind": "when", "text": "it is 2026-12-11", "line": 44 }, { "kind": "then", "text": "I receive an email with the restart date and a link to choose meals", "line": 45 } ], "problems": [] } ], "status": "pass", "issues": [], "warnings": [] }, { "id": 4, "title": "End a pause early", "line": 47, "statement": "As a subscriber back from vacation, I want to end my pause early, so that I get a box this week.", "role": "subscriber back from vacation", "want": "end my pause early", "benefit": "I get a box this week", "points": 3, "priority": "Should", "scenarios": [ { "name": "End before the cutoff", "line": 52, "steps": [ { "kind": "given", "text": "my pause runs for 2 more weeks and today is Monday", "line": 53 }, { "kind": "when", "text": "I choose \"Resume now\"", "line": 54 }, { "kind": "then", "text": "a box is scheduled for this delivery week", "line": 55 }, { "kind": "and", "text": "I see \"Your next box arrives\" with the date", "line": 56 } ], "problems": [] }, { "name": "End after the cutoff", "line": 58, "steps": [ { "kind": "given", "text": "today is Thursday", "line": 59 }, { "kind": "when", "text": "I choose \"Resume now\"", "line": 60 }, { "kind": "then", "text": "my first box is scheduled for next delivery week", "line": 61 }, { "kind": "and", "text": "I see why this week is not possible", "line": 62 } ], "problems": [] } ], "status": "pass", "issues": [], "warnings": [] }, { "id": 5, "title": "Pause for a customer on the phone", "line": 64, "statement": "As a support agent, I want to pause a customer's subscription from the support tool, so that customers who call in do not cancel instead.", "role": "support agent", "want": "pause a customer's subscription from the support tool", "benefit": "customers who call in do not cancel instead", "points": 3, "priority": "Must", "scenarios": [ { "name": null, "line": 69, "steps": [ { "kind": "given", "text": "I am viewing an active customer's account", "line": 69 }, { "kind": "when", "text": "I pause it for 4 weeks and add a note", "line": 70 }, { "kind": "then", "text": "the customer's account shows the pause and the note", "line": 71 }, { "kind": "and", "text": "the customer gets the same confirmation email as a self-serve pause", "line": 72 } ], "problems": [] } ], "status": "pass", "issues": [], "warnings": [] } ] }