-- S8-LEGACY-RUNTIME-RETIREMENT-1 · TASK A/C：下线「数据源」与「报警规则」两个配置入口。
--
-- 背景（产品裁决）：S8 已确立为数据中台**消费层**
--     Data Platform → Governed Dataset → S8 Provider → Canonical Contract → Watch Rule
--   · 数据源     —— 物理连接（连接串 / 主机 / 凭据）归数据平台治理，不由租户 S8 管理员维护。
--                   后端写入口同批退役（410 Gone），仅保留 GET 供存量 Legacy 规则排障。
--   · 报警规则   —— 运行时告警判定权威是 ado_s8_watch_rule（即「监控规则」页）。
--                   ado_s8_alert_rule 的写入口早已 410；三个 evaluator 虽接收
--                   IReadOnlyList<AdoS8AlertRule> 形参，但方法体读取次数为 0；
--                   调度器查出后即丢弃（NO-OP READ）。页面自述「历史兼容只读」与代码事实一致。
--
-- 为什么改 Status 而不是 IsHide：
--   这两页本就 IsHide=1（从不出现在侧边菜单树，只能从配置中心卡片进入），
--   再设一次隐藏是空操作。Status=2(Disable) 才会让 SysMenuService 不再下发该路由，
--   手输 URL 也进不去 —— 这才是「用户完全看不到」。
--
-- 为什么不 DELETE：
--   1. 既有 SysRoleMenu 授权行会变成悬挂引用；
--   2. 本批只做 Runtime Retirement，物理清理留待后续独立批次；
--   3. 将来若要复活，只需改回 Status=1。
--
-- ⚠️ 绝不能顺手停用 aidopS8WatchRuleConfig（监控规则）—— 那是运行时权威本身。
--    本脚本按 Name 精确匹配两条，不使用 LIKE '/aidop/s8/config/%' 之类的范围条件。
--
-- 幂等：带 Status <> 2 前置条件，重复执行不产生额外影响。

UPDATE SysMenu
   SET Status = 2,
       Remark = 'S8 报警规则配置（已退役，历史保留）',
       UpdateTime = NOW()
 WHERE Name = 'aidopS8AlertRulesConfig'
   AND Path = '/aidop/s8/config/alert-rules'
   AND Status <> 2;

UPDATE SysMenu
   SET Status = 2,
       Remark = 'S8 数据源配置（已退役，历史保留）',
       UpdateTime = NOW()
 WHERE Name = 'aidopS8DataSourceConfig'
   AND Path = '/aidop/s8/config/data-sources'
   AND Status <> 2;
