{
  "scenario": "feedback-pulse",
  "title": "A weekly voice-of-customer pulse stays current — themed feedback aggregates into per-theme facets, and the brief refreshes on a self-driven weekly cadence even when the inbox is quiet.",
  "beats": [
    {
      "name": "cold-boot",
      "park": 19,
      "from": 0,
      "to": 19,
      "holdMs": 2800,
      "caption": "the pulse graph lights up once · inbox → theme taggers → voice-of-customer → weekly pulse"
    },
    {
      "name": "quiet",
      "park": 31,
      "from": 20,
      "to": 31,
      "holdMs": 2400,
      "caption": "re-deliver the same feedback · every re-tick memo-skips · cost flat near zero"
    },
    {
      "name": "self-skip",
      "park": 33,
      "from": 32,
      "to": 33,
      "holdMs": 2600,
      "caption": "self-tick audit floor · the pulse re-checks itself · valid_until not yet lapsed · no edges, no cost"
    },
    {
      "name": "pricing-spike",
      "park": 39,
      "from": 34,
      "to": 39,
      "holdMs": 3400,
      "caption": "HERO: a fresh pricing complaint lands · ONLY the pricing theme facet moves · performance / onboarding / integrations stay dark"
    },
    {
      "name": "weekly-refresh",
      "park": 43,
      "from": 40,
      "to": 43,
      "holdMs": 3600,
      "caption": "the weekly clock advances past valid_until · the pulse refreshes on cadence · zero tokens (no new material moved)"
    },
    {
      "name": "dedup-skip",
      "park": 47,
      "from": 44,
      "to": 47,
      "holdMs": 2800,
      "caption": "a duplicate feedback (byte-identical) re-delivers · its tagger dedup-skips · nothing downstream wakes"
    },
    {
      "name": "final-quiet",
      "park": 63,
      "from": 48,
      "to": 63,
      "holdMs": 2600,
      "caption": "it goes quiet again · the pulse shipped · cost back to flat"
    }
  ]
}
