Six-step wizard
Step 1: Facility selection
- Facility dropdown — select the target facility
- Configuration status — readiness check showing whether surgeons, rooms, procedures, payers, milestones, and flag rules are configured
- History period — slider to set how many months of data to generate (1–24)
- Purge toggle — option to delete all existing case data before generating
Step 2: Surgeon profiles
Expandable cards for each surgeon with per-surgeon configuration:| Setting | Options |
|---|---|
| Speed profile | Slow, Average, or Fast (affects all duration calculations) |
| Speed multiplier | Min/max percentage range (e.g., 90–110%) |
| Specialty | Joint, Spine, Sports (determines procedure mix) |
| Operating days | Multi-select Monday–Friday |
| Room assignments | Per-day room selection (supports multi-room) |
| Procedure types | Multi-select filtered by specialty |
| Preferred vendor | Implant company for device data |
| Closing workflow | Standard or Rapid |
| Cases per day | 3-tier slider based on speed profile |
Step 3: Room schedule validation
A matrix view (Surgeons x Days) showing room assignments with conflict detection:- Green badge — room assigned, no conflict
- Red warning — multiple surgeons in the same room on the same day
Step 4: Outlier configuration
Per-surgeon outlier controls:| Control | Description |
|---|---|
| Delay frequency | Percentage of cases that get delays (0–100%) |
| Delay magnitude | Duration of delays (5–60 minutes) |
| Extended durations | Frequency and magnitude of longer-than-normal cases |
| Short durations | Frequency and magnitude of faster-than-normal cases |
| Bad days | Monthly count (0–4) where everything goes wrong |
Step 5: Review
Summary cards showing facility name, surgeon count, estimated total cases, history period, and purge warning if enabled.Step 6: Generation (SSE streaming)
Real-time progress via Server-Sent Events:
A progress bar shows 0–100% with animated gradient. On completion, a success screen shows total cases generated and duration.
Generation features
- Per-day room assignments — cases scheduled to the surgeon’s assigned room for that day
- 3-tier durations — fast/average/slow with procedure-specific baselines
- Speed profile scaling — multiplier applied to all durations
- Incision-based callbacks — milestone durations calculated from incision time
- Cancelled cases — approximately 3% of generated cases
- Delays — 5–8% of cases get delays from the outlier engine
- Device data — generates records with the surgeon’s preferred vendor
- Both flag engines — runs operational and financial flag detection
- Comprehensive purge — when enabled, cleanly removes all generated data