-- Account lockout: track failed login attempts and lockout timestamps ALTER TABLE users ADD COLUMN IF NOT EXISTS failed_login_attempts INTEGER NOT NULL DEFAULT 0; ALTER TABLE users ADD COLUMN IF NOT EXISTS locked_until TIMESTAMPTZ;