本卡屬 FR-165(母卡見「母卡」欄),批 1。一支主線 migration,只動
scripts/sql/。做完回寫時明講「出貨基線待重產」。
左側選單要變成:合規稽核群組多一個「掃描工具資源管理」、少一個「掃描設定檔管理」;系統設定群組少一個「弱點資料庫」。這張卡只改資料庫裡的選單表,前端頁面由 FR-165.2 做。兩筆舊選單是「停用」不是刪,因為升級客戶的權限綁定、使用手冊、稽核事件都還指著它們。
~/Projects/Billows/Audit-Manager/compliance-manager-be/scripts/sql/2026-10-26-fr165-scan-tool-resources-menu.sql 新檔(本卡唯一產出)
~/Projects/Billows/Audit-Manager/compliance-manager-be/scripts/sql/2026-10-24-fr161-move-pre-engagement-menu.sql 範本:UPDATE ui_routes 用 name 定位、SET LOCAL app.is_super_admin、登記段
~/Projects/Billows/Audit-Manager/compliance-manager-be/scripts/sql/2026-10-10-fr134-vulndb-settings-page.sql 範本:INSERT ui_routes WHERE NOT EXISTS、route_capabilities 綁法、CAPABILITY_CATALOG bump、DO $$ 驗證段
DEV 現況(2026-10-26 實查 public.ui_routes):detection-profile-manage /plugin/detection-profile-manage sort 35 父 group-compliance-audit;detection-profile-controls /plugin/detection-profile-manage/versions/:versionUid/controls sort 900 父 detection-profile-manage;vulndb /system/vulndb sort 38 父 group-system-config。能力點 detection.profile.read/system.vulndb.read 都已存在(public.capabilities)。
public.ui_routes:name='scan-tool-resources'、url='/plugin/scan-tool-resources'、pid=(SELECT id WHERE name='group-compliance-audit')、icon='pi pi-box'、enable=1、description='掃描工具資源管理'、sort=35,WHERE NOT EXISTS。public.route_capabilities:新入口綁 detection.profile.read 與 system.vulndb.read 兩筆,requirement 都是 'ANY'(任一就看得到選單;分頁內各自再判)。ON CONFLICT DO NOTHING。public.ui_routes SET enable=0 WHERE name IN ('detection-profile-manage','vulndb')。不 DELETE。public.ui_routes SET url='/plugin/scan-tool-resources/profiles/versions/:versionUid/controls', pid=(新入口 id) WHERE name='detection-profile-controls'。system_configs CAPABILITY_CATALOG/VERSION 加一(照 fr134 範本第 4 段)。DO $$ 驗證:新入口 1 筆、綁定 2 筆、兩筆舊選單 enable=0、控制項子頁 pid=新入口;不符 RAISE EXCEPTION。INSERT public.schema_migrations。檔頭 -- Date:、每段日期註解、SET LOCAL app.is_super_admin = 't'、可重跑。psql --single-transaction -v ON_ERROR_STOP=1 -f <檔>,用 cmmgr,連線資訊看 .env(DB_HOST/DB_PORT/DB_NAME/DB_PASSWORD 平鋪鍵)。只套 DEV。SELECT name,url,sort,enable FROM public.ui_routes WHERE name IN ('scan-tool-resources','detection-profile-manage','vulndb','detection-profile-controls') 四筆符合上面。SELECT requirement FROM route_capabilities rc JOIN ui_routes r ON r.id=rc.route_id WHERE r.name='scan-tool-resources' 兩筆都 ANY。docs/claude/memory/reference_dev_login.md),側選單合規稽核群組出現「掃描工具資源管理」(i18n 鍵還沒補會顯示 key,正常,FR-165.2 補)、兩個舊項目消失。