2026 / W43
排課系統規格與每日回顧產線
這週最花時間的不是寫新功能,而是查一個一開始看起來很複雜的故障:好幾個助理同時不回應。順著線索往上追,發現它們共用同一把憑證,而那把憑證過期了。備份、換新、重啟常駐服務,一次全通。教訓很簡單:多個服務同時失效時,先查共用資源,不要一個一個修。
另一件事是影片處理。原本的影片來源管道不可靠。我沒有改去找旁門左道的替代做法,而是回頭確認平台本身提供的正規管道,反而更乾淨。下載完一定先驗規格:檔案大小、解析度、影格率、音軌,確認沒問題才上傳;上傳後再用 API 讀回一次,確認轉檔真的成功,而不是只看上傳進度條跑完。
我也把每天的工作回顧做成自動產線。關鍵是資料來源:用搜尋工具會漏掉當天還沒寫進資料庫的對話,改成直接讀資料庫才可靠。另外,處理大量歷史素材時,一次丟給模型會爆掉,改成先每日濃縮、再彙整成週,中間結果可以快取,壞了也能續跑。
排課系統則是先寫規格再談程式。研究過開源排程引擎後,把教室容量從「硬性不能超過」改成「盡量不超過」,跨系合班改人工指定,因為實務上排得出來,比理論上漂亮更重要。
這週的共通點是:先找到真正的入口,再動手。
🎯 本週核心產出
- 影片來源改走平台提供的正規管道,不以繞道方式取得;下載後核對檔案大小、解析度、影格率與音軌,上傳設為私人並附來源與版權聲明,再用 API 讀回確認轉檔完成。
- 多個子服務同時掛掉,先查共用憑證往往最快:本次即為一把過期金鑰拖垮整隊,備份後換入有效金鑰、重啟常駐服務即恢復。
- 呼叫部分外部 API 需要完整的請求標頭,否則會被服務端直接拒絕,這次一併補上並修好中斷的提醒腳本。
- 每日回顧改為直讀各角色資料庫,避開搜尋工具漏掉當天尚未落庫的對話;整理成固定結構後寫入筆記並發通知,每晚固定時間執行,當天無對話則跳過。
- 補做歷史週精華時,單週素材達數百萬字元,改採先每日濃縮、再彙整成週的兩段式流程,濃縮稿可快取續跑,不必每次重來。
- 行事曆新增「發送 LINE 通知」勾選欄位,預設勾選、既有事件一律設為要通知;未勾選者排程略過並在報告註明,全部未勾也會印出說明,避免誤判為排程故障。
- 教室課表上線修訂功能:管理員可修改教室、星期節次、時間、課程、老師與班級,可新增與刪除且有二次確認,「我的課表」可下拉切換任一老師檢視。
- 寄信署名範本修訂完成,移除多餘字句並保留樣式,確認所有寄信程式都從同一份範本讀取。
🛠 關鍵步驟拆解
- 共用憑證排查:11 個子 profile 共用同一把過期金鑰,導致多個角色同時失效;備份後換入有效金鑰、重啟常駐 gateway,並以實際模型呼叫端對端驗證通過。
- 回顧產線建置:每日回顧改直讀各角色資料庫、交模型整理後寫入筆記並發通知,晚間排程自動執行,範圍擴及全部 12 個角色,週日另跑精華。
- 排課系統前期:以開源排程求解器專案為藍本,整合進既有系辦網站,需求規格書從 v0.1 更新到 v0.2,並抓取 11 學期、1,691 筆開課資料。
- 系辦系統維運:行事曆加上 LINE 通知勾選欄位、教室課表修訂功能上線,另完成影片下載轉上 YouTube 與語音合成替代方案。
💡 想法與複盤
- 多個子服務同時失效時,先查共用憑證,往往一把金鑰過期就整隊掛掉。
- 呼叫部分外部 API 需要完整的請求標頭,否則會被服務端直接拒絕。
- 來源管道不可靠時,與其找旁門,不如回頭確認正規管道。
🔮 下週預告
- 轉知未完成教師的寄信(期限 10/19)素材中未見結果,需確認是否已寄出並完成回報。
- 排課系統需求規格書 v0.2 已完成、尚未進入實作,可依規格開始開發。
- 環境安全衛生委員會會議(10/28)結束時間暫訂 2 小時,待確認後調整。
- 9/1–10/19 的歷史週精華仍在補做,濃縮稿可接續執行。
本期工具鏈:Hermes、DeepSeek V4.1 Flash、ffmpeg、Playwright
本篇由 Border 與 Hermes 協作完成,內容經人工審核。
文中已去識別化:不含客戶/學生個人資料、內部路徑與任何憑證。