Files
MobilityOps/docs/demo-release/demo-scenarios.md
NuklearRabbit 38f654b97a docs(demo): add demo concept, scenarios, data, guide and runbook docs
Documents the demo-productization work from this branch: the Northstar
Mobility fictional concept and scope, the five named scenarios and their
fixed records, the seed/date-anchoring strategy (including the real bug
it fixed), the in-app Demo Guide's design and the English-suggested-
questions decision, and an operational runbook covering 5/10-minute demo
flows, reset, Unraid redeploy and rollback. Updates README with current
test counts and pointers to the new docs.
2026-08-03 15:24:35 +02:00

3.9 KiB

Demo scenarios

Five fixed scenarios are surfaced at /scenarios and via GET /api/v1/demo/manifest's scenarios array, which derives each scenario's ready/blocked_reason from the actual underlying records — never hardcoded. All five are re-findable, using the same public references, after every demo reset (see demo-data.md).

1 — Odometer regression on return

  • Fixed records: booking BK-DEMO-RETURN on vehicle MO-024.
  • Role: Rental Employee or Operations Manager.
  • Problem demonstrated: a return is submitted with an odometer reading lower than the vehicle's canonical reading — usually a data-entry mistake or a return logged against the wrong vehicle.
  • Flow: open the booking. The return form is pre-filled with a suspicious reading below MO-024's canonical odometer (the demo never asks a visitor to invent one), with a callout explaining why. Review the server-evaluated preview, then confirm. The canonical odometer is never silently lowered; a data-quality issue is opened automatically and the outcome is queued for delivery to n8n.
  • Continue: the result panel links to the vehicle, automation status, and audit trail, plus (inside the guided tour) a "Ga verder met de demo" button.

2 — Possible duplicate customer

  • Fixed records: customers CUS-0012 and CUS-0178 (same email/phone), issue DQ-DEMO-DUPLICATE.
  • Role: Operations Manager (merge is a bounded, audited action).
  • Problem demonstrated: two customer profiles that are very likely the same person, registered twice — a risk for split booking history and duplicate contact.
  • Flow: open the issue, compare both profiles field by field, choose which survives, and merge. The losing profile becomes a tombstone linked to the survivor; its bookings are rewired. The result is recorded in the audit trail.

3 — Overlapping bookings

  • Fixed records: vehicle MO-016, bookings BK-DEMO-OVERLAP-A/BK-DEMO-OVERLAP-B, issue DQ-DEMO-OVERLAP.
  • Role: Operations Manager.
  • Problem demonstrated: the same vehicle committed to two overlapping reservations — a legacy-import-style conflict that a normal booking command would reject outright.
  • Flow: open the issue, choose which of the two bookings to block; the other keeps its current status.

4 — Failed automation, retried

  • Fixed record: a seeded outbox event (00000000-0000-4000-8000-000000000020, BK-H-0020) that is durably failed immediately after every reset — a safe, simulated connection error, not a deliberately destabilised n8n configuration.
  • Role: Operations Manager.
  • Problem demonstrated: bounded retries and visible failure/recovery state for workflow delivery, rather than a silent drop.
  • Flow: open Automation, filter to failed deliveries, retry the event; it moves out of the failed filter once delivered.

5 — Grounded procedure question

  • Role: Rental Employee or Operations Manager.
  • Problem demonstrated: an operational question gets an answer with a citation from the demo knowledge base — or an honest "insufficient evidence" if nothing indexed answers it — never an invented answer.
  • Flow: open Knowledge, click one of the suggested questions (English, matching the indexed procedure content — see the note in demo-guide.md about why suggested questions stay in English even though the rest of the demo narrates in Dutch), and inspect the cited source and evidence state.

A sixth scenario exists but isn't one of the five requested

docs/13-seed-and-demo-scenarios.md's S3 ("missing inspection before next booking", vehicle MO-031) is also seeded and shows up in the attention queue; it isn't surfaced on /scenarios because the brief names five specific scenarios, but it remains available for anyone exploring the attention queue directly.