-- S8-STANDARD-DATASET-HARD-CUTOVER-1 · 步骤 1：物理删除「报警规则」整条功能。
--
-- 裁决：S8 的运行时告警判定权威是 ado_s8_watch_rule，从来不是 ado_s8_alert_rule。
-- 取证（三条，互相独立）：
--   1. 三个 evaluator 的 IReadOnlyList<AdoS8AlertRule> alertRules 形参，方法体读取次数 = 0；
--   2. 调度器每 tick 查一次该表后转手丢弃（NO-OP READ），本批已连同形参一并删除；
--   3. 全表 1 行（G01_TEST_ALERT / scene 'S2S6_PRODUCTION' 这一已废弃的复合场景码），
--      零 FK、零触发器、零视图引用、除 PRIMARY 外无索引。
--
-- 上一阶段（S8-LEGACY-RUNTIME-RETIREMENT-1）只做到「写入口 410 + 入口下线」。
-- 本阶段是 Hard Cutover：不保留只读 API、不保留表、不保留 410 兼容层。
--
-- ⚠️ 不要与 ado_s8_alert_record 混淆 —— 那是另一张表，有活跃消费方
--    （AidopKanbanController 的看板查询，4 处）。本脚本不碰它。
--
-- 幂等：IF EXISTS + 带条件 DELETE，重复执行无副作用。

-- ── 1. 删除配置入口菜单 ─────────────────────────────────────────────────────
-- 上一版（1.0.484）把它置为 Status=2 停用；功能既已物理删除，条目本身不再有意义。
-- 先清 SysRoleMenu 授权行，避免留下指向不存在菜单的悬挂授权。
DELETE rm FROM SysRoleMenu rm
  JOIN SysMenu m ON m.Id = rm.MenuId
 WHERE m.Name = 'aidopS8AlertRulesConfig'
   AND m.Path = '/aidop/s8/config/alert-rules';

DELETE FROM SysMenu
 WHERE Name = 'aidopS8AlertRulesConfig'
   AND Path = '/aidop/s8/config/alert-rules';

-- ── 2. 删除表 ───────────────────────────────────────────────────────────────
DROP TABLE IF EXISTS ado_s8_alert_rule;
