做到 Day 28,我原本以為「公開作品」最重要的是拿到一個網址,但真正開始整理部署時,才發現網址只是最後一段。CareCall AI 的本機版本包含一個可選用的 AI 整理端點,而 GitHub Pages 是靜態網站,不能安全保存伺服器 API key。如果只是把現有畫面直接放上網,使用者可能看到 AI 按鈕,按下去卻只得到錯誤;這雖然算部署成功,卻不是可靠的展示。
因此今天先把公開靜態版與本機完整版的責任分開。公開版不需要 API key,也不會假裝能呼叫外部 AI,但仍然可以完成作品真正的核心:選擇虛構個案、輸入並確認文字回答、讓既有規則整理工作狀態、查看多日紀錄,以及完成人工接手。資料仍只保存在使用者自己的瀏覽器,重新開啟後可以延續,也能隨時重設。這代表 AI 暫時不可用時,主要流程不會一起消失。
本機完整版則保留選用的 AI 文字整理功能。只有使用者自行在本機伺服器設定 key 後,才會把完整逐字稿送到端點;AI 回傳結果仍要經過人工確認,也不能直接決定個案的工作狀態。畫面現在會明確標示目前是哪一種模式,首頁也能展開功能差異,不必靠閱讀 README 才知道限制。
部署流程同樣加入安全檢查。推送到 GitHub 後,Actions 會先跑 Day 1 到 Day 28 的完整測試,再執行正式建置,兩者成功才部署到 Pages。這次讓我理解,公開上線不是把開發中的所有能力原封不動搬出去,而是選出在公開環境中能誠實、穩定運作的部分。真正可信的 Demo,應該在沒有外部服務時仍能說清楚自己能做什麼,也知道什麼不能做。