ALTER TABLE "User" ADD COLUMN IF NOT EXISTS "pointsBalance" integer NOT NULL DEFAULT 0, ADD COLUMN IF NOT EXISTS "pointsGiftedTotal" integer NOT NULL DEFAULT 0; CREATE TABLE IF NOT EXISTS "PointsLedger" ( "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL, "userId" uuid NOT NULL REFERENCES "User"("id") ON DELETE cascade, "amount" integer NOT NULL, "reason" varchar(64) NOT NULL, "modelId" varchar(128), "chatId" uuid, "messageId" uuid, "note" text, "createdBy" uuid REFERENCES "User"("id"), "createdAt" timestamp DEFAULT now() NOT NULL ); CREATE INDEX IF NOT EXISTS "points_ledger_user_created_idx" ON "PointsLedger" ("userId", "createdAt" DESC);