fix: allow letters in insurance ID; add patient state (default MA)

- Backend insurance ID check now accepts letters + digits (BCBS IDs have
  a letter prefix), matching the frontend schema; create route validates
  the normalized body
- Patient.state column (default "MA") with State select on the patient
  form; ADA claim form uses the patient's state instead of the office's
- Rebuild stale packages/db compiled .js so the runtime schemas include
  new fields (state, office billing NPI fields, Telnyx settings)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-08 23:29:27 -04:00
co-authored by Claude Opus 5.5
parent 2c0c595af5
commit 1abc2c705d
664 changed files with 6263 additions and 843 deletions
@@ -6,6 +6,7 @@ export declare const CommunicationInputSchema: z.ZodObject<{
channel: z.ZodEnum<["sms", "voice"]>;
direction: z.ZodEnum<["outbound", "inbound"]>;
status: z.ZodEnum<["queued", "sent", "delivered", "failed", "completed", "busy", "no_answer"]>;
provider: z.ZodEnum<["twilio", "telnyx"]>;
body: z.ZodNullable<z.ZodOptional<z.ZodString>>;
callDuration: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
twilioSid: z.ZodNullable<z.ZodOptional<z.ZodString>>;
@@ -19,6 +20,7 @@ export declare const CommunicationInputSchema: z.ZodObject<{
patientId: number;
channel: "sms" | "voice";
direction: "outbound" | "inbound";
provider: "twilio" | "telnyx";
patient?: unknown;
userId?: number | null | undefined;
user?: unknown;
@@ -32,6 +34,7 @@ export declare const CommunicationInputSchema: z.ZodObject<{
patientId: number;
channel: "sms" | "voice";
direction: "outbound" | "inbound";
provider: "twilio" | "telnyx";
patient?: unknown;
userId?: number | null | undefined;
user?: unknown;