| 123456789101112131415161718192021222324252627282930 |
- -- 0048_auth_signup_geo — control-plane sign-up IP + geo capture (admin-only SEO).
- --
- -- Backs services/signup-geo.ts (write, from the per-tenant Better Auth
- -- user.create hook) and services/signup-geo-admin.ts (read, admin cockpit).
- -- One row per end-user sign-up across ALL briven-auth tenant projects.
- --
- -- DELIBERATE: stores the RAW ip (flndrn-approved) in the control plane,
- -- admin-side only. Independent of Better Auth's own session ip tracking and
- -- of the per-project customer users page (which never reads this table).
- --
- -- All statements are IF NOT EXISTS so a partial/re-run apply is a no-op.
- -- Journal note: the newest journalled entry in this repo is 0033
- -- (when=1779570000000); this entry is dated well after it so the drizzle
- -- migrator applies it regardless of which older files ever landed.
- CREATE TABLE IF NOT EXISTS "auth_signup_geo" (
- "id" text PRIMARY KEY NOT NULL,
- "project_id" text NOT NULL,
- "user_id" text,
- "email" text,
- "ip" text,
- "country" text,
- "city" text,
- "region" text,
- "created_at" timestamp with time zone DEFAULT now() NOT NULL,
- CONSTRAINT "auth_signup_geo_project_id_projects_id_fk" FOREIGN KEY ("project_id") REFERENCES "public"."projects"("id") ON DELETE cascade ON UPDATE no action
- );
- --> statement-breakpoint
- CREATE INDEX IF NOT EXISTS "auth_signup_geo_created_idx" ON "auth_signup_geo" USING btree ("created_at");--> statement-breakpoint
- CREATE INDEX IF NOT EXISTS "auth_signup_geo_project_created_idx" ON "auth_signup_geo" USING btree ("project_id","created_at");--> statement-breakpoint
- CREATE INDEX IF NOT EXISTS "auth_signup_geo_country_idx" ON "auth_signup_geo" USING btree ("country");
|