本卡屬 FR-145(母卡見子卡清單回填),卡 2:資料模型加欄、自動建立 hook、清單端點與 FE 清單頁重做。可先派、不依賴 FR-143;是卡 3~5 的地基。本卡新增主線 migration 1 支。

這一棒在做什麼(白話)

把「專案調查結果」這張表加幾個欄位,讓一筆報告能綁到某一輪(階段結案報告)或某個專案(專案總報告),並記狀態與版號。然後在兩個流程事件上掛「自動建報告」:輪次結案時,如果最後一次稽核還有不符合就建該輪的階段報告;專案狀態變成已完成就建專案總報告。清單頁改成一個專案一列,點開看該專案底下的報告子列(階段報告依時間排、總報告最後);側邊選單「專案調查結果」改名「結案報告」。既有舊資料標 legacy 留著唯讀。

首腦核對過的現況

在哪裡

scripts/sql/2026-10-17-closing-report-columns.sql            新 migration(主線 phase=active)
infra/project_summary_report/models/project_summary_report.py        加欄 mapping
infra/project_summary_report/models/project_summary_report_history.py 加 version_no/issued/bundle_ref
app/project_summary_report/service/closing_report_creator.py         新檔:on_round_closed/create_for_round/create_for_project
app/project_summary_report/service/closing_report_list_service.py    新檔:一專案一列讀模型
app/project/service/<呼叫 finalize_audit/close_round 的 service>     套件回傳後呼叫 creator(同 @transaction)
api/project_summary_report/routes/project_summary_report_route.py    list 回模型改
compliance-manager-fe/src/views/project-summary-report/ProjectSummaryReportManage.vue  重做

怎麼做