-- AUDIT-8 (2026-05-23): promote NOC device-lock metadata out of the
-- pipe-encoded ApiToken.name field into proper columns.
--
-- Pre-fix: api/noc/auth/route.ts:73-85 split name on '|' into
--   displayName | countryId | deviceName | lockedDeviceId
-- which meant a DB leak exposed lockedDeviceId verbatim, defeating
-- the single-device lock as a security control.
--
-- Additive — all columns NULLABLE so existing rows are untouched
-- until scripts/maint/migrate-noc-token-metadata.ts runs.

ALTER TABLE `ApiToken`
  ADD COLUMN `displayName` VARCHAR(191) NULL,
  ADD COLUMN `countryId` INT NULL,
  ADD COLUMN `deviceName` VARCHAR(191) NULL,
  ADD COLUMN `lockedDeviceId` VARCHAR(191) NULL;
