--- description: Clinic patients — org-scoped named records, globally unique mobile globs: backend/src/modules/patients/**,backend/src/modules/appointments/appointments.service.ts,backend/src/modules/treatments/treatments.service.ts,frontend/src/components/ui/patient/**,frontend/src/lib/api/patients.ts alwaysApply: false --- # Patients - List / get / update / create: **this org** + `isWalkIn: false` (`createdByOrganizationId`). - `Patient.mobile` stays **globally unique**. Same-org named create returns `{ existing: true }`. Other org, walk-in, or null creator → `PATIENT_MOBILE_UNAVAILABLE` (409). Do **not** return or mention the other clinic’s row. - Appointment create/update and `POST /treatments` named `patientId`: `ensurePatientInOrg` (named + this org). Walk-in sentinel is per clinic (`walk-in-patient.ts`), hidden from Patients/search/booking. - History / lab-case lists still query treatments for **this** `organizationId` even if the patient UUID is guessed.