-- Web 用户中心所需的用户级字段：
--   sub_token        个人订阅 URL 的不可猜测 token（GET /v1/me/subscription 返回，
--                    /sub/{token} 据此渲染该用户的 sing-box 订阅配置）。可轮换。
--   totp_secret_enc  TOTP 密钥（AES-256-GCM 加密存储，复用 admin/crypto）。NULL=未设置。
--   totp_enabled     是否已启用两步验证（verify 通过后置 true）。
-- 全部可空/带默认，存量用户无需回填即生效（首次访问按需生成 sub_token）。
ALTER TABLE users
  ADD COLUMN sub_token       CHAR(36)        NULL UNIQUE AFTER dp_uuid,
  ADD COLUMN totp_secret_enc VARBINARY(255)  NULL        AFTER sub_token,
  ADD COLUMN totp_enabled    BOOLEAN NOT NULL DEFAULT FALSE AFTER totp_secret_enc;
