CREATE TABLE "crm_approval_escalation_policies" ( "id" text PRIMARY KEY NOT NULL, "organization_id" text NOT NULL, "workflow_id" text NOT NULL, "step_number" integer NOT NULL, "trigger_after_hours" integer NOT NULL, "target_type" text NOT NULL, "target_value" text, "is_active" boolean DEFAULT true NOT NULL, "created_at" timestamp with time zone DEFAULT now() NOT NULL, "updated_at" timestamp with time zone DEFAULT now() NOT NULL, "deleted_at" timestamp with time zone, "created_by" text NOT NULL, "updated_by" text NOT NULL ); --> statement-breakpoint CREATE TABLE "crm_approval_reminder_policies" ( "id" text PRIMARY KEY NOT NULL, "organization_id" text NOT NULL, "workflow_id" text NOT NULL, "step_number" integer NOT NULL, "sla_hours" integer DEFAULT 24 NOT NULL, "reminder_offsets_hours" integer[] DEFAULT '{}' NOT NULL, "calendar_mode" text DEFAULT 'calendar_days' NOT NULL, "timeout_action" text DEFAULT 'none' NOT NULL, "is_active" boolean DEFAULT true NOT NULL, "created_at" timestamp with time zone DEFAULT now() NOT NULL, "updated_at" timestamp with time zone DEFAULT now() NOT NULL, "deleted_at" timestamp with time zone, "created_by" text NOT NULL, "updated_by" text NOT NULL ); --> statement-breakpoint ALTER TABLE "crm_approval_requests" ADD COLUMN "current_step_started_at" timestamp with time zone DEFAULT now() NOT NULL;--> statement-breakpoint ALTER TABLE "crm_approval_steps" ADD COLUMN "sla_hours" integer DEFAULT 24 NOT NULL;--> statement-breakpoint ALTER TABLE "crm_approval_steps" ADD COLUMN "calendar_mode" text DEFAULT 'calendar_days' NOT NULL;--> statement-breakpoint ALTER TABLE "crm_approval_steps" ADD COLUMN "timeout_action" text DEFAULT 'none' NOT NULL;--> statement-breakpoint CREATE UNIQUE INDEX "crm_approval_reminder_policies_workflow_step_idx" ON "crm_approval_reminder_policies" USING btree ("workflow_id","step_number");