Technicians work from a separate, mobile-first surface at /technician
(apps/web/src/app/(technician)/technician/), distinct from the main
staff app. Its bottom navigation
(apps/web/src/app/(technician)/technician/components/bottom-nav.tsx)
has exactly two tabs: Schedule (/technician/schedule) and Work
Orders (/technician/work-orders), matching the appointments a
technician is assigned via
Schedule a service visit.
TODO(owner, likely product): write the full guide covering what a
technician can do from each tab (viewing/starting an appointment, the
work order detail's report/activity/photo components under
technician/work-orders/[id]/components/), the appointment status
lifecycle from the technician's side
(SCHEDULED → DISPATCHED → EN_ROUTE → IN_PROGRESS → COMPLETED/CANNOT_COMPLETE),
and any "view as" functionality referenced by
getActiveTechnicianScheduleViewAs in the technician layout.