The doctor page listed where a doctor works but never when, so search engines
had no working hours for any location. booking_locations now carries
opening_hours per context, so each MedicalClinic in the Physician JSON-LD gets
its own openingHoursSpecification, matched to the address by uuid.
Verified against the rendered page: the clinic location emits five shifts with
schema.org weekday URLs alongside the availableService entries.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Companion to the clinicpro context-separation change. A doctor now has one
booking schedule per context (personal practice + one per clinic), and every
booking endpoint takes an optional clinic_uuid where omitting it means the
personal practice — not a wildcard.
This site sends no clinic_uuid anywhere, so today it shows no availability at
all for clinic-only doctors and silently books into the wrong location for
doctors who work in both. The prompt covers the new
/api/v1/appointment-booking-locations contract, threading the selected location
through the booking state, and the JSON-LD follow-up.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>