# Proposal: add-audit-trail ## Why 半導體產業對資料追溯有嚴格的合規需求。目前系統缺乏統一的稽核日誌機制,無法追蹤: - 誰在何時修改了什麼資料 - 關鍵操作(如權限變更、資料刪除)的完整記錄 - 異常行為的即時警示 此變更建立系統級稽核追蹤功能,為未來 document-management 模組提供基礎。 ## What Changes ### Backend - 新增 AuditLog、AuditAlert models - 新增 AuditService (中間件自動記錄) - 新增 `/api/audit-logs` 查詢 API - 新增稽核報告匯出功能 (CSV) - 整合 NotificationService 發送敏感操作警示 ### Frontend - 新增稽核日誌查詢頁面 (Admin only) - 新增資源變更歷史元件 (Task/Project 詳情頁) ### Database - 新增 `pjctrl_audit_logs` 表 (append-only) - 新增 `pjctrl_audit_alerts` 表 ## Impact - **依賴**: 使用現有 NotificationService 發送警示 - **被依賴**: document-management 將使用此稽核功能 - **權限**: 稽核查詢限 system_admin - **效能**: 使用非同步寫入避免影響主流程 ## Out of Scope - 時間序列資料庫(先用 MySQL,未來可擴展) - PDF 匯出(先實作 CSV) - 資料庫觸發器(使用應用層中間件)