fix: setup wizard role guard, Doctor.clinic removal, dial sends agent config

Defect 1: Setup wizard (/setup) now guarded by AdminSetupGuard —
CC agents and other non-admin roles are redirected to / instead of
seeing the setup wizard they can't complete.

Defect 3: Removed all references to Doctor.clinic (relation was
replaced by DoctorVisitSlot entity). Updated queries.ts,
appointments.tsx, transforms.ts, doctors.tsx, appointment-form.tsx.

Defect 6 (frontend side): Dial request now sends agentId and
campaignName from localStorage agent config so the sidecar dials
with the correct per-agent credentials, not global defaults.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-10 14:29:32 +05:30
parent 72012f099c
commit fb92da113e
7 changed files with 27 additions and 13 deletions

View File

@@ -144,7 +144,7 @@ export const AppointmentForm = ({
const clinicNames = Array.from(
new Set(
slotEdges
.map((se) => se.node.clinic?.clinicName)
.map((se) => se.node.clinic?.clinicName ?? se.node.clinicId)
.filter((n): n is string => !!n),
),
);