Files
lindyson-ai/apps/api/migrations/005_registration_verification_codes.sql
Juno ChowandClaude Fable 5.1 f665082dad chore: 建立产品仓库,完成开源前的敏感信息清理
前端(Vite + React)、API/worker(Fastify + BullMQ)、api-contracts 契约包、
迁移脚本、测试与自托管 docker-compose 示例。

开源准备:运维脚本与机器信息已拆到私有仓库;公司名、备案号、隐私邮箱改读
publicCompliance.local.json(仓库只保留占位模板);站点地址与客服二维码改为
VITE_ 环境变量;fixtures 中的真实用户标识已匿名化;三个 package.json 标注
Apache-2.0。

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-16 02:10:46 +08:00

16 lines
697 B
SQL

CREATE TABLE IF NOT EXISTS registration_verification_codes (
id uuid PRIMARY KEY DEFAULT gen_random_uuid(),
email citext NOT NULL,
user_name text NOT NULL,
code_hash text NOT NULL,
code_salt text NOT NULL,
attempt_count integer NOT NULL DEFAULT 0 CHECK (attempt_count >= 0),
expires_at timestamptz NOT NULL,
sent_at timestamptz NOT NULL DEFAULT now(),
consumed_at timestamptz,
created_at timestamptz NOT NULL DEFAULT now()
);
CREATE INDEX IF NOT EXISTS idx_registration_verification_codes_email_sent ON registration_verification_codes(email, sent_at DESC);
CREATE INDEX IF NOT EXISTS idx_registration_verification_codes_expires ON registration_verification_codes(expires_at);