本卡屬 FR-090 母案(開卡後補號)第 1 棒。純刪,不動任何活的程式碼。輕量驗證。
設備、資訊系統、公告、問卷、人員指派這些功能搬進套件後,主專案 app/ 和 api/ 下對應的目錄沒刪乾淨,有的整個空、有的只剩一個 init.py 寫著「已移至別處」。另有 app/auth/dto/ 兩個檔沒人 import。留著會讓人以為那裡還有東西。
首腦核對(2026-09-12 find -type f 逐一查):
app/bulletin、app/device、app/information_system:0 檔(連 init 都沒有,只剩 pycache)app/survey/__init__.py:6 行,內容只有一段「Blueprint 路由配置已移至 api/survey/init.py」的註解api/bulletin、api/device、api/information_system、api/participant:0 個 .py(只剩 pycache)app/auth/dto/base_dto.py(5 行)、app/auth/dto/user_auth_provider.py(32 行):grep -rn "app.auth.dto" 排除自身零命中app/evidence_classification/resources/ 兩個 CMMC json 被 app/oscal/service/ssp_control_implementation_service.py:240 與 common/util/resource_path.py 讀、且 test_build_integrity_manifest.py 有列管,屬打包資源不是殼;api/evidence_classification/__init__.py(120 行)與 api/survey/__init__.py(160 行)是活的接線檔,不動。主專案:/Users/chouraymond/Projects/Billows/Audit-Manager/compliance-manager-be/
刪整個目錄:
app/bulletin/ app/device/ app/information_system/ app/survey/
api/bulletin/ api/device/ api/information_system/ api/participant/
刪檔:
app/auth/dto/base_dto.py app/auth/dto/user_auth_provider.py app/auth/dto/__init__.py(三檔刪完目錄一起刪)
可能引用這些路徑的地方(刪前 grep 一次):
config/app_modules.py REGISTERED_APPS 若還列著這些名字
test/test_module_boundaries.py 若有斷言「目錄不存在」反而要加
test/test_build_integrity_manifest.py 打包清單
grep -rn "app\.\(bulletin\|device\|information_system\|survey\)\b\|api\.\(bulletin\|device\|information_system\|participant\)\b\|app\.auth\.dto" --include='*.py' . 排除 .venv,確認零活引用(註解裡提到不算)。有就回寫問,不硬刪。git rm -r 上列目錄與檔;rm -rf 對應 pycache(git 不追蹤但會讓 namespace package 假活著,CM-1676 E 組踩過)。test/test_module_boundaries.py 加一支參數化守衛:這 8 個目錄「不存在」(照既有 test_upload_file_module_moved_to_package 樣式)。突變:把任一目錄 mkdir 回來 → 紅。config/app_modules.py 若 REGISTERED_APPS 或註解還提到這些模組名,清掉那幾行。pytest test/test_module_boundaries.py 全綠。