資安檢視總報告收尾棒。前置條件:CM-1987/2014/2015/2016/2017 五張改稿卡全部完成(2026-09-21 已確認齊)。工作目錄 /Users/chouraymond/Projects/Billows/Audit-Manager/compliance-manager-be。先讀 docs/security-report/_handoff-internalize-5.md 第零節「總報告收尾」與「已拍板原則」十七條,那裡是本卡的規則來源。讀者是 PM、老闆、稽核方;全篇白話、每條先講「在哪裡、誰做什麼、發生什麼」(原則十六)。
一、這棒要交的四件(全部寫進 docs/security-report/README.md)
① 一頁摘要
放首頁最上面,給只看一頁的人。要回答:查了什麼(23 塊、幾輪、幾個檔)、找到什麼(幾條、最嚴重幾件、已修幾條)、最要緊的三到五件、我們打算怎麼修(六批順序一句話)、還沒查的兩塊為什麼不查(止損定調,原則八的講法)。不要出現「已確認安全」「沒有漏洞」「全面檢視」。
② 問題總表——這張表就是後續派工的源
- 來源:23 塊 md 的「問題一覽」表+各模組內化卡(CM-1981~2017)的裁定。以 md 現況為準(五張改稿卡已落地),卡只用來對照裁定有沒有漏進 md。
- 去重:跨頁同一件事只算一條、註明出現在哪幾頁。已知至少:M17 第 8 條=M23 第 1 條;M10 第 7 條=掃描總表第 67/120 項;M13 第 10 條主專案複製品=FR-085 C1 撿到過;M10 第 9/16/17 已併一條。去重前後各給一個總數,並寫明去重規則。
- 欄位:編號|一句話(含在哪個畫面)|出自哪塊|風險|狀態(已修/部分修/未修/已裁定刪除/SaaS 前必做/不修)|**所屬修正批(1~6)**|裁定摘要一句。
- 排序:先按風險(最嚴重→高→中→低),同風險按修正批。
- 🔴 把掃描總表
docs/features/security-scan-consolidated/README.md §3 裡 23 塊沒涵蓋的項目對進來(例如 FR-113 O1/O2 9/21 新掃的第 118~122 項),標「來源:掃描總表第 N 項、尚未內化」。之後掃完的照同格式補。
- 🔴 掃描總表 §2 的 41 張舊修正卡與 CM-1983 分組草案,決策者裁定作廢——在總表開頭一句話講明「修正以本表為準,舊卡不再使用」。
③ 分析與結論
- 十一組病因(交接文件「浮現中的問題分組」A~K),每組一段:這組是什麼形狀、出現在哪幾塊、裁定的處理方向。
- 🔴 K 組「報告寫的是當時、事實後來變了」要單獨講一段:12 塊裡 12 塊查到數字或描述錯誤、六塊事實變更;「被無關改動意外擋住」不等於修好;這是方法論層級的發現、也是這輪最有價值的產出之一。
- 🔴 「帳號可以沒有部門」那條線單獨一段:公告全部看得到 vs 意見回饋什麼都送不出去,共同根因是沒人規定這種帳號該看到什麼。
- 止損定調(原則八)在這裡再講一次,用「工具不可靠、專業判斷、有證據」的講法。
④ 修正建議
只列順序、不寫日期,照交接文件第零節的六批表:1 權限地基(先做)→ 2 只驗登入不檢查歸屬(按模組平行)→ 3 刪除類與 4 憑證殘留(現在就能動)→ 5 設定與信任鏈 → 6 資料庫牆(程式面修完測過一版再做,併 M11)。每批寫:為什麼排這、動哪些 repo、能不能平行、坑(套件 path dependency、兩入口都要列驗收項)。
二、順帶要做的