# DAY18 重構任務地圖 ## 拆解原則 - 每輪只處理一項可觀察結果,避免一次改動多個呼叫階段。 - 修改檔案、測試命令與停手條件都要在執行前列明。 - 每輪結束後都能留下獨立差異與驗證證據。 - 新頻率、Word、Excel 與套件安全通知另開工作,不塞進這條路線。 ## 任務順序 | 任務 | 依賴 | 修改範圍 | 驗收條件 | 可否獨立提交 | |---|---|---|---|---| | T1:留下現況證據 | 無 | 只新增特徵測試與說明 | 08:00 呼叫 PDF 元件並將附件交給郵件元件;07:59 不呼叫兩者;正式程式雜湊不變 | 是 | | T2:抽出排程觸發判斷 | T1 | 新增時間判斷元件,調整服務內部呼叫 | T1 全過;時間判斷有獨立單元測試;公開介面不變 | 是 | | T3:拆開內容與傳送協調 | T2 | 抽出報表內容組合與附件傳送協調 | T1 全過;兩段可分別測試;信件內容與附件名稱不變 | 是 | | T4:新增通用格式路由 | T3 | 新增格式路由,先以既有 PDF 元件接入 | T1 全過;PDF 呼叫行為不變;尚不實作 Word、Excel | 是 | T2、T3 都會碰到 `DailyReportService`,因此本例採循序處理。硬拆成平行任務會增加衝突與重複理解成本。套件安全通知另立風險任務,不與這條純重構路線混在同一次修改。