All checks were successful
build-and-release / build (catering-services) (push) Successful in 1m28s
build-and-release / build (cron) (push) Successful in 1m51s
build-and-release / build (companies) (push) Successful in 2m7s
build-and-release / build (customers) (push) Successful in 2m54s
build-and-release / build (developers) (push) Successful in 1m39s
build-and-release / build (fitness-trainers) (push) Successful in 1m39s
build-and-release / build (gateway) (push) Successful in 1m31s
build-and-release / build (jobs) (push) Successful in 42s
build-and-release / build (employees) (push) Successful in 2m22s
build-and-release / build (graphic-designers) (push) Successful in 2m8s
build-and-release / build (makeup-artists) (push) Successful in 1m58s
build-and-release / build (payments) (push) Successful in 1m48s
build-and-release / build (job-seekers) (push) Successful in 3m4s
build-and-release / build (social-media-managers) (push) Successful in 2m39s
build-and-release / build (photographers) (push) Successful in 2m42s
backend-integration-tests / ai-credits (push) Successful in 50s
build-and-release / build (tutors) (push) Successful in 3m4s
build-and-release / build (ugc-content-creators) (push) Successful in 2m44s
build-and-release / build (video-editors) (push) Successful in 2m43s
build-and-release / build (users) (push) Successful in 4m38s
The coming-soon page's 'Notify Me' form (nxtgauge-gitops/coming-soon/ index.html) only console.logged the email - nothing was actually captured. Adds a public (no auth, same trust model as a newsletter signup) endpoint on the users service: - New waitlist_signups table (email unique, created_at) - no user_id/ FK since these are anonymous pre-launch signups, not necessarily existing accounts. - apps/users/src/handlers/waitlist.rs: POST / -> INSERT ... ON CONFLICT DO NOTHING (repeat signups from the same email are a no-op, not an error), loose email validation (has @ and a dotted domain - this is a marketing signup, not an account, so overly strict validation just loses real signups to minor typos). - Routed /api/waitlist through the gateway to the users service, alongside the other public routes (packages, kb, etc.) Applied migration to nxtgauge_test and prod. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
15 lines
511 B
PL/PgSQL
15 lines
511 B
PL/PgSQL
-- Email capture for the nxtgauge.com coming-soon page's "Notify Me" form
|
|
-- (apps/users/src/handlers/waitlist.rs). No user_id/FK - these are
|
|
-- anonymous pre-launch signups, not necessarily existing accounts.
|
|
|
|
BEGIN;
|
|
|
|
CREATE TABLE IF NOT EXISTS waitlist_signups (
|
|
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
email VARCHAR(255) UNIQUE NOT NULL,
|
|
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_waitlist_signups_created_at ON waitlist_signups(created_at);
|
|
|
|
COMMIT;
|