# Scenario

> A realistic situation; choose what you'd do.

```json
{
  "id": "ch",
  "prompt": "Which plan would you go with?",
  "hint": "Think about both importance and risk.",
  "explanation": "Hierarchy shows importance, and dangerous actions also need distance and a warning color.",
  "type": "scenario",
  "situation": "A settings page has three actions: **Save changes**, **Reset to defaults**, and **Delete account**.",
  "options": [
    {
      "id": "a",
      "text": "Save as primary, Reset as secondary, Delete as a red text button placed apart from the others",
      "quality": "best",
      "outcome": "The main action is clear, and the dangerous one is hard to hit by accident."
    },
    {
      "id": "b",
      "text": "Save as primary, Reset and Delete as secondary buttons side by side",
      "quality": "okay",
      "outcome": "Clear main action, but Delete sits right next to Reset and looks just as safe."
    },
    {
      "id": "c",
      "text": "All three as primary buttons so they're easy to find",
      "quality": "poor",
      "outcome": "Nothing stands out, and Delete is as tempting as Save."
    }
  ]
}
```

A scenario brick sets up a situation and offers choices that are best, okay, or poor. After you choose, you see what happens next.

## When to use it

* Applying the idea to a realistic case, often as the lesson's final challenge.
* When there's a range of reasonable answers rather than one right fact.

## Fields

| Field       | Required | Description                                                                  |
| ----------- | -------- | ---------------------------------------------------------------------------- |
| `situation` | yes      | The setup, in rich text                                                      |
| `options`   | yes      | Each with `text`, a `quality` (`best`, `okay`, or `poor`), and the `outcome` |

At least one option must be `best`.

## More examples

```json
{
  "id": "ch",
  "prompt": "What do you do?",
  "hint": "What are non-goals for?",
  "explanation": "Non-goals let you say “not now” openly, which protects scope without dismissing the idea.",
  "type": "scenario",
  "situation": "Two days before the PRD review, a VP asks you to add team sharing to saved searches.",
  "options": [
    {
      "id": "a",
      "text": "List it as a non-goal for this version, explain why, and note it for the next one",
      "quality": "best",
      "outcome": "The VP sees it was considered, scope stays stable, and the idea isn't lost."
    },
    {
      "id": "b",
      "text": "Add it as a requirement and flag the timeline risk",
      "quality": "okay",
      "outcome": "The risk is visible, but the project just grew without a clear reason."
    },
    {
      "id": "c",
      "text": "Quietly add it to the requirements",
      "quality": "poor",
      "outcome": "Engineering finds out late, estimates break, and trust in the PRD drops."
    }
  ]
}
```
