-- 回滚套餐真流量达量预警的规则表、预警快照表与扫描部分索引。 -- 先删扫描索引,再按依赖倒序删除预警表与规则表,与 up 的创建顺序严格成对; -- 既有 tb_package_usage 的列与数据不受影响,本迁移从未修改既有表结构。 -- -- 不可逆说明(ENG-MIG-001 例外条件):本迁移的 down 会删除 tb_package_traffic_alert 与 -- tb_package_traffic_alert_rule。规则可由后台按当前业务口径重建;已触发的预警与冻结快照 -- 无法由数据库自身重建,只能依据 tb_audit_event 中 package_traffic_alert.trigger 的前后值快照 -- 与站内通知正文人工复核。因此 down 只在预警事实已无留存需求时执行。 -- -- 守卫:预警表存在任何行时直接阻断回滚,避免静默丢失预警事实与已投递通知的追溯依据。 DO $$ BEGIN IF EXISTS (SELECT 1 FROM tb_package_traffic_alert LIMIT 1) THEN RAISE EXCEPTION '存在套餐真流量达量预警事实,拒绝回滚以避免丢失预警快照与通知追溯依据'; END IF; END $$; DROP INDEX IF EXISTS idx_package_usage_alert_scope; DROP TABLE IF EXISTS tb_package_traffic_alert; DROP TABLE IF EXISTS tb_package_traffic_alert_rule;