-- 为 telemetry_events 添加设备字段顶层列
-- 设备字段提升为独立列（而非放进 JSONB properties）的原因：
--   按设备品牌/版本分组查询可以命中 B-tree 索引，千万级数据下毫秒级响应
--   若放进 JSONB: properties->>'device_brand' 需全表扫描

ALTER TABLE telemetry_events
  ADD COLUMN IF NOT EXISTS device_brand  VARCHAR(64)  NULL,
  ADD COLUMN IF NOT EXISTS device_model  VARCHAR(64)  NULL,
  ADD COLUMN IF NOT EXISTS device_os     VARCHAR(32)  NULL,
  ADD COLUMN IF NOT EXISTS app_version   VARCHAR(32)  NULL,
  ADD COLUMN IF NOT EXISTS locale        VARCHAR(16)  NULL;

CREATE INDEX IF NOT EXISTS idx_telemetry_events_device_brand ON telemetry_events(device_brand);
CREATE INDEX IF NOT EXISTS idx_telemetry_events_app_version  ON telemetry_events(app_version);
